Context7
Up-to-date docs for AI agents
Descripción del creador (original en inglés)
MCP web search + tiered web fetch for AI agents (Exa, Firecrawl), SSRF-guarded, cross-platform.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
EXA_API_KEY, FIRECRAWL_API_KEYLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"web-retrieval": {
"command": "uvx",
"args": [
"web-retrieval-mcp"
],
"env": {
"EXA_API_KEY": "your-value",
"FIRECRAWL_API_KEY": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add web-retrieval --env EXA_API_KEY=your-value --env FIRECRAWL_API_KEY=your-value -- uvx web-retrieval-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"web-retrieval": {
"command": "uvx",
"args": [
"web-retrieval-mcp"
],
"env": {
"EXA_API_KEY": "your-value",
"FIRECRAWL_API_KEY": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"web-retrieval": {
"type": "stdio",
"command": "uvx",
"args": [
"web-retrieval-mcp"
],
"env": {
"EXA_API_KEY": "your-value",
"FIRECRAWL_API_KEY": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub VelvetSP, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: EXA_API_KEY, FIRECRAWL_API_KEY
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.1.2) llegó al registro hace 5 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
En la misma categoría: Context7, Codebase Memory, Exa
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
An open-source [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server for source-grounded web research. Connect Codex CLI and the Codex IDE extension, Claude Code, Claude Desktop, Cursor, ChatGPT desktop, or any other compatible MCP client to six read-only tools for Exa or Tavily search, resilient Exa → Camoufox → Tavily → Firecrawl page retrieval, AI/ML paper discovery, and developer-source search—with explicit provenance, optional local caching, and SSRF guards.
[Why use it?](#why-use-web-retrieval-mcp) · [Quick start](#quick-start) · [Tools](#six-read-only-tools) · [Routing](#how-retrieval-works) · [Configuration](#configuration-reference) · [Security](#security-model) · [FAQ](#frequently-asked-questions)
Web research is more reliable when an agent can see where every result came from, choose the right retrieval strategy, and recover when one provider or page-access method fails. web-retrieval-mcp makes those controls part of the tool contract:
Sources trailer. Exa deep modes additionally return a clearly labeled synthesized answer, with grounding when Exa provides it, before the source-separated result blocks.Built-in capabilities vary by agent and can improve over time. The useful comparison is therefore not “all defaults are bad”; it is whether you need a portable, inspectable retrieval layer with controls your current client does not expose.
| Need | Typical bundled search/fetch surface | web-retrieval-mcp |
|---|---|---|
| Search output | Client-defined result or synthesis format | Default search returns source-separated blocks plus Sources; Exa deep modes add a labeled synthesis |
| Backend choice | Provider and routing are usually managed by the client | Exa or Tavily search, with a disclosed Firecrawl fallback |
| Difficult pages | One client-specific access path | Indexed content, guarded local browser rendering, Tavily Extract, and Firecrawl tiers |
| Retrieval intent | Usually search or page text | Full body, concise summary, or query-grounded page answer |
| Research discovery | General web index | Dedicated paper and developer-source tools in addition to web search |
| Freshness and filters | Whatever the client exposes | Date windows, hour-level recency, domains, categories, result limits, and forced freshness |
| Auditability | Client-specific | Fetch tier/cache/truncation disclosures; Tavily and Firecrawl search-fallback labels; explicit filter notices where supported |
| Operations | Client-defined; often hosted or opaque | Local stdio or self-hosted loopback HTTP, optional private UDS cache |
| Security policy | Client-specific | Initial URL validation plus guarded browser requests and redirects |
Use it as an independent complementary retrieval lane by default. If you want it to replace Claude Code's built-in WebSearch and WebFetch, the package also includes an optional, previewable hook installer.
Python 3.10 or newer is required.
For the complete feature set in an isolated environment:
pipx install --include-deps 'web-retrieval-mcp[all]'
camoufox fetch
--include-deps exposes Camoufox's own command from the isolated pipx environment; the second command downloads its managed browser. If you do not want local rendering, install the base package or selected non-render extras and skip the browser download.
For a lean Exa + Firecrawl installation:
pipx install web-retrieval-mcp
With uv installed, you can run the base package in a temporary isolated environment without a permanent install:
uvx web-retrieval-mcp
Or install into an existing virtual environment:
python -m pip install 'web-retrieval-mcp[all]'
python -m camoufox fetch
The browser download is required whenever you install the render extra and want Camoufox to serve render="auto" or render="always" calls.
Optional extras are composable:
| Extra | Adds |
|---|---|
tavily | Tavily Search and Tavily Extract |
render | Local Camoufox/Playwright rendering |
cache | Valkey client for completed-result caching |
keyring | Cross-platform native secret-store access |
all | Every optional runtime capability above |
For the broadest routing coverage, configure Exa and Firecrawl; add Tavily when you want provider-selectable search or another full-body fetch tier.
export EXA_API_KEY='<your-exa-api-key>'
export FIRECRAWL_API_KEY=' ' export TAVILY_API_KEY=' ' # optional
You do not need all three keys to start the server. Tools resolve credentials lazily and report what a selected route is missing. See Credential storage for a key file and OS secret-store alternatives.
All three providers advertised no-card entry allocations when checked on 2026-09-01; plans and unit costs can change, so check their live pricing before estimating a workload:
| Provider | Entry allocation checked 2026-09-01 | Used for |
|---|---|---|
| Exa | $20 signup credit plus $10 monthly API credits | Default web search and first indexed-content fetch tier |
| Firecrawl | 1,000 credits per month | Search/fetch fallback and research/developer indexes |
| Tavily | 1,000 API credits per month | Optional search provider and full-body extract tier |
| Camoufox | Local open-source browser | JavaScript-rendered page retrieval on your machine |
Codex CLI and the Codex IDE extension share MCP configuration. Add the server with the CLI, then verify it is registered:
codex mcp add web-retrieval -- web-retrieval-mcp
codex mcp list
With uvx and no prior install:
codex mcp add web-retrieval -- uvx web-retrieval-mcp
See OpenAI's Codex MCP documentation for the current CLI, IDE, and configuration-file details.
Claude Code:
claude mcp add web-retrieval -- web-retrieval-mcp
With uvx and no prior install:
claude mcp add web-retrieval -- uvx web-retrieval-mcp
Claude Desktop, Cursor, and other clients that accept an mcpServers object can use:
{
"mcpServers": { "web-retrieval": { "command": "web-retrieval-mcp" } } }
That configuration assumes the executable is on the client's PATH. For an uvx launch, use "command": "uvx" and "args": ["web-retrieval-mcp"]. If a desktop client does not inherit your shell environment, use the private key file described below or place literal key values in the client's protected environment configuration. Do not rely on ${VARIABLE} interpolation unless your client documents that behavior.
ChatGPT desktop and clients with different setup surfaces can connect through the MCP transport their current version supports. This server uses stdio by default and can also expose Streamable HTTP; consult the client's documentation for its configuration format and supported transports.
Once the MCP server is connected, prompts can stay natural:
Search the web for the latest primary documentation about Python package metadata.
Keep each source separate and preserve its URL.
Fetch https://example.com/report, force a fresh retrieval, and answer only: What methodology did the authors use?
Find AI/ML papers about retrieval reranking, inspect the strongest paper for its reported benchmark result, then find newer work that cites it.
Search merged pull requests and documentation for the origin of this exact error: "transport closed".
All tools carry MCP's read-only annotation. MCP clients receive the complete generated input schema and descriptions when they connect.
| Tool | Compact signature | Best for |
|---|---|---|
web_search | web_search(query, num_results=8, mode="auto", …, provider=None) | General web search through Exa or Tavily, with source-separated results and Firecrawl fallback |
web_fetch | web_fetch(url, render="auto", max_chars=None, max_age_hours=None, mode="full", question=None, tavily=None) | Readable page bodies, concise summaries, or grounded answers through a tiered fetch cascade |
research_papers | research_papers(query, k=8) | Ranked AI/ML paper discovery through Firecrawl's Research Index |
research_paper | research_paper(paper_id, query=None) | Paper metadata and optional query-relevant full-text passages for claim verification |
research_similar | research_similar(paper_id, intent, k=8, mode="similar", …) | Related papers, citers, or references guided by a natural-language intent |
research_github | research_github(query, k=8, passages=2, types=None, repos=None) | Developer documentation, repository READMEs, issues, and merged pull requests |
web_search supports relevance or date-oriented filters, domain inclusion/exclusion, publication windows, generated per-result summaries, and Exa's fast/deep search modes. Tavily receives equivalent controls where its API supports them; approximations and dropped controls are disclosed in the output.
The research-paper index is arXiv-oriented and best suited to AI/ML. For scholarly work outside that scope, use web_search(category="publication").
Exa is the default search provider. Select Tavily for one call with provider="tavily", or globally:
export WEB_SEARCH_PROVIDER=tavily
Only exa and tavily are accepted. If the
Solo se muestra el principio; lee el resto en el repo