Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
benedictking avatar

Tavily Web

  • 11 installs
  • 14 repo stars
  • Updated August 1, 2026
  • benedictking/benedictking-skills

Tavily Web is a Claude Code skill that performs current web research via the Tavily API, choosing among search, extract, crawl, map, and structured-research endpoints.

About

Tavily Web performs current web research through the Tavily API, choosing among search, extract, crawl, map, and structured research endpoints based on intent. A developer uses it to find sources, extract or summarize URL content, map a site's pages, or produce schema-structured research output. It assembles the JSON payload in the main context and executes HTTP calls in a forked sub-skill.

  • Runs Tavily web search, extract, crawl, map, and structured research
  • Selects the right Tavily endpoint based on user intent
  • Runs HTTP calls in a forked sub-skill context to save tokens

Tavily Web by the numbers

  • 11 all-time installs (skills.sh)
  • Ranked #1,469 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
  • Data as of Aug 2, 2026 (Skillselion catalog sync)
At a glance

tavily-web capabilities & compatibility

Requires a TAVILY_API_KEY set via env var or .env.

Capabilities
web search · research
Use cases
research · web search · web scraping
Pricing
Bring your own API key
From the docs

What tavily-web says it does

Use this skill when users need current web research, source discovery, URL content extraction, site mapping, crawling, or structured Tavily-powered research.
SKILL.md
Two ways to configure API Key (priority: environment variable > `.env`):
SKILL.md
npx skills add https://github.com/benedictking/benedictking-skills --skill tavily-web

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs11
repo stars14
Last updatedAugust 1, 2026
Repositorybenedictking/benedictking-skills

What it does

Run current web research via Tavily, choosing search, extract, crawl, map, or structured research by intent.

Who is it for?

Finding sources, extracting URL content, mapping sites, or producing structured web research

Skip if: Offline work or environments without Tavily network access

When should I use this skill?

The user needs current web research, source discovery, URL extraction, site mapping, crawling, or structured research

What you get

Current sources, extracted content, site maps, or schema-structured research results from Tavily

  • Search results
  • Extracted content
  • Site maps

By the numbers

  • 5 Tavily endpoints (search, extract, crawl, map, research)
  • 2-phase architecture (main skill, fetcher sub-skill)

Files

SKILL.mdMarkdownGitHub ↗

Tavily Web Skill

Trigger Conditions & Endpoint Selection

Choose Tavily endpoint based on user intent:

  • search: Need to "search web / latest info / find sources / find links"
  • extract: Given URL(s), need to extract/summarize content
  • crawl: Need to traverse site following instructions and scrape page content
  • map: Need to discover site page list/structure (without full content or metadata only)
  • research: Need structured research output following given output_schema

Recommended Architecture (Main Skill + Sub-skill)

This skill uses a two-phase architecture:

1. Main skill (current context): Understand user question → Choose endpoint → Assemble JSON payload 2. Sub-skill (fork context): Only responsible for HTTP call execution, avoiding conversation history token waste

Execution Method

Use Task tool to invoke tavily-fetcher sub-skill, passing command and JSON (stdin):

Task parameters:
- subagent_type: Bash
- description: "Call Tavily API"
- prompt: cat <<'JSON' | node scripts/tavily-api.cjs <search|extract|crawl|map|research>
  { ...payload... }
  JSON

Payload Examples (Based on Provided curl)

1) Search the web

cat <<'JSON' | node scripts/tavily-api.cjs search
{
  "query": "who is Leo Messi?",
  "auto_parameters": false,
  "topic": "general",
  "search_depth": "basic",
  "chunks_per_source": 3,
  "max_results": 1,
  "time_range": null,
  "start_date": "2025-02-09",
  "end_date": "2025-12-29",
  "include_answer": false,
  "include_raw_content": false,
  "include_images": false,
  "include_image_descriptions": false,
  "include_favicon": false,
  "include_domains": [],
  "exclude_domains": [],
  "country": null,
  "include_usage": false
}
JSON

2) Extract webpages

cat <<'JSON' | node scripts/tavily-api.cjs extract
{
  "urls": "https://en.wikipedia.org/wiki/Artificial_intelligence",
  "query": "<string>",
  "chunks_per_source": 3,
  "extract_depth": "basic",
  "include_images": false,
  "include_favicon": false,
  "format": "markdown",
  "timeout": "None",
  "include_usage": false
}
JSON

3) Crawl webpages

cat <<'JSON' | node scripts/tavily-api.cjs crawl
{
  "url": "docs.tavily.com",
  "instructions": "Find all pages about the Python SDK",
  "chunks_per_source": 3,
  "max_depth": 1,
  "max_breadth": 20,
  "limit": 50,
  "select_paths": null,
  "select_domains": null,
  "exclude_paths": null,
  "exclude_domains": null,
  "allow_external": true,
  "include_images": false,
  "extract_depth": "basic",
  "format": "markdown",
  "include_favicon": false,
  "timeout": 150,
  "include_usage": false
}
JSON

4) Map webpages

cat <<'JSON' | node scripts/tavily-api.cjs map
{
  "url": "docs.tavily.com",
  "instructions": "Find all pages about the Python SDK",
  "max_depth": 1,
  "max_breadth": 20,
  "limit": 50,
  "select_paths": null,
  "select_domains": null,
  "exclude_paths": null,
  "exclude_domains": null,
  "allow_external": true,
  "timeout": 150,
  "include_usage": false
}
JSON

5) Create Research Task

cat <<'JSON' | node scripts/tavily-api.cjs research
{
  "input": "What are the latest developments in AI?",
  "model": "auto",
  "stream": false,
  "output_schema": {
    "properties": {
      "company": {
        "type": "string",
        "description": "The name of the company"
      },
      "key_metrics": {
        "type": "array",
        "description": "List of key performance metrics",
        "items": {
          "type": "string"
        }
      },
      "financial_details": {
        "type": "object",
        "description": "Detailed financial breakdown",
        "properties": {
          "operating_income": {
            "type": "number",
            "description": "Operating income for the period"
          }
        }
      }
    },
    "required": [
      "company"
    ]
  },
  "citation_format": "numbered"
}
JSON

Environment Variables & API Key

Two ways to configure API Key (priority: environment variable > .env):

1. Environment variable: TAVILY_API_KEY 2. .env file: Place in .env, can copy from .env.example

Related skills

FAQ

Which endpoint should I use?

Search for finding sources, extract for URL content, crawl to traverse a site, map to list pages, and research for structured output.

How is the API key set?

Via a TAVILY_API_KEY env var or a .env file, with the env var taking priority.

Automation & Workflowsresearchautomation

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.