Context7
Up-to-date docs for AI agents
Descripción del creador (original en inglés)
Fully local MCP server and CLI for web research
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.
SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL, SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL, SOURCEWEAVE_SEARCH_CACHE_REDIS_URLNecesitas
¿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": {
"sourceweave-web-search": {
"command": "uvx",
"args": [
"sourceweave-web-search"
],
"env": {
"SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL": "your-value",
"SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL": "your-value",
"SOURCEWEAVE_SEARCH_CACHE_REDIS_URL": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add sourceweave-web-search --env SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL=your-value --env SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL=your-value --env SOURCEWEAVE_SEARCH_CACHE_REDIS_URL=your-value -- uvx sourceweave-web-searchCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"sourceweave-web-search": {
"command": "uvx",
"args": [
"sourceweave-web-search"
],
"env": {
"SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL": "your-value",
"SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL": "your-value",
"SOURCEWEAVE_SEARCH_CACHE_REDIS_URL": "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": {
"sourceweave-web-search": {
"type": "stdio",
"command": "uvx",
"args": [
"sourceweave-web-search"
],
"env": {
"SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL": "your-value",
"SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL": "your-value",
"SOURCEWEAVE_SEARCH_CACHE_REDIS_URL": "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.
SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL envSOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL envSOURCEWEAVE_SEARCH_CACHE_REDIS_URL envEsta 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 6 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub MRNAQA, 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.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
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.5.0) llegó al registro hace 7 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.
Search-first MCP server and CLI for web research.
[!NOTE]
sourceweave-search-mcpis the default local entrypoint. When explicitSOURCEWEAVE_SEARCH_*endpoint variables are absent, it discovers or starts the local Docker-backed stack automatically. If you already run the services yourself, set explicit endpoints and it will use them instead.
Overview • Getting started • Managed local runtime • MCP client setup • CLI • Container deployments • OpenWebUI • Runtime configuration • Development
SourceWeave Web Search gives MCP clients a compact three-tool contract for web research:
search_web(query, domains?, urls?, effort?) discovers sources and returns compact results with stable page_id handles.read_pages(page_ids, focus?) reads stored pages by page_id.read_urls(urls, focus?) reads direct URLs without searching first.It combines:
| Component | Role |
|---|---|
| SearXNG | Search discovery |
| Crawl4AI | Clean HTML extraction |
| Redis or Valkey | Persisted page cache and page_id store |
| MarkItDown | Document conversion for PDFs and other supported files |
3.12+SOURCEWEAVE_SEARCH_* endpoints only if you want hosted or self-managed servicesRun the server from the published package:
uvx --from sourceweave-web-search sourceweave-search-mcp
Or start the MCP server over HTTP:
uvx --from sourceweave-web-search sourceweave-search-mcp \
--transport streamable-http \ --host 127.0.0.1 \ --port 8000
When no endpoint env vars are set, sourceweave-search-mcp:
| Mode | What happens |
|---|---|
| Managed stack found | Join the existing SourceWeave-managed stack for the current runtime state directory |
| Healthy external stack found | Reuse the canonical local ports 19080, 19235, and 16379 without ownership |
| No reusable stack | Start and supervise a Docker-backed stack on canonical or free local ports |
Managed state lives under ~/.sourceweave-local/managed-runtime. Multiple MCP processes on the same machine share one managed stack per state directory.
[!IMPORTANT]
Managed runtime removes containers only when the last active SourceWeave-managed process exits. Named volumes are preserved, so cache data survives restarts. If the original owning process dies, a later process can recover the same stack from Docker project identity and persisted runtime state.
If you already run SearXNG, Crawl4AI, and Redis or Valkey yourself, or want to point at hosted services, set explicit endpoints and the MCP entrypoint will bypass managed Docker startup:
SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL="http://127.0.0.1:19080/search?format=json&q=<query>" \
SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL="http://127.0.0.1:19235" \ SOURCEWEAVE_SEARCH_CACHE_REDIS_URL="redis://127.0.0.1:16379/2" \ uvx --from sourceweave-web-search sourceweave-search-mcp
sourceweave-search runs the tool directly. Use it when the supporting services are already available or when you provide explicit endpoints. It does not start Docker.
sourceweave-search --query "python programming" --read-first-pages 2
sourceweave-search --read-url "https://packaging.python.org/en/latest/"
[!TIP]
The direct CLI also accepts
--searxng-base-url,--crawl4ai-base-url, and--cache-redis-urloverrides.
Example opencode.json / opencode.jsonc / ~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json", "mcp": { "sourceweave": { "type": "local", "command": [ "uvx", "--from", "sourceweave-web-search", "sourceweave-search-mcp" ], "enabled": true, "timeout": 300000 } } }
For a shared HTTP endpoint instead:
{
"$schema": "https://opencode.ai/config.json", "mcp": { "sourceweave": { "type": "remote", "url": "http://127.0.0.1:18000/mcp", "enabled": true, "timeout": 300000 } } }
Example .vscode/mcp.json:
{
"servers": { "sourceweave": { "type": "stdio", "command": "uvx", "args": [ "--from", "sourceweave-web-search", "sourceweave-search-mcp" ] } } }
For a shared HTTP endpoint instead:
{
"servers": { "sourceweave": { "type": "http", "url": "http://127.0.0.1:18000/mcp" } } }
Example .mcp.json:
{
"mcpServers": { "sourceweave": { "type": "stdio", "command": "uvx", "args": [ "--from", "sourceweave-web-search", "sourceweave-search-mcp" ] } } }
For a project-scoped shared config, place the same block in .mcp.json at the repo root.
The direct CLI is useful once the supporting services are already reachable. It gives you the same search-first workflow without the MCP wrapper.
sourceweave-search --query "react useEffect cleanup example" --read-first-page
sourceweave-search --query "HTTP overview" --domain developer.mozilla.org --read-first-page sourceweave-search --read-url "https://packaging.python.org/en/latest/"
The managed local runtime is for host-side uvx or uv run launches. Containerized deployments still use explicit endpoint wiring.
ghcr.io/mrnaqa/sourceweave-web-search-mcpdocker compose up -d --build mcpExample container run:
docker run --rm -p 8000:8000 \
-e SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL="http://host.docker.internal:19080/search?format=json&q= " \ -e SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL="http://host.docker.internal:19235" \ -e SOURCEWEAVE_SEARCH_CACHE_REDIS_URL="redis://host.docker.internal:16379/2" \ ghcr.io/mrnaqa/sourceweave-web-search-mcp:latest
This repo also ships a generated standalone OpenWebUI tool file at artifacts/sourceweave_web_search.py.
From a repo checkout, verify it is in sync with the canonical implementation:
uv run sourceweave-build-openwebui --check
Paste that artifact into OpenWebUI when you want the standalone tool-file deployment path. The generated file rewrites the default endpoints to the repo-local compose service names so it matches the container deployment path out of the box.
Optional environment variables:
| Variable | Purpose |
|---|---|
SOURCEWEAVE_SEARCH_SEARXNG_BASE_URL | SearXNG URL template. Must contain . |
SOURCEWEAVE_SEARCH_CRAWL4AI_BASE_URL | Crawl4AI base URL. |
SOURCEWEAVE_SEARCH_CACHE_REDIS_URL | Redis or Valkey URL used for caching. |
FASTMCP_HOST | Host for sse or streamable-http transport. |
FASTMCP_PORT | Port for sse or streamable-http transport. |
If the endpoint variables are unset, sourceweave-search-mcp defaults to managed local runtime.
Default endpoint values:
http://127.0.0.1:19080/search?format=json&q= http://127.0.0.1:19235redis://127.0.0.1:16379/2Default preferred host ports for managed startup:
1908019235163798000 when run directly with uvx; 18000 at /mcp when using the repo's mcp compose servicegit clone https://github.com/MRNAQA/sourceweave-web-search.git
cd sourceweave-web-search uv sync --locked --group dev uv run sourceweave-search-mcp
Useful checks:
uv run sourceweave-build-openwebui --check
uv run sourceweave-search-mcp --help uv run pytest tests/test_config.py tests/test_packaging.py tests/test_tool.py tests/test_managed_runtime.py -m "not integration"