{"id":"tavily","kind":"sdk","name":"Tavily","slug":"tavily","description":"Search and research API built for agents: web search, extract, crawl, and map.","vendor":"Tavily","languages":["python","typescript","javascript"],"categories":["ai"],"homepage":"https://tavily.com","docsUrl":"https://docs.tavily.com","githubUrl":"https://github.com/tavily-ai/skills","packages":[{"registry":"npm","name":"@tavily/core","url":"https://www.npmjs.com/package/@tavily/core"},{"registry":"pypi","name":"tavily-python","url":"https://pypi.org/project/tavily-python/"}],"tags":["search","research","rag"],"skills":[{"name":"tavily-search","url":"https://github.com/tavily-ai/skills/tree/main/skills/tavily-search","install":"npx skills add tavily-ai/skills --skill tavily-search","sdk":"tavily","key":"tavily/tavily-search","description":"|","hasContent":true,"content":"---\nname: tavily-search\ndescription: |\n  Search the web with LLM-optimized results via the Tavily CLI. Use this skill when the user wants to search the web, find articles, look up information, get recent news, discover sources, or says \"search for\", \"find me\", \"look up\", \"what's the latest on\", \"find articles about\", or needs current information from the internet. Returns relevant results with content snippets, relevance scores, and metadata — optimized for LLM consumption. Supports domain filtering, time ranges, and multiple search depths.\nallowed-tools: Bash(tvly *)\n---\n\n# tavily search\n\nWeb search returning LLM-optimized results with content snippets and relevance scores.\n\n## Before running any command\n\nIf `tvly` is not found on PATH, install it first:\n\n```bash\ncurl -fsSL https://cli.tavily.com/install.sh | bash && tvly login\n```\n\nDo not skip this step or fall back to other tools.\n\nSee [tavily-cli](../tavily-cli/SKILL.md) for alternative install methods and auth options.\n\n## When to use\n\n- You need to find information on any topic\n- You don't have a specific URL yet\n- First step in the [workflow](../tavily-cli/SKILL.md): **search** → extract → map → crawl → research\n\n## Quick start\n\n```bash\n# Basic search\ntvly search \"your query\" --json\n\n# Advanced search with more results\ntvly search \"quantum computing\" --depth advanced --max-results 10 --json\n\n# Recent news\ntvly search \"AI news\" --time-range week --topic news --json\n\n# Domain-filtered\ntvly search \"SEC filings\" --include-domains sec.gov,reuters.com --json\n\n# Include full page content in results\ntvly search \"react hooks tutorial\" --include-raw-content --max-results 3 --json\n```\n\n## Options\n\n| Option | Description |\n|--------|-------------|\n| `--depth` | `ultra-fast`, `fast`, `basic` (default), `advanced` |\n| `--max-results` | Max results, 0-20 (default: 5) |\n| `--topic` | `general` (default), `news`, `finance` |\n| `--time-range` | `day`, `week`, `month`, `year` |\n| `--start-date` | Results after date (YYYY-MM-DD) |\n| `--end-date` | Results before date (YYYY-MM-DD) |\n| `--include-domains` | Comma-separated domains to include |\n| `--exclude-domains` | Comma-separated domains to exclude |\n| `--country` | Boost results from country |\n| `--include-answer` | Include AI answer (`basic` or `advanced`) |\n| `--include-raw-content` | Include full page content (`markdown` or `text`) |\n| `--include-images` | Include image results |\n| `--include-image-descriptions` | Include AI image descriptions |\n| `--chunks-per-source` | Chunks per source (advanced/fast depth only) |\n| `-o, --output` | Save output to file |\n| `--json` | Structured JSON output |\n\n## Search depth\n\n| Depth | Speed | Relevance | Best for |\n|-------|-------|-----------|----------|\n| `ultra-fast` | Fastest | Lower | Real-time chat, autocomplete |\n| `fast` | Fast | Good | Need chunks, latency matters |\n| `basic` | Medium | High | General-purpose (default) |\n| `advanced` | Slower | Highest | Precision, specific facts |\n\n## Tips\n\n- **Keep queries under 400 characters** — think search query, not prompt.\n- **Break complex queries into sub-queries** for better results.\n- **Use `--include-raw-content`** when you need full page text (saves a separate extract call).\n- **Use `--include-domains`** to focus on trusted sources.\n- **Use `--time-range`** for recent information.\n- Read from stdin: `echo \"query\" | tvly search - --json`\n\n## See also\n\n- [tavily-extract](../tavily-extract/SKILL.md) — extract content from specific URLs\n- [tavily-research](../tavily-research/SKILL.md) — comprehensive multi-source research\n","contentSource":"https://raw.githubusercontent.com/tavily-ai/skills/main/skills/tavily-search/SKILL.md","contentFetchedAt":"2026-07-28T23:15:41.088Z"},{"name":"tavily-research","url":"https://github.com/tavily-ai/skills/tree/main/skills/tavily-research","install":"npx skills add tavily-ai/skills --skill tavily-research","sdk":"tavily","key":"tavily/tavily-research","description":"|","hasContent":true,"content":"---\nname: tavily-research\ndescription: |\n  Conduct comprehensive AI-powered research with citations via the Tavily CLI. Use this skill when the user wants deep research, a detailed report, a comparison, market analysis, literature review, or says \"research\", \"investigate\", \"analyze in depth\", \"compare X vs Y\", \"what does the market look like for\", or needs multi-source synthesis with explicit citations. Returns a structured report grounded in web sources. Takes 30-120 seconds. For quick fact-finding, use tavily-search instead.\nallowed-tools: Bash(tvly *)\n---\n\n# tavily research\n\nAI-powered deep research that gathers sources, analyzes them, and produces a cited report. Takes 30-120 seconds.\n\n## Before running any command\n\nIf `tvly` is not found on PATH, install it first:\n\n```bash\ncurl -fsSL https://cli.tavily.com/install.sh | bash && tvly login\n```\n\nDo not skip this step or fall back to other tools.\n\nSee [tavily-cli](../tavily-cli/SKILL.md) for alternative install methods and auth options.\n\n## When to use\n\n- You need comprehensive, multi-source analysis\n- The user wants a comparison, market report, or literature review\n- Quick searches aren't enough — you need synthesis with citations\n- Step 5 in the [workflow](../tavily-cli/SKILL.md): search → extract → map → crawl → **research**\n\n## Quick start\n\n```bash\n# Basic research (waits for completion)\ntvly research \"competitive landscape of AI code assistants\"\n\n# Pro model for comprehensive analysis\ntvly research \"electric vehicle market analysis\" --model pro\n\n# Stream results in real-time\ntvly research \"AI agent frameworks comparison\" --stream\n\n# Save report to file\ntvly research \"fintech trends 2025\" --model pro -o fintech-report.md\n\n# JSON output for agents\ntvly research \"quantum computing breakthroughs\" --json\n```\n\n## Options\n\n| Option | Description |\n|--------|-------------|\n| `--model` | `mini`, `pro`, or `auto` (default) |\n| `--stream` | Stream results in real-time |\n| `--no-wait` | Return request_id immediately (async) |\n| `--output-schema` | Path to JSON schema for structured output |\n| `--citation-format` | `numbered`, `mla`, `apa`, `chicago` |\n| `--poll-interval` | Seconds between checks (default: 10) |\n| `--timeout` | Max wait seconds (default: 600) |\n| `-o, --output` | Save output to file |\n| `--json` | Structured JSON output |\n\n## Model selection\n\n| Model | Use for | Speed |\n|-------|---------|-------|\n| `mini` | Single-topic, targeted research | ~30s |\n| `pro` | Comprehensive multi-angle analysis | ~60-120s |\n| `auto` | API chooses based on complexity | Varies |\n\n**Rule of thumb:** \"What does X do?\" → mini. \"X vs Y vs Z\" or \"best way to...\" → pro.\n\n## Async workflow\n\nFor long-running research, you can start and poll separately:\n\n```bash\n# Start without waiting\ntvly research \"topic\" --no-wait --json    # returns request_id\n\n# Check status\ntvly research status <request_id> --json\n\n# Wait for completion\ntvly research poll <request_id> --json -o result.json\n```\n\n## Tips\n\n- **Research takes 30-120 seconds** — use `--stream` to see progress in real-time.\n- **Use `--model pro`** for complex comparisons or multi-faceted topics.\n- **Use `--output-schema`** to get structured JSON output matching a custom schema.\n- **For quick facts**, use `tvly search` instead — research is for deep synthesis.\n- Read from stdin: `echo \"query\" | tvly research - --json`\n\n## See also\n\n- [tavily-search](../tavily-search/SKILL.md) — quick web search for simple lookups\n- [tavily-crawl](../tavily-crawl/SKILL.md) — bulk extract from a site for your own analysis\n","contentSource":"https://raw.githubusercontent.com/tavily-ai/skills/main/skills/tavily-research/SKILL.md","contentFetchedAt":"2026-07-28T23:15:41.160Z"},{"name":"tavily-extract","url":"https://github.com/tavily-ai/skills/tree/main/skills/tavily-extract","install":"npx skills add tavily-ai/skills --skill tavily-extract","sdk":"tavily","key":"tavily/tavily-extract","description":"|","hasContent":true,"content":"---\nname: tavily-extract\ndescription: |\n  Extract clean markdown or text content from specific URLs via the Tavily CLI. Use this skill when the user has one or more URLs and wants their content, says \"extract\", \"grab the content from\", \"pull the text from\", \"get the page at\", \"read this webpage\", or needs clean text from web pages. Handles JavaScript-rendered pages, returns LLM-optimized markdown, and supports query-focused chunking for targeted extraction. Can process up to 20 URLs in a single call.\nallowed-tools: Bash(tvly *)\n---\n\n# tavily extract\n\nExtract clean markdown or text content from one or more URLs.\n\n## Before running any command\n\nIf `tvly` is not found on PATH, install it first:\n\n```bash\ncurl -fsSL https://cli.tavily.com/install.sh | bash && tvly login\n```\n\nDo not skip this step or fall back to other tools.\n\nSee [tavily-cli](../tavily-cli/SKILL.md) for alternative install methods and auth options.\n\n## When to use\n\n- You have a specific URL and want its content\n- You need text from JavaScript-rendered pages\n- Step 2 in the [workflow](../tavily-cli/SKILL.md): search → **extract** → map → crawl → research\n\n## Quick start\n\n```bash\n# Single URL\ntvly extract \"https://example.com/article\" --json\n\n# Multiple URLs\ntvly extract \"https://example.com/page1\" \"https://example.com/page2\" --json\n\n# Query-focused extraction (returns relevant chunks only)\ntvly extract \"https://example.com/docs\" --query \"authentication API\" --chunks-per-source 3 --json\n\n# JS-heavy pages\ntvly extract \"https://app.example.com\" --extract-depth advanced --json\n\n# Save to file\ntvly extract \"https://example.com/article\" -o article.md\n```\n\n## Options\n\n| Option | Description |\n|--------|-------------|\n| `--query` | Rerank chunks by relevance to this query |\n| `--chunks-per-source` | Chunks per URL (1-5, requires `--query`) |\n| `--extract-depth` | `basic` (default) or `advanced` (for JS pages) |\n| `--format` | `markdown` (default) or `text` |\n| `--include-images` | Include image URLs |\n| `--timeout` | Max wait time (1-60 seconds) |\n| `-o, --output` | Save output to file |\n| `--json` | Structured JSON output |\n\n## Extract depth\n\n| Depth | When to use |\n|-------|-------------|\n| `basic` | Simple pages, fast — try this first |\n| `advanced` | JS-rendered SPAs, dynamic content, tables |\n\n## Tips\n\n- **Max 20 URLs per request** — batch larger lists into multiple calls.\n- **Use `--query` + `--chunks-per-source`** to get only relevant content instead of full pages.\n- **Try `basic` first**, fall back to `advanced` if content is missing.\n- **Set `--timeout`** for slow pages (up to 60s).\n- If search results already contain the content you need (via `--include-raw-content`), skip the extract step.\n\n## See also\n\n- [tavily-search](../tavily-search/SKILL.md) — find pages when you don't have a URL\n- [tavily-crawl](../tavily-crawl/SKILL.md) — extract content from many pages on a site\n","contentSource":"https://raw.githubusercontent.com/tavily-ai/skills/main/skills/tavily-extract/SKILL.md","contentFetchedAt":"2026-07-28T23:15:41.231Z"}],"official":true,"generatedAt":"2026-07-28T23:15:45.680Z"}