Hyperbrowser MCP Server
OFFICIAL SERVERScrape, crawl, search and run browser agents through Hyperbrowser's cloud browsers
Tavily's web search, page extraction, site crawling and research API, offered as MCP tools
Official · Tavily AI TypeScript Remote (hosted) · Streamable HTTPLocal · stdio Web searchBrowser automation
92 popularity score ★ 2.5k ↓ 22k/wk
Opens the app, which asks before it adds the server.
claude mcp add --transport http tavily https://mcp.tavily.com/mcp{
"mcpServers": {
"tavily-remote-mcp": {
"command": "npx mcp-remote https://mcp.tavily.com/mcp",
"env": {}
}
}
}https://mcp.tavily.com/mcphttps://mcp.tavily.com/mcp[mcp_servers.tavily]
url = "https://mcp.tavily.com/mcp"{
"servers": {
"tavily": {
"type": "http",
"url": "https://mcp.tavily.com/mcp"
}
}
}Opens the app, which asks before it adds the server.
claude mcp add tavily -- npx -y tavily-mcp@latest{
"mcpServers": {
"tavily": {
"command": "npx",
"args": [
"-y",
"tavily-mcp@latest"
]
}
}
}{
"mcpServers": {
"tavily": {
"command": "npx",
"args": [
"-y",
"tavily-mcp@latest"
]
}
}
}{
"servers": {
"tavily": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"tavily-mcp@latest"
]
}
}
}[mcp_servers.tavily]
command = "npx"
args = ["-y", "tavily-mcp@latest"]gemini mcp add --scope user tavily npx -- -y tavily-mcp@latestTAVILY_API_KEY secret |
Optional: Your Tavily API key. Without it the server runs keyless and only search and extract work. |
|---|---|
DEFAULT_PARAMETERS |
Optional: JSON object of tavily_search settings, such as {"include_images": true}. These replace the values the assistant sends. |
TAVILY_HUMAN_ID |
Optional: An ID for the end user, sent to Tavily as the X-Human-Id header on each call. Use an opaque ID, not an email. |
This is Tavily's own MCP server for its search API. An assistant gets five tools: a web search that returns snippets with source URLs, extraction of given URLs as markdown or text, a crawl that follows links from a starting URL within depth, breadth and page limits, a map that lists the URLs a site links to, and a research tool that sends a question to Tavily's research endpoint and waits for the written answer.
You can connect to Tavily's hosted server at https://mcp.tavily.com/mcp or run the npm package locally over stdio. The hosted server takes an API key in the URL or an Authorization header, or an OAuth sign-in. With OAuth, Tavily asks on each connect whether to use your personal account or one of your organizations, and it uses that account's mcp_auth_default key, creating the key if it is missing. If that key is deleted or you lose access to the account, calls fail until you reconnect.
The local package reads TAVILY_API_KEY. The README does not mention that the 0.2.22 build also starts without a key: it then runs in a keyless mode where search and extract still work, while crawl, map and research reply that a key is needed. DEFAULT_PARAMETERS takes a JSON object of search settings, and the code lets those values replace whatever the assistant passes for the same field, so they act as fixed settings more than fallbacks. Research polls for its result for up to 15 minutes with the pro model and 5 minutes with mini.
| To run it yourself | Node.js 20+ |
|---|---|
| Runs on | macOS, Windows, Linux |
| Tavily | Free tierFree sign-up at app.tavily.com gives an API key. Crawl, map and research need a key; search and extract also run keyless in the local package. |
Get an API key from app.tavily.com and set it as TAVILY_API_KEY for the local package, or put it in the hosted URL (?tavilyApiKey=) or an Authorization: Bearer header. For OAuth on the hosted server, Claude Code finishes sign-in after adding it: run claude, type /mcp and pick the Tavily server. Clients without remote support can go through npx mcp-remote, which keeps its OAuth tokens in ~/.mcp-auth.
A good fit if you want an assistant to pull current pages from the web and already use Tavily, or are fine with a Tavily account and its credits. The hosted endpoint needs no local install and signs in with OAuth, which suits teams that share an organization account, since you pick the account on each connect. Run the npm package when your client only speaks stdio or you want to pin search defaults with DEFAULT_PARAMETERS. Everything it fetches goes through Tavily's servers, so it does not fit work that must stay off a third-party service, and it cannot click or fill in pages the way a browser driver does.
5 only read. A ? marks an optional parameter.
tavily_searchquery: stringsearch_depth?: enumtopic?: enumtime_range?: enumstart_date?: stringend_date?: stringmax_results?: numberinclude_images?: booleaninclude_image_descriptions?: booleaninclude_raw_content?: booleaninclude_domains?: arrayexclude_domains?: arraycountry?: stringinclude_favicon?: booleanexact_match?: booleantavily_extracturls: arrayextract_depth?: enuminclude_images?: booleanformat?: enuminclude_favicon?: booleanquery?: stringtavily_crawlurl: stringmax_depth?: integermax_breadth?: integerlimit?: integerinstructions?: stringselect_paths?: arrayselect_domains?: arrayallow_external?: booleanextract_depth?: enumformat?: enuminclude_favicon?: booleantavily_mapurl: stringmax_depth?: integermax_breadth?: integerlimit?: integerinstructions?: stringselect_paths?: arrayselect_domains?: arrayallow_external?: booleantavily_researchinput: stringmodel?: enum