skillZs
LIVE SKILL TAGS
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
REAL INSTALL DATA
← back to all skills
lu1sdv/skillsmd4 installs

tavily-web

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'.

How do I install this agent skill?

npx skills add https://github.com/lu1sdv/skillsmd --skill tavily-web
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The skill provides a safe and well-documented interface for the Tavily API using curl. It adheres to security best practices for API key management by using environment variables and providing explicit safety warnings. The network activity is restricted to the legitimate API endpoint of a well-known service.

  • Socketpass

    No alerts

  • Snykwarn

    Risk: MEDIUM · 2 issues

What does this agent skill do?

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.

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/lu1sdv/skillsmd/tavily-web">View tavily-web on skillZs</a>