Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

tavily-map — Claude Code skill: discover site URLs

A skill that has the agent walk a site and hand back the list of addresses, leaving page text alone. Useful when you know the domain but not the page.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add tavily-ai/skills --skill tavily-map -a claude-code
Open on GitHub

What tavily-map does

The skill is one command: tvly map. It walks a site and returns URLs without pulling page content, so on a large domain it costs less than a full pass. You want the address, not the text.

Filtering is where most of the work happens. --max-depth sets how many levels deep to go (1 to 5, default 1), --limit caps how many URLs come back (default 50), and --max-breadth controls links taken per page (default 20). For selection by meaning there is --instructions; for paths there are regex options --select-paths and --exclude-paths. Domain filters and --json cover the rest, and -o writes the response to a file.

It needs the tvly CLI installed and authenticated. In an unattended agent or CI run, leave login to the user or supply TAVILY_API_KEY, because tvly login opens a browser and waits on a localhost callback. The pattern worth remembering: map to find the page, then tvly extract for the content. Reach for tvly crawl only when you need many pages at once.

What it helps with

  • find the authentication page on a large docs site
  • list every URL under the blog before extracting a few
  • inspect a domain's structure without downloading pages
  • drop external links and utility paths with regex filters
  • save a site map to JSON and parse it later

Example prompts for the agent

  • Find the authentication docs: run `tvly map` with `--instructions "authentication"` and show me the URLs it returns.
  • Map the site with `--max-depth 3` and `--limit 200`, but keep only the blog section via `--select-paths "/blog/.*"`.
  • Run `tvly map` on the domain and save the response with `-o` so I can read the structure without a second request.

How to install tavily-map

1Skills CLI (Vercel)

npx skills add tavily-ai/skills --skill tavily-map -a claude-code

2Manually: put the files in place

~/.claude/skills/tavily-map/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/tavily-map/

From the same set6

The whole set →

Similar

arbor K-Dense-AI Runs an autonomous optimization loop using hypothesis trees for models, code, and harnesses. Useful when organizing dozens of experimental trials without losing past findings. Claude Code CX Codex Cursor +1 1,200installs pi-agent K-Dense-AI Helps you install and configure Pi, then build extensions, integrations, and terminal UI components around it. Claude Code CX Codex Cursor +1 1,200installs mantis-threat-model official google Turns the Mantis knowledge base into a project threat model: trust boundaries, entry points, attacker profiles. Useful once the architecture is written down but the threat model is not. Claude Code CX Codex Cursor +1 1,800installs ink vercel-labs Builds interactive terminal user interfaces from JSON specs using @json-render/ink. Useful when creating dynamic TUI components or agent-generated layouts. Claude Code CX Codex Cursor +1 1,300installs review-docs tldraw Evaluates and iterates on tldraw SDK documentation against style guides and actual code. Useful for auditing articles and catching inaccurate API references. Claude Code CX Codex Cursor +1 390installs self-improve Yeachan-Heo Runs an autonomous code-improvement loop that researches a repository, reviews plans, and compares benchmark results. Use it when progress is measured by a defined metric. Claude Code CX Codex Cursor +1 730installs setup-matt-pocock-skills Matt Pocock This skill configures a repository for Matt Pocock's engineering skills by setting its issue tracker, triage labels, and domain docs layout. Run it before using the other skills. Claude Code 1,052,851installs to-tickets Matt Pocock Turns a plan, spec, or conversation into small end-to-end tickets with explicit blockers. Use it to agree on the work breakdown before tickets go to a tracker. Claude Code 711,230installs

Questions about tavily-map

How do I install tavily-map in Claude Code?

Run npx skills add tavily-ai/skills --skill tavily-map -a claude-code. The skill file lands at ~/.claude/skills/tavily-map/SKILL.md.

What does tavily-map do?

It walks a website and returns a list of URLs with no content extraction. The agent gets addresses, not page text.

Does it pull page content?

No, map only discovers URLs. Point tvly extract at the address you picked, and use tvly crawl when you need many pages at once.

Source text

SKILL.md · MIT
---
name: tavily-map
description: |
  Discover and list all URLs on a website without extracting content, via the Tavily CLI. Use this skill when the user wants to find a specific page on a large site, list all URLs, see the site structure, find where something is on a domain, or says "map the site", "find the URL for", "what pages are on", "list all pages", or "site structure". Faster than crawling — returns URLs only. Essential when you know the site but not the exact page. Combine with extract for targeted content retrieval.
allowed-tools: Bash(tvly *)
---

# tavily map

Discover URLs on a website without extracting content. Faster than crawling.

## Before running

Map requires authentication. Run the requested command directly when `tvly`
is already authenticated; do not add a status check to every invocation.

If `tvly` is missing, follow the [tavily-cli setup](../tavily-cli/SKILL.md#setup).
If an installed CLI reports an authentication error, use `tvly login` for
authentication only, or `tvly init --skip-skills` when guided verification is
also useful. Browser-based OAuth is preferred when an interactive user can
complete it. `--no-browser` prints the sign-in link instead of opening it, but
still waits for a localhost callback. In an unattended agent or CI environment,
leave authentication to the user or use a securely provided `TAVILY_API_KEY`.
Do not start a second login immediately after guided setup has completed.

## When to use

- You need to find a specific subpage on a large site
- You want a list of all URLs before deciding what to extract or crawl
- Step 3 in the [workflow](../tavily-cli/SKILL.md): search → extract → **map** → crawl → research

## Quick start

```bash
# Discover all URLs
tvly map "https://docs.example.com" --json

# With natural language filtering
tvly map "https://docs.example.com" --instructions "Find API docs and guides" --json

# Filter by path
tvly map "https://example.com" --select-paths "/blog/.*" --limit 500 --json

# Deep map
tvly map "https://example.com" --max-depth 3 --limit 200 --json
```

## Options

| Option | Description |
|--------|-------------|
| `--max-depth` | Levels deep (1-5, default: 1) |
| `--max-breadth` | Links per page (default: 20) |
| `--limit` | Max URLs to discover (default: 50) |
| `--instructions` | Natural language guidance for URL filtering |
| `--select-paths` | Comma-separated regex patterns to include |
| `--exclude-paths` | Comma-separated regex patterns to exclude |
| `--select-domains` | Comma-separated regex for domains to include |
| `--exclude-domains` | Comma-separated regex for domains to exclude |
| `--allow-external / --no-external` | Include external links |
| `--timeout` | Max wait (10-150 seconds) |
| `-o, --output` | Save the JSON response to a file |
| `--json` | Structured JSON output |

## Map + Extract pattern

Use `map` to find the right page, then `extract` it. This is often more efficient than crawling an entire site:

```bash
# Step 1: Find the authentication docs
tvly map "https://docs.example.com" --instructions "authentication" --json

# Step 2: Extract the specific page you found
tvly extract "https://docs.example.com/api/authentication" --json
```

## Tips

- **Map is URL discovery only** — no content extraction. Use `extract` or `crawl` for content.
- **Map + extract beats crawl** when you only need a few specific pages from a large site.
- **Use `--instructions`** for semantic filtering when path patterns aren't enough.

## See also

- [tavily-extract](../tavily-extract/SKILL.md) — extract content from URLs you discover
- [tavily-crawl](../tavily-crawl/SKILL.md) — bulk extract when you need many pages

© tavily-ai · MIT · tavily-ai/skills

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor