Gopher & Gemini MCP Server — Claude Code MCP server: what it does
Hands the assistant two tools, gopher_fetch and gemini_fetch. They pull Gopher menus and Gemini pages and hand back JSON.
claude mcp add gopher-mcp -- uvx gopher-mcpWhat Gopher & Gemini MCP Server does
Both protocols are read-only here. On the Gopher side the server parses RFC 1436 item types: menus and index-search servers become structured output, while text, HTML and info lines arrive as plain text. The fourteen binary types come back as metadata alone, and the three interactive ones are refused before any connection opens. Gemini gets gemtext parsing, TLS checks and status code handling.
Safety features include SSRF guards, a request cap for each host and an allowlist you set yourself. Gemini certificates are validated with TOFU, and dedicated tools let you inspect or recover them. Cached replies are labelled as such; pass refresh to skip the cache. When a menu or page hits the output limit, the server tells you where it stopped and an offset read continues from there.
Python 3.11+ and uv are required, and uvx gopher-mcp runs the package without a clone. Titan, Misfin, Spartan, Nex and Gopher+ sit outside the surface on purpose: the first two can publish and send mail on your behalf, the others would need separate parsers. Without an allowlist in your config, filtering falls back to the built-in rules.
What it helps with
- read a Gopher menu or text file from a live server
- fetch a Geminispace page and turn gemtext into plain text
- skip a stale cache entry and reload the page
- resume a long menu from the point where it was cut
- restrict which hosts the assistant may reach
Example prompts for the agent
- Open the menu on that Gopher server and show me the protocol section
- Fetch this Gemini URL and summarise the page for me
- Reload the same page with
refresh, the cache may be old
How to install Gopher & Gemini MCP Server
Platform CLI
claude mcp add gopher-mcp -- uvx gopher-mcpuvx runs the command named after the package; if the README names another one, use uvx --from gopher-mcp <command>
Platform CLI
codex mcp add gopher-gemini-mcp-server -- uvx gopher-mcpuvx runs the command named after the package; if the README names another one, use uvx --from gopher-mcp <command>
Config file
{
"mcpServers": {
"gopher-gemini-mcp-server": {
"command": "uvx",
"args": [
"gopher-mcp"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from gopher-mcp <command>
Config file
{
"servers": {
"gopher-gemini-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"gopher-mcp"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from gopher-mcp <command>
Platform CLI
gemini mcp add gopher-gemini-mcp-server uvx gopher-mcpuvx runs the command named after the package; if the README names another one, use uvx --from gopher-mcp <command>
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about Gopher & Gemini MCP Server
How do I install Gopher & Gemini MCP Server in Claude Code?
Run claude mcp add gopher-mcp -- uvx gopher-mcp. The alternative name works too: claude mcp add gopher-gemini-mcp-server -- uvx gopher-mcp.
What does Gopher & Gemini MCP Server do?
It registers gopher_fetch and gemini_fetch so the model can read resources over both protocols. Replies are structured JSON built for an LLM to consume.
Which protocols are left out?
Titan and Misfin, since they write and send. Spartan and Nex are skipped because each needs its own parser. Gopher+ is not implemented; the : type is only recognised inside ordinary menus.