Paparats MCP: Self-Hosted Semantic Code Search
io.github.IBazylchuk · Updated
Self-hosted semantic code search MCP for Claude Code & Cursor. Multi-repo, AST-aware, stays local.
At a glance
Paparats MCP: Self-Hosted Semantic Code Search is an MCP server in the Dev Tools & Git category. It runs locally over stdio via `npx -y @paparats/cli`, and declares no required credentials. It scores A (84/100) on the MCP Skills Hub health score as of Oct 27, 2026.
One-click install
Opens your editor and pre-fills the config. Your editor will ask before adding it.
How to install Paparats MCP: Self-Hosted Semantic Code Search in your AI client
Setup for Claude Code, Claude Desktop, Cursor, Codex, Windsurf, Cline and VS Code — copy-paste ready.
How to install Paparats MCP: Self-Hosted Semantic Code Search in Claude CodeAnthropic's agentic CLI
Add the server
bashclaude mcp add paparats-mcp -- npx -y @paparats/cliVerify it's connected
bashclaude mcp listSharing it with your team?
Add `--scope project` to write it to .mcp.json in the repository root, which you can commit (with the secrets left as environment variables).
Use it in a session
Ask Claude to use the tools this server exposes. It discovers them automatically.
How to install Paparats MCP: Self-Hosted Semantic Code Search in Claude DesktopDesktop app (MCP config)
Open your MCP config
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json
Add this server
json{ "mcpServers": { "paparats-mcp": { "command": "npx", "args": [ "-y", "@paparats/cli" ] } } }Restart Claude Desktop
The tools appear under the 🔌 menu once the app reloads.
How to install Paparats MCP: Self-Hosted Semantic Code Search in CursorAI-first code editor
Create / edit .cursor/mcp.json in your project
json{ "mcpServers": { "paparats-mcp": { "command": "npx", "args": [ "-y", "@paparats/cli" ] } } }Enable it
Cursor Settings → MCP → toggle the server on. Tools become available to the Composer/Agent.
How to install Paparats MCP: Self-Hosted Semantic Code Search in Codex CLIOpenAI coding agent
Add to ~/.codex/config.toml
toml[mcp_servers.paparats-mcp] command = "npx" args = ["-y", "@paparats/cli"]Run Codex
Codex loads MCP servers from config.toml on startup and exposes their tools to the agent.
How to install Paparats MCP: Self-Hosted Semantic Code Search in WindsurfCodeium's agentic IDE
Edit ~/.codeium/windsurf/mcp_config.json
json{ "mcpServers": { "paparats-mcp": { "command": "npx", "args": [ "-y", "@paparats/cli" ] } } }Reload
Windsurf → Cascade → refresh MCP servers. Cascade can now call the tools.
How to install Paparats MCP: Self-Hosted Semantic Code Search in ClineVS Code autonomous agent
Open Cline → MCP Servers → Configure
Adds to cline_mcp_settings.json.
Add the server
json{ "mcpServers": { "paparats-mcp": { "command": "npx", "args": [ "-y", "@paparats/cli" ] } } }
How to install Paparats MCP: Self-Hosted Semantic Code Search in VS CodeCopilot / MCP support
Create .vscode/mcp.json
json{ "servers": { "paparats-mcp": { "type": "stdio", "command": "npx", "args": [ "-y", "@paparats/cli" ] } } }Start it
VS Code shows a ▶ Start action above the server entry. Agent mode (Copilot Chat) can then use the tools.
What tools does Paparats MCP: Self-Hosted Semantic Code Search expose?
This server runs as a local package. We only query remote servers for their tool list — asking this one would mean executing it, so its tools are listed in the documentation below.
What the code can do
Read from the published package source — never executed. Parsed 17 of 17 source files.
This server can run other programs on your machine, read and write files and make network requests.
How it was published
- No provenance attestation — there is nothing linking this published artifact to a specific source commit.
- 1 npm maintainer — a single point of compromise · last published by ibazylchuk.
Maintainer of this package and think something here is wrong? Tell us and we'll correct it.
Before you install
Signals gathered from the source repo and package registry — not a safety verdict.
What it can reach
- Runs code on your machine — Executes as a local process with your user's permissions, including filesystem access.
- Downloads at launch — The package is fetched from its registry each run unless you pin a version.
- Last commit today — Actively maintained.
- 32 GitHub stars — Community adoption signal.
Client compatibility
Health score
A · 84Maintenance, adoption, transparency and packaging — not a safety audit. How this is calculated
- Maintenance30%100%
Last commit 0 days ago.
- Adoption20%46%
32 stars.
- Transparency20%75%
3/4: ✓ public source repo, ✓ declared license, ✓ documentation, ✗ discoverable tool list.
- Provenance15%100%
Package and registry entry point at the same repository.
- Packaging15%100%
Publishes a pinned version (2.16.2).
Documentation
Full READMEPaparats MCP: self-hosted semantic code search for AI coding agents
Paparats MCP is an open-source, self-hosted MCP server that gives Claude Code, Cursor, Codex, GitHub Copilot and any other MCP client semantic code search across many repositories: by meaning, with who calls what, and what a change will touch. It runs on your machine or your server in Docker, with local embedding models by default, so your code stays with you.
Your agent asks _"where do we retry failed payments?"_ and gets the few functions that do it, with file and line, instead of grepping and reading whole files. Before changing one, it asks what depends on it and gets the callers two steps out (up to three) and the tests that reach them.
With Paparats the agent answered 25% faster and read 23% fewer new tokens. Claude Code, the same question about this repository, without Paparats (left) and with it (right), at 5× speed. Averages over three runs each: 99 s against 74 s, 23% fewer new input tokens and 21% fewer output tokens. This repository is small, about 300 files. On large legacy codebases spread over many repositories, where I use Paparats every day, the difference is much bigger.
Quick start
You need Docker with Compose v2. Two files and one command:
mkdir paparats && cd paparats
curl -fsSLO https://raw.githubusercontent.com/IBazylchuk/paparats-mcp/main/examples/docker-compose/docker-compose.yml
curl -fsSLO https://raw.githubusercontent.com/IBazylchuk/paparats-mcp/main/examples/docker-compose/projects.yml
docker compose up -d
claude mcp add --scope user --transport http paparats http://localhost:9876/mcpprojects.yml indexes this repository, so there is something to ask about right away (docker compose logs -f paparats-indexer shows the progress). Put your own GitHub repositories there; the file is reloaded on save, and private ones need GITHUB_TOKEN in a .env next to it. Any other MCP client takes the same URL, http://localhost:9876/mcp (setup for each).
Then ask your agent:
Search the codebase for where we handle failed payments, show me what calls it, and what would be affected if I changed it.
Without local models: download docker-compose.voyage.yml instead, put VOYAGE_API_KEY=... into .env and run docker compose -f docker-compose.voyage.yml up -d. Code is then sent to Voyage AI to be embedded, and the 2.3 GB of models are not needed.
With the CLI
Easier for folders on your machine (it mounts them for you) and on macOS, where the models run natively with Metal; in Docker on a Mac they only get the CPU. Needs Node.js 24+.
npm install -g @paparats/cli
brew install llama.cpp mostlygeek/llama-swap/llama-swap # macOS only: local models with Metal
paparats install # starts the stack, connects Claude Code and Cursor
paparats add ~/code/my-app # or `.`, or a GitHub repo: paparats add acme/widgets
paparats list # wait until the project shows as indexedExcerpt — the full document is on GitHub.
Alternatives to Paparats MCP: Self-Hosted Semantic Code Search
- Obsidian Semantic SearchA · 80Read-only semantic search MCP server for Obsidian vaults using local Ollama embeddings.
- dsh-batonA · 91Hand tasks from Claude Code, Codex or any MCP client to a local DeepSeek Harness.
- KEPTA — the memory for AI systemsA · 81Local encrypted memory for AI: hybrid search, 8 MCP tools, one file you own. Free, no cloud.
- vault-indexB · 73Local hybrid keyword + vector search (SQLite FTS5 + sqlite-vec) over markdown vaults and code.
Maintain Paparats MCP: Self-Hosted Semantic Code Search? Add a badge to your README
Shows its health grade, and links readers to install steps for every client.
[](https://mcp-skills-hub.vercel.app/mcps/io-github-ibazylchuk-paparats-mcp)Catalog data refreshed . Something wrong? Report it.