agentsclimarketplace

Tavily web

Skill Lu1sDV/skillsmd/tavily-web

Personal skills collection for Claude

Install
npx -y skills add Lu1sDV/skillsmd --skill tavily-web

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Web search, content extraction, site crawling, URL discovery, and AI-powered research using Tavily API via curl. Use when user needs web search results, current events, news, finance data, content from URLs, site-wide extraction, or multi-topic research with citations. Trigger phrases: 'search the web', 'find online', 'extract from URL', 'crawl site', 'research topic', 'latest news about', 'web search', 'tavily'.

SKILL.md

7.2 KB, as published. Nobody here has run it

Tavily Web Search & Research

CLI-based web search, extraction, crawling, and research via curl. No SDK installation required.

Prerequisites

  • TAVILY_API_KEY set in environment
  • Never hardcode or paste API keys into chat

Choosing the Right Method

NeedMethodCostLatency
Web search resultssearch1-2 creditsFast
Content from specific URLsextract1+ creditsFast
Content from entire sitecrawlVariableSlow
URL discovery from a sitemap1 creditFast
End-to-end research with AI synthesisresearchHigherMinutes

Quick Reference

search — Web Search

curl -s "https://api.tavily.com/search" \
  -H "Authorization: Bearer $TAVILY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "your search query here",
    "max_results": 5,
    "search_depth": "basic",
    "topic": "general"
  }'

Key parameters:

ParameterValuesNotes
querystring (max 400 chars)Keep focused; split complex questions into sub-queries
max_results1-20 (default 5)Start small, increase if needed
search_depthbasic (1 credit) / advanced (2 credits)Use basic unless you need precision
topicgeneral / news / financeDetermines ranking algorithm
time_rangeday / week / month / yearFilter by recency
include_answertrue / "basic" / "advanced"AI-generated answer from results
include_domains["domain.com"]Restrict to specific sites
exclude_domains["domain.com"]Exclude specific sites

See references/search.md for full parameter reference and optimization tips.

extract — URL Content Extraction

curl -s "https://api.tavily.com/extract" \
  -H "Authorization: Bearer $TAVILY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "urls": ["https://example.com/page"],
    "extract_depth": "basic",
    "query": "focus on pricing info",
    "chunks_per_source": 3,
    "format": "markdown"
  }'

Key parameters:

ParameterValuesNotes
urlsarray (max 20)Target URLs to extract from
extract_depthbasic / advancedAdvanced handles JS-rendered pages
querystringFocus extraction on specific content
chunks_per_source1-5Control output volume
formatmarkdown / textOutput format

See references/extract.md for full reference.

crawl — Site-Wide Extraction

curl -s "https://api.tavily.com/crawl" \
  -H "Authorization: Bearer $TAVILY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://docs.example.com",
    "max_depth": 2,
    "max_breadth": 10,
    "limit": 20,
    "instructions": "Find API documentation pages",
    "extract_depth": "basic"
  }'

Key parameters:

ParameterValuesNotes
urlstringStarting URL
max_depthintegerHow many link levels deep
max_breadthintegerMax links per page
limitintegerTotal pages to extract
instructionsstringSemantic focus for crawler
select_paths["/docs/*"]Include only matching paths
exclude_paths["/blog/*"]Skip matching paths

See references/crawl.md for full reference.

map — URL Discovery

curl -s "https://api.tavily.com/map" \
  -H "Authorization: Bearer $TAVILY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://docs.example.com"
  }'

Returns a list of URLs found on the site. Useful as a precursor to targeted extract calls (Map-then-Extract pattern).

research — AI-Powered Research

# Start research task
curl -s "https://api.tavily.com/research" \
  -H "Authorization: Bearer $TAVILY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": "Analyze the competitive landscape for X in the SMB market",
    "model": "auto",
    "citation_format": "numbered"
  }'
# Returns: { "request_id": "..." }

# Poll for completion
curl -s "https://api.tavily.com/research/REQUEST_ID" \
  -H "Authorization: Bearer $TAVILY_API_KEY"
# Poll every 10s until status is "completed" or "failed"

Model selection: mini (focused queries, faster), pro (comprehensive, multi-topic), auto (let Tavily decide).

See references/research.md for prompting best practices and structured output schemas.

Procedure

  1. Formulate query — Keep under 400 chars. Split multi-part questions into 2-4 focused sub-queries.
  2. Pick topicgeneral for most searches, news for current events (pair with time_range), finance for market data.
  3. Pick depth — Start with basic (1 credit). Use advanced (2 credits) only when precision matters.
  4. Keep results small — Default max_results to 5. Filter by score and domain trust.
  5. Two-step for full text — Run search first, then extract on 1-3 top URLs. This is cheaper and safer than include_raw_content.
  6. Cite sources — Always include results[].url as citations in your final answer.
  7. For deep research — Use research endpoint with polling. Include citation_format for automatic source attribution.

Pitfalls

PitfallMitigation
include_raw_content on search explodes outputUse two-step: search then extract
search_depth defaults may auto-upgrade to advancedSet search_depth explicitly to control cost
exact_match is very restrictiveWrap phrase in quotes inside query instead
country boosting only works with topic: "general"Don't set country for news/finance topics
Crawl can be expensive on large sitesSet limit, max_depth, max_breadth conservatively
Research polling — don't poll too fastPoll every 10 seconds, set a max wait timeout

Verification

Check remaining credits:

curl -s "https://api.tavily.com/usage" \
  -H "Authorization: Bearer $TAVILY_API_KEY"

Troubleshooting

ErrorCauseFix
401 UnauthorizedInvalid or missing API keyVerify TAVILY_API_KEY is set and valid
429 Too Many RequestsRate limit exceededWait and retry; check usage quota
Empty resultsQuery too narrow or restrictiveBroaden query, remove domain filters
Slow response on searchadvanced depth or too many resultsReduce max_results, use basic depth

Keep request_id from responses for debugging.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.