- Fully generated C# SDK based on the official Tavily OpenAPI specification using AutoSDK
- Same day update to support new features
- Updated and supported automatically if there are no breaking changes
- All modern .NET features - nullability, trimming, NativeAOT, etc.
- Support .Net Framework/.Net Standard 2.0
- Microsoft.Extensions.AI
AIFunctiontool wrappers for search and extract
using Tavily;
var apiKey =
Environment.GetEnvironmentVariable("TAVILY_API_KEY") ??
throw new InvalidOperationException("TAVILY_API_KEY environment variable is not found.");
using var client = new TavilyClient(apiKey);
Response searchResponse = await client.CreateSearchAsync(
query: "Who is Leo Messi?");
foreach (var result in searchResponse.Results)
{
Console.WriteLine($"Title: {result.Title}");
Console.WriteLine($"Content: {result.Content}");
Console.WriteLine($"Score: {result.Score}");
Console.WriteLine($"Url: {result.Url}");
Console.WriteLine();
}The SDK provides AIFunction wrappers for use with any IChatClient:
using Tavily;
using Microsoft.Extensions.AI;
using var tavilyClient = new TavilyClient(tavilyApiKey);
// Create AI tools for search and extract
AIFunction searchTool = tavilyClient.AsSearchTool();
AIFunction extractTool = tavilyClient.AsExtractTool();
// Use with any IChatClient (OpenAI, Anthropic, Ollama, etc.)
var response = await chatClient.GetResponseAsync(
[new ChatMessage(ChatRole.User, "Search for the latest .NET 10 features")],
new ChatOptions { Tools = [searchTool] });Priority place for bugs: https://github.com/tryAGI/Tavily/issues
Priority place for ideas and general questions: https://github.com/tryAGI/Tavily/discussions
Discord: https://discord.gg/Ca2xhfBf3v
This project is supported by JetBrains through the Open Source Support Program.
This project is supported by CodeRabbit through the Open Source Support Program.
