Agent skill
tavily
Tavily API for AI search. Use when user mentions "Tavily", "AI search", "research", or asks for cited search results.
Install this agent skill to your Project
npx add-skill https://github.com/vm0-ai/vm0-skills/tree/main/tavily
SKILL.md
Tavily Search API
Use Tavily's search API via direct curl calls to perform live web search, ideal for powering retrieval-augmented generation (RAG) for LLMs and agents.
Official documentation:
https://docs.tavily.com/
When to Use
Use this skill when you need:
- Fresh, up-to-date information (news, trends, ongoing events)
- Search results with sources/links to ground LLM or agent answers
- Research / desk research inside automation workflows
- A reliable retrieval layer for RAG, combined with skills like Notion or Firecrawl
Prerequisites
- Sign up for Tavily and create an API key
- Store your Tavily API key in the environment variable
TAVILY_TOKEN
Set it in your local shell or runtime environment, for example:
export TAVILY_TOKEN="tvly-xxxxxxxxxxxxxxxx"
How to Use
All examples below assume you have TAVILY_TOKEN set in your environment.
The base endpoint for the Tavily search API is a POST request to:
https://api.tavily.com/search
with a JSON body.
1. Basic Search
Write to /tmp/tavily_request.json:
{
"query": "2025 AI Trending",
"search_depth": "basic",
"max_results": 5
}
Then run:
curl -s -X POST "https://api.tavily.com/search" --header "Content-Type: application/json" --header "Authorization: Bearer $(printenv TAVILY_TOKEN)" -d @/tmp/tavily_request.json
Key parameters:
query: Search query or natural language questionsearch_depth:"basic"– faster, good for most use cases"advanced"– deeper search and higher recall
max_results: Maximum number of results to return (e.g. 3 / 5 / 10)
2. Advanced Search
Write to /tmp/tavily_request.json:
{
"query": "serverless SaaS pricing best practices",
"search_depth": "advanced",
"max_results": 8,
"include_answer": true,
"include_domains": ["docs.aws.amazon.com", "cloud.google.com"],
"exclude_domains": ["reddit.com", "twitter.com"],
"include_raw_content": false
}
Then run:
curl -s -X POST "https://api.tavily.com/search" --header "Content-Type: application/json" --header "Authorization: Bearer $(printenv TAVILY_TOKEN)" -d @/tmp/tavily_request.json
Common advanced parameters:
include_answer: Whentrue, Tavily returns a summarizedanswerfieldinclude_domains: Whitelist of domains to includeexclude_domains: Blacklist of domains to excludeinclude_raw_content: Whether to include raw page content (HTML / raw text). Default isfalse.
3. Typical Response Structure (Example)
Tavily returns a JSON object similar to:
{
"answer": "Brief summary...",
"results": [
{
"title": "Article title",
"url": "https://example.com/article",
"content": "Snippet or extracted content...",
"score": 0.89
}
]
}
In agents or automation flows you typically:
- Use
answeras a concise, ready-to-use summary - Iterate over
resultsto extracttitle+urlas references / citations
4. Using Tavily in n8n (HTTP Request Node)
To integrate Tavily in n8n with the HTTP Request node:
- Method:
POST - URL:
https://api.tavily.com/search - Headers:
Content-Type:application/jsonAuthorization:Bearer {{ $env.TAVILY_TOKEN }}
- Body: JSON, for example:
{
"query": "n8n self-hosted best practices",
"search_depth": "basic",
"max_results": 5
}
This lets you pipe Tavily search results into downstream nodes such as LLMs, Notion, Slack notifications, etc.
Guidelines
- Use
advancedonly when necessary: it consumes more resources and is best for deep research / high-value questions. - Mind quotas and cost: Tavily typically offers free tiers plus paid usage; in automation flows, add guards (filters, rate limits).
- Post-process results with an LLM: use Tavily for retrieval, then let your LLM summarize, extract tables, or generate reports.
- Handle sensitive data carefully: avoid sending raw secrets or PII directly in
query; anonymize or mask when possible.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
brave-search
Brave Search API for web search. Use when user says "search web", "Brave search", or asks to "find on web" without specifying Google.
supadata
Supadata API for YouTube/web data. Use when user mentions "Supadata", "YouTube data", "channel stats", or web scraping data.
roadmap-planning
Build and prioritize product roadmaps using scoring models like RICE, ICE, and value-effort matrices. Activate when creating a product roadmap, prioritizing features, sequencing initiatives, mapping dependencies, balancing team capacity, choosing between Now/Next/Later or quarterly planning, or communicating roadmap tradeoffs to executives and stakeholders.
qdrant
Qdrant API for vector search. Use when user mentions "Qdrant", "vector database", "semantic search", or embeddings storage.
calendly
Calendly scheduling API. Use when user mentions "Calendly", "calendly.com", "schedule a meeting", "booking link", "event types", or asks about interview scheduling.
stripe
Stripe API for payments. Use when user mentions "Stripe", "payment", "subscription", "billing", "invoice", or asks about payment processing.
Didn't find tool you were looking for?