repodoc MCP server
Can use Ollama as a local provider for generating documentation, reducing API costs and enabling offline operation.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@repodoc MCP serversearch for documentation about the needs system"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
repodoc
Auto-documenting repo tool with local RAG retrieval.
Generates "what-exists" reference docs for each source file (LLM, on push only)
Maintains them incrementally — a SHA-256 manifest means only changed files are re-documented/re-embedded
Serves everything through a local hybrid (vector + BM25) index:
an MCP server so Claude Code retrieves only the relevant slices (token savings)
a MkDocs Material site for humans
All retrieval is local and free (sentence-transformers + LanceDB). The only API cost is generation, at push time — and even that can be moved to a local model via Ollama.
Install
cd c:\apps\repodoc
uv venv --python 3.12
uv pip install -e ".[index,mcp,site]"The generator needs ANTHROPIC_API_KEY (or [generator] provider = "ollama" in config).
Related MCP server: Atlas
Usage
repodoc init <repo> # one-time: writes <repo>/.repodoc/config.toml + manifest
repodoc status --repo <repo> # what changed since last run
repodoc sync --repo <repo> # generate + index changed files (what CI calls)
repodoc query --repo <repo> "how does the needs system work?"
repodoc serve-mcp --repo <repo> # stdio MCP server for Claude Code
repodoc build-site --repo <repo> # MkDocs site -> <repo>/.repodoc/site
repodoc reindex --full --repo <repo> # after changing the embedding modelUseful flags: repodoc generate --dry-run (no LLM calls), --limit N (cap spend per run).
Claude Code integration
.mcp.json in your workspace:
{
"mcpServers": {
"gps3-docs": {
"command": "c:/apps/repodoc/.venv/Scripts/repodoc.exe",
"args": ["serve-mcp", "--repo", "c:/apps/gps3"]
}
}
}Tools exposed: search_docs(query, k, doc_class), get_doc(path), list_docs().
Keeping docs current on push
CI (preferred): see
gps3/.github/workflows/repodoc.yml— runsrepodoc syncon push to the default branch and commits regenerated docs. Needs the repodoc repo on GitHub +ANTHROPIC_API_KEYsecret.Local hook (opt-in):
.git/hooks/pre-pushrunningrepodoc sync --repo .. Note this calls the LLM (costs money) on each push — CI with caching is usually better.
Model upgrades
Both model slots live in <repo>/.repodoc/config.toml:
Slot | Change | Consequence |
| e.g. anthropic → ollama + big local model | none — next |
| e.g. nomic-embed → Qwen3-Embedding 8B | auto-detected → one-time full re-index |
Provenance: every indexed chunk is tagged source, generated-reference, or planning, and retrieval surfaces the tag so agents treat planning docs as intent, not ground truth.
This server cannot be deployed
Maintenance
Related MCP Connectors
Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
MCP server for querying Forkast documentation
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceLocal MCP server that provides semantic search (RAG) over code repositories, enabling AI clients like Claude and Gemini to access project context without manual re-upload.-
- AlicenseNot gradedqualityAmaintenanceLocal-first MCP server for querying multi-repo engineering documentation artifacts from a SQLite corpus.7 npmAGPL 3.0
- AlicenseNot gradedqualityDmaintenanceLocal MCP server that indexes folders of documents into a hybrid vector + keyword search index for Claude Desktop, with support for PDFs, Office files, and images via OCR.MIT
- FlicenseAqualityDmaintenanceProvides semantic vector search over local codebases via MCP, enabling hybrid search (dense + sparse + RRF) for any MCP client like GitHub Copilot or Claude Desktop.58-