
jCodeMunch MCP Server Setup for Claude Code, Cursor and Other Apps
Lets Claude and other coding assistants fetch the exact function they need instead of reading whole files.
jCodeMunch indexes your project once with tree-sitter and lets your assistant look up symbols, callers, dependents and change risk. It runs on your computer, and the index lives in a folder in your home directory. A new install shows a small front door of six tools, with 90 or more behind it. It is free for personal and other non-commercial use. Commercial use needs a paid license, and the license is source-available, not open source.
Good for
- Developers who want Claude to read less and spend fewer tokens on large codebases
- Teams that need impact checks before editing or deleting a function
- Anyone reviewing risky pull requests with call and dependency maps
- Solo and hobby developers who want it free for non-commercial work
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install jCodeMunch MCP
Claude Code
- 1
Copy this prompt.
Add the jCodeMunch MCP server to Claude Code. Run this command: claude mcp add jcodemunch -- uvx jcodemunch-mcp Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires uv (Python).
Built from the package data we hold. Not yet tested by us.
Tools
Indexes a local folder of code
Parses the source files in a folder and stores a symbol index on your machine, skipping files your .gitignore excludes. Run it once per project before asking questions.
Try: “Index this repo with jcodemunch.”
Write ·
index_folderIndexes a public GitHub repository
Fetches the files of a GitHub repository by URL or owner/repo, parses them and saves the index locally. Summaries can use an AI model unless switched off.
Try: “Index the github.com/expressjs/express repo.”
Write ·
index_repoFinds functions, classes and methods by name or meaning
Searches the indexed symbols so the assistant can locate the exact function it needs without reading whole files.
Try: “Find the function that handles authentication.”
Files ·
search_symbolsReturns the exact code of one symbol
Gives the byte-precise body of one function, class or method instead of the full file around it.
Try: “Show me the source of the login handler.”
Files ·
get_symbol_sourceGathers the code a task needs in one call
Works out what the task is about, picks anchor symbols and runs the right lookups under a token budget.
Try: “Gather the context I need to add rate limiting to the API.”
Files ·
assemble_task_contextPlans which lookups to run before reading any code
Routes a turn to the right tools before the first file is opened.
Try: “Plan how to find where sessions expire.”
Files ·
plan_turnLists what imports a file or symbol
Shows which files and symbols depend on a module.
Try: “What imports the billing module?”
Files ·
find_importersShows what could break if you change something
Lists affected files and symbols across indexed repos without an IDE running.
Try: “What is the blast radius of changing parse_config?”
Files ·
get_blast_radiusShows who calls a function and what it calls
Returns the call tree around a function.
Try: “Show the call hierarchy of process_order.”
Files ·
get_call_hierarchyShows a class's parents and children
Returns the inheritance tree around a class.
Try: “Show the class hierarchy for BaseHandler.”
Files ·
get_class_hierarchyFinds code that nothing uses
Lists symbols that appear to have no callers or importers.
Try: “Find dead code in the utils package.”
Files ·
find_dead_codeLists symbols changed in a diff
Reports which functions and classes changed between versions.
Try: “Which symbols changed in the last commit?”
Files ·
get_changed_symbolsFinds the riskiest code to touch
Highlights symbols that stand out for complexity or churn.
Try: “What are the hotspots in this repo?”
Files ·
get_hotspotsFinds code patterns across languages
Matches structural patterns such as empty catch blocks, bare excepts, eval or exec calls and hardcoded secrets across the indexed languages.
Try: “Find every empty catch block.”
Files ·
search_astChecks if a symbol is safe to edit
Combines dependents, complexity and test coverage into a verdict and a recommended next step before you change a symbol.
Try: “Is it safe to edit calculate_tax?”
Files ·
check_edit_safeChecks if a symbol is safe to delete
Reports who would break if the symbol disappeared.
Try: “Can I delete the legacy_export function?”
Files ·
check_delete_safeScores the risk of a pull request
Summarizes how risky a set of changes is.
Try: “How risky is this PR?”
Files ·
get_pr_risk_profilePlans a refactor with edit-ready blocks
Produces a refactoring plan, with old and new text blocks the assistant can apply.
Try: “Plan renaming UserSession to Session.”
Files ·
plan_refactoringShows tokens served and saved this session
Reports how many tokens the session used and saved by retrieving symbols instead of files.
Try: “How many tokens has jcodemunch saved me?”
Read ·
get_session_statsDeletes a repo's saved index
Removes the stored index and cached files for one repository, so the next index call rebuilds it. Your source files are not touched.
Try: “Delete the jcodemunch index for the old-api repo.”
Delete ·
invalidate_cacheLists the available actions
Shows the catalog of actions in compact rows, so the assistant can find the right one without loading every tool.
Try: “What can jcodemunch do?”
Read ·
menuRuns any jcodemunch action by name
The single entry point to the full catalog. It is read-only by default, and actions that change index or session state need an explicit allow flag.
Try: “Order get_ranked_context for how login works.”
Read ·
orderSuggests the best action for a task
Maps a plain-language task to ranked actions with ready-to-use arguments, and can run the top one in the same call.
Try: “Route this task: find where invoices are generated.”
Read ·
routeUsed by the assistant behind the scenes
Shows the assistant how to use the tools
Returns usage instructions the assistant is told to follow.
Try: “Call the jcodemunch guide.”
Read ·
jcodemunch_guideTells the server which AI model is connected
Lets the server tune its tool set to the model in use.
Try: “Announce my model to jcodemunch.”
Write ·
announce_modelSwitches between the small and full tool set
Changes how many tools are exposed, from the six-tool front door to the full catalog.
Try: “Switch jcodemunch to the full tool set.”
Write ·
set_tool_tier
Read from the source code
Permissions
medium risk · 4 things to watch · 2 advisories
Medium risk
It reads your source files and keeps an index of them in a folder in your home directory, and one tool deletes a repository's saved index. It also sends an anonymous savings counter unless you turn that off.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
Commercial use needs a paid license
The license is free for non-commercial use only. Using it for paid work needs a one-time license from jMunch LLC. Read the license before using it at work. github.com
It sends an anonymous savings counter by default
The README says it sends a random ID and token totals, with no code, paths or queries. Set share_savings to false or JCODEMUNCH_SHARE_SAVINGS=0 to stop it. github.com
One tool deletes a repo's saved index
It removes the index and cache for a repository. Your source files are not changed, and the next index call rebuilds it. github.com
The init command edits your client configs
jcodemunch-mcp init writes MCP entries for clients it detects and installs hooks that keep the index fresh. Skip it if you want to edit configs yourself. github.com
Security advisories
2 known advisories, all fixed in a newer version.
- Fixed in 1.108.394: index_dependency accepted path traversal in the package name and copied unfiltered files into its snapshothigh · Fixed in 1.108.394 · GHSA-876x-crhg-hp8h
- Fixed in 1.108.381: two repositories whose names map to the same index slug could replace each other's indexlow · Fixed in 1.108.381 · GHSA-xxx4-frv5-chp2
Technical details
| Turning on read-only | No read-only mode is documented. The order tool is read-only by default and needs an allow flag to change state, but the other tools are not gated. |
|---|---|
| Talks to | Anonymous savings counter, on by default. GitHub, when indexing a GitHub repo. Optional AI model for summaries, if you enable it |
| Sign-in and keys | No account for personal use. A commercial license key goes in ~/.code-index/config.jsonc or the JCODEMUNCH_LICENSE_KEY variable. |
Questions
Is jCodeMunch free?
Free for personal and non-commercial use. Commercial use needs a paid one-time license, from $79 for one developer.
Is it open source?
No. It uses the jCodeMunch-MCP Dual-Use License, which is source-available and not an OSI open-source license. You can read the code, but commercial use is restricted.
Is jCodeMunch official?
No. It is a community project by jgravelle (jMunch LLC), not made by Anthropic, Cursor or any assistant it works with. The code is in jgravelle/jcodemunch-mcp.
How many tools does it have?
94 in the latest PyPI release (1.108.406): the six-tool front door (menu, order, route, jcodemunch_guide, announce_model, set_tool_tier) plus the rest of the catalog behind it. The README says 90 or more, and the list on this page is partial.
Does it send my code anywhere?
The README says code, paths and queries stay on your machine. It sends only an anonymous savings counter, which you can turn off. Indexing a GitHub repo and optional AI summaries use the network.
Why does Claude not use it automatically?
The README says agents used it mainly when asked by name. Add a line to your CLAUDE.md telling Claude to call the jcodemunch guide tool, or say 'use jcodemunch' in your prompt.
Where is the index stored?
In ~/.code-index/ on your machine. Deleting that folder removes it.
Information
updated Nov 2, 2026
- Publisher
- Community
- Package
jcodemunch-mcp- Registry
- PyPI
- Transport
- stdio
- Auth
- None
- Version
- 1.108.402
- License
- LicenseRef-jCodeMunch-Dual-Use-1
- Last commit
- Oct 31, 2026
- Open issues
- 2
- Listed in
- Official MCP registry
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 3Hide
- github.com · github.com
- github.com · github.com
- pypi.org · pypi.org