jDocmunch MCP
latest · 1.139.1Section-level doc search for .md, .rst, .adoc, .ipynb, .html, .yaml, .json, and OpenAPI specs.
- GitHub
- jgravelle/jdocmunch-mcp
- PyPI
- jdocmunch-mcp
- MCP registry
- io.github.jgravelle/jdocmunch-mcp
Install
claude mcp add io-github-jgravelle-jdocmunch-mcp -- uvx jdocmunch-mcp/mcp confirms it's connected.
Or add it manually in ~/.cursor/mcp.json:
{
"mcpServers": {
"io-github-jgravelle-jdocmunch-mcp": {
"command": "uvx",
"args": [
"jdocmunch-mcp"
]
}
}
}In claude_desktop_config.json (Settings → Developer → Edit Config), then restart:
{
"mcpServers": {
"io-github-jgravelle-jdocmunch-mcp": {
"command": "uvx",
"args": [
"jdocmunch-mcp"
]
}
}
}Config entry, any MCP client:
{
"command": "uvx",
"args": [
"jdocmunch-mcp"
]
}Community score
from web signals · no reviews yet · 12 mentions · 13 reactions (community v3)
- Mentions (reaction sentiment)100/100 · 20% of the weight
- Web signals (ecosystem baseline)65/100 · 80% of the weight
No reviews yet — be the first.
What the web says
Objective public usage & activity (formula v3) — the community score's web-signals input, and its own sort.
- GitHub stars · 26 days ago
- ★ 204
- Last commit · 26 days ago
- 2 days ago
- Issue close rate · 26 days ago
- 99%
- Release cadence · 26 days ago
- about every 2 days
- Latest release · 26 days ago
- v1.144.0
No package-registry data collected yet.
- Glama · 9 days ago
- Listed · Glama quality score 3.9 ↗
Quotes12
- `index-local` CLI silently discards a stored corpus selection it has no flag to express: a plain re-index re-admits files that `extra_ignore_patterns` had excluded ↗
index-local CLI silently discards a stored corpus selection it has no flag to express: a plain re-index re-admits files that extra_ignore_patterns had excluded Summary The MCP index_local tool accepts extra_ignore_patterns; the jdocmunch-mc…
- Offline embeddings without PyTorch — a FastEmbed/ONNX provider (856 MB → 184 MB, identical vectors) ↗
sentence-transformers is currently the only offline embedding provider, and it drags PyTorch in with it. On one real install that is 730 MB of an 856 MB venv — torch 506, scipy 82, transformers 59, sklearn 34, numpy 26, tokenizers 9, senten…
- `watch-install` cannot pass `--no-ai-summaries` to the watcher it installs, and re-running it silently reverts a hand-edited ExecStart ↗
Summary watch-install cannot express the flags that watch accepts, and _install_systemd() rewrites the unit on every run — so there is no supported way to run the doc watcher as a login service with AI summaries off. watch --no-ai-summaries…
- watch bypasses the source root's .gitignore for changed documentation files ↗
The one thing that is wrong After a full index excludes a documentation file through the source root's .gitignore, jdocmunch-mcp watch can add that file when it changes. Reproduction Use two PowerShell sessions and new fixture and storage p…
- Embedding provider is initialized eagerly at MCP startup: ~7.6 s added to every server start, and an uncached model pushes the handshake past the client's 30 s timeout ↗
Embedding provider is initialized eagerly at MCP startup: ~7.6 s added to every server start, and an uncached model pushes the handshake past the client's 30 s timeout Summary jdocmunch-mcp serve initializes the sentence-transformers embedd…
- No local/self-hosted summarizer target: every valid summarizer provider is remote cloud, so private corpora cannot have AI summaries at all ↗
No local/self-hosted summarizer target: every valid summarizer provider is remote cloud, so private corpora cannot have AI summaries at all Summary JDOCMUNCH_SUMMARIZER_PROVIDER accepts only cloud providers. There is no openai-compatible / …
- Embed input is hard-capped at 1000 chars: 41% of a 778k-token corpus never reaches the model, and larger-context models cannot be exercised ↗
Embed input is hard-capped at 1000 chars: 41% of a 778k-token corpus never reaches the model, and larger-context models cannot be exercised Summary _section_embed_text truncates section content to a hardcoded 1000 characters before embeddin…
- Embedding-model rotation with no source changes leaves the index unqueryable: incremental `index_local` reports success, keeps the old vectors, and every subsequent search fails with a 768-vs-384 matmul error ↗
Embedding-model rotation with no source changes leaves the index unqueryable: incremental index_local reports success, keeps the old vectors, and every subsequent search fails with a 768-vs-384 matmul error Summary Changing the embedding mo…
- Default semantic_weight=0.5 measures worse than disabling semantic search on a 5.3k-section corpus (0/15 paraphrase queries); 0.85 fixes it with no keyword cost ↗
Summary On a 5,315-section Markdown corpus, the stock semantic_weight = 0.5 measured worse than disabling semantic search entirely for paraphrased queries: 0/15 answered in the top 5, versus 1/15 for pure BM25. Raising it to the SEMANTIC_WE…
- Incremental index_local destroys the embedding cache for untouched sections (5316 vectors -> 21); embed_sections rewrites the sidecar from only the sections it was handed ↗
Summary An incremental index_local refresh destroys the embedding cache for every section it did not itself materialize. embed_sections rewrites the whole sidecar from the sections it was handed, and on an incremental refresh that is only t…
- tokens_saved / total_tokens_saved silently stuck at 0 for search_sections, get_toc, get_document_outline, get_toc_tree — raw-size baseline reads a field that's never populated on a persisted index ↗
Environment jdocmunch-mcp v1.144.0 (current latest on PyPI as of 2026-09-24, uploaded 2026-09-22 — this is not a stale-version issue) Confirmed the installed package is byte-for-byte identical to the official PyPI wheel for 1.144.0 (diffed …
- Incremental index_local costs ~30 s whatever the change size: the embeddings sidecar is parsed 4x and rewritten whole (1.143.0) ↗
An incremental index_local run on a mid-size corpus spends about 30 s on work that does not depend on how many files changed. The run in the profile below re-indexed 1 changed + 2 new files out of 3,771 and still took 34.5 s under cProfile.…
- Namespace · 23 days ago
- Registry-verified
- Listing completeness · 23 days ago
- 100%
Version history1
- 1.139.12026-09-01
Details
- Transport
- stdio
- Status
- listed
- Source
- Imported from the MCP registry
- Repository
- source ↗