Zoekt MCP server
io.github.radiovisual/zoekt-mcp·v0.3.2·2 starsFast indexed code search for AI agents, powered by Sourcegraph Zoekt.
2 stars65 downloads/wk
Reviews
Write oneNobody has reviewed Zoekt yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Zoekt tools (3, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
get_fileFetch the full contents of a file from an indexed repository.
list_reposList indexed repositories.
search_codewrite actionRun a Zoekt query against the indexed corpus.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan10 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 171 days ago8/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Zoekt compares
Against every graded Web search MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 82/100
- higher than 68% of 3,470 Web search servers
- Tools
- 3
- the typical Web search server has 5
- Tools that change things
- 33%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 2
- more than 70% of 1,786 Web search servers
- Downloads a week
- 65
- more than 46% of 827 Web search servers with a package
What its tools let an agent do: 2 read · 1 change
Install Zoekt in Claude Code, Cursor or VS Code
claude mcp add zoekt-mcp -- uvx zoekt-mcp
What the publisher says
From the Zoekt repository's README, as published. We do not edit it. Read it on GitHub
zoekt-mcp
An MCP server that exposes Sourcegraph Zoekt code search to any MCP-capable AI agent — Claude Code, Claude Desktop, Cursor, MCP Inspector, etc. — so the agent can run fast, indexed, regex/symbol-aware code search over your repositories regardless of the language you're working in.
FastMCP, runs over stdio so clients can spawn it as a subprocess. Published to PyPI, ghcr.io, and listed in the official MCP Registry, so no clone is required to use it.
- MCP server: Python, built on
Compose file attached to every GitHub release — or point the MCP server at any existing zoekt-webserver you have lying around.
- Backend: a zoekt-webserver you run yourself via the Docker
- Tools exposed: searchcode, listrepos, get_file.
Architecture
flowchart LR
subgraph Client["MCP client"]
CC["Claude Code<br/>Claude Desktop<br/>Cursor, etc."]
end
subgraph Server["zoekt-mcp (Python)"]
Tools["search_code<br/>list_repos<br/>get_file"]
end
subgraph Backend["Docker: zoekt backend"]
Web["zoekt-webserver"]
Idx[("zoekt index<br/>named volume")]
Indexer["zoekt-indexer<br/>(one-shot)"]
end
Code[("Your code<br/>bind mount")]
CC <-->|"stdio<br/>MCP protocol"| Tools
Tools <-->|"HTTP JSON<br/>/api/search<br/>/api/list<br/>/print"| Web
Web --> Idx
Code --> Indexer
Indexer --> IdxHow a single search flows through the system
sequenceDiagram
actor You
participant Claude as Claude Code
participant MCP as zoekt-mcp
participant Web as zoekt-webserver
participant Idx as zoekt index
You->>Claude: "where is getVideoId defined?"
Claude->>MCP: search_code("sym:getVideoId")
MCP->>Web: POST /api/search
Web->>Idx: scan shards
Idx-->>Web: matches + ctags symbols
Web-->>MCP: raw JSON result
Note over MCP: trim to {repo, file,<br/>line, text, symbols}
MCP-->>Claude: shaped result
Claude-->>You: "src/index.js:17 (function)"Quickstart
Getting from "nothing installed" to "Claude can search my code" is three steps: install the MCP server, run the backend, wire it into your client. No git clone required in any of them.
Prerequisites
You need exactly one of these to run the MCP server, plus Docker for the backend:
uvx zoekt-mcp install path. MCP clients spawn the server via uvx, so which uv must resolve in whatever shell your client launches processes in. Install once per machine:
- uv on your PATH — for the
# Official installer (macOS / Linux)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Homebrew
brew install uv
# pipx
pipx install uvThe installer drops uv and uvx into ~/.local/bin/ (Linux/macOS) or %USERPROFILE%\.local\bin\ (Windows). Verify with uv --version.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Zoekt: common questions
- Is Zoekt MCP server safe?
- Mostly: it is graded B (82/100). Read the Zoekt safety report
- How do I install Zoekt?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Zoekt need an API key?
- No secret keys are declared. It reads 2 settings from the environment.
- Is Zoekt maintained?
- The last commit was 209 days ago (2026-04-09). The latest release is v0.3.2.
- How does Zoekt compare with other Web search MCP servers?
- safety score 82/100 (higher than 68% of 3,470 Web search servers); tools 3 (the typical Web search server has 5); tools that change things 33% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.