Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Browse Gopher and Gemini resources safely: SSRF protection, TLS/TOFU, structured JSON output.
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.
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": {
"gopher": {
"command": "uvx",
"args": [
"gopher-mcp"
]
}
}
}Ejecuta esto en tu terminal
claude mcp add gopher -- uvx gopher-mcpPégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"gopher": {
"command": "uvx",
"args": [
"gopher-mcp"
]
}
}
}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": {
"gopher": {
"type": "stdio",
"command": "uvx",
"args": [
"gopher-mcp"
]
}
}
}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 6 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub cameronrye, 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.10.2) llegó al registro hace 2 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv), Docker en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, Zoo MCP
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
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
An MCP server that provides access to the Zoo API for various CAD operations and tools.
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.
A modern, cross-platform Model Context Protocol (MCP) server that enables AI assistants to browse and interact with both Gopher protocol](https://en.wikipedia.org/wiki/Gopher_(protocol))) and Gemini protocol resources safely and efficiently.
The Gopher & Gemini MCP Server bridges vintage and modern alternative internet protocols with AI assistants, allowing LLMs like Claude to explore the unique content and communities that thrive on both Gopherspace and Geminispace. Built with FastMCP and modern Python practices, it provides secure, efficient gateways to these distinctive internet protocols.
Key Benefits:
gopher_fetch and gemini_fetch tools for comprehensive protocol coverage1) and Index-Search servers (7) as structured menus, text (0), HTML (h), info (i) and error (3) lines as text, the fourteen binary types as metadata only, and the three interactive ones (2, 8, T) refused without opening a connection. The one standard type with no category of its own is + (redundant server), which names an alternate host for the preceding item rather than content to render; it takes the unknown-type path below. An unknown type is read as text, best-effort, and an hURL URL: selector is followed to the destination the server actually statedrefresh bypassoffset reads the rest instead of leaving a partial viewGopher (RFC 1436, including the de-facto item types in common use) and Gemini, both read-only. That is the whole surface, and the neighbouring protocols are deliberately out of scope rather than merely unbuilt:
: item type is recognised because it appears in ordinary menus, but no Gopher+ attribute or metadata request is ever sent.If you need one of these, an MCP server that does it well is a better answer than a flag on this one.
Complete documentation is available at [cameronrye.github.io/gopher-mcp](https://cameronrye.github.io/gopher-mcp)
No clone, no checkout — uv fetches and runs the published package on demand:
uvx gopher-mcp
# Install from PyPI
pip install gopher-mcp
uv add gopher-mcp
# Clone the repository
git clone https://github.com/cameronrye/gopher-mcp.git cd gopher-mcp
./scripts/dev-setup.sh # Unix/macOS
scripts\dev-setup.bat # Windows
uv run task serve
Tagged releases publish a slim, non-root image to ghcr.io/cameronrye/gopher-mcp, tagged with the release version plus :latest for stable (non-pre-release) tags:
# The default CMD serves streamable-http on 0.0.0.0:8000
docker run --rm -p 8000:8000 \ -v gopher-mcp-state:/home/app/.local/share/gopher-mcp \ ghcr.io/cameronrye/gopher-mcp:latest
docker run --rm -i --no-healthcheck \ -v gopher-mcp-state:/home/app/.local/share/gopher-mcp \ ghcr.io/cameronrye/gopher-mcp:latest --transport stdio
To run a modified tree, the repository ships the Dockerfile the published image is built from: docker build -t gopher-mcp .
Mount a volume, or Gemini trust is meaningless. Without one, the TOFU pins and the client certificates' private keys die with the container, so every start re-arms blind trust-on-first-use — the pin is the only thing that authenticates a Gemini capsule — and destroys any identity you minted, whose private key cannot be recovered.
Mount it at that exact path. /home/app/.local/share/gopher-mcp is where the server writes (tofu.json and certs/), and it is the one directory the image pre-creates owned by the runtime user and mode 700 — which is what lets a named volume come up writable instead of root-owned. Mounting anywhere else persists an empty directory. ~/.gemini is not the path: it is only a read-in-place upgrade route for installs that pinned certificates before gopher-mcp had a directory of its own, and it is honoured only when its store file is already there, which it never is in a fresh image.
Health checks. The HTTP transports serve GET /health, which answers {"status": "ok", "version": "..."} and nothing else — no configuration, no allowlists, no store paths. It bypasses authorization by SDK design, which is what makes it usable as a probe. The image's HEALTHCHECK polls it on the hard-coded port 8000 to match the default CMD, so override the healthcheck alongside --port, and pass --no-healthcheck when running stdio — a stdio container serves no HTTP and would otherwise be reported unhealthy while working perfectly.
Note: the default
CMDbinds0.0.0.0so the container is reachable out
of the box. A non-loopback
--hostalso turns off FastMCP's DNS-rebinding
Host/Origincheck, matching what the SDK does when it is constructed with
such a host — otherwise every client that was not on localhost got
421 Misdirected Request. Keep the check on by naming the hostnames the
deployment answers to with
--allowed-host NAME(repeatable; a bare name
matches any port). The HTTP transports are unauthenticated and have no TLS
either — put the container behind a trusted reverse proxy, or use
--transport stdio, before exposing it beyond your machine.
Every client below runs the server over stdio — no ports, no TLS, no listening socket. The entry is the same three fields everywhere; only the file and the top-level key change:
| Client | Where the entry goes | Top-level key |
|---|---|---|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json (macOS), %APPDATA%\Claude\claude_desktop_config.json (Windows), ~/.config/Claude/claude_desktop_config.json (Linux) | mcpServers |
| Claude Code | claude mcp add --scope user gopher -- uvx gopher-mcp, or .mcp.json at the repository root for --scope project | mcpServers |
| Cursor | ~/.cursor/mcp.json, or .cursor/mcp.json for one project | mcpServers |
| VS Code | .vscode/mcp.json in the workspace, or MCP: Open User Configuration | servers |
| Zed | settings.json (zed: open settings) | context_servers |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | mcpServers |
{
"mcpServers": { "gopher": { "command": "uvx", "args": ["gopher-mcp"] } } }
That is the whole entry: every setting in Configuration has a working default, so add an "env" block only when you actually want to change one. Installed with pip rather than uvx? Use "command": "gopher-mcp" and "args": [] instead.
The Installation Guide has the exact JSON for each client, including the two that do not use the mcpServers key.
If a GUI client reports that the server failed to start, it is almost alway
Solo se muestra el principio; lee el resto en el repo