About io.github.Jhackman2019/codebase-context-mcp
io.github.Jhackman2019/codebase-context-mcp is an MCP server published by Jhackman2019 in the Blockchain category: codebase indexing and search via WASM tree-sitter. Works on ARM64 and x86_64.
Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
claude mcp add io-github-jhackman2019-codebase-context-mcp -- npx -y codebase-context-mcpnpx -y codebase-context-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (5)
get_file_outlineFile structure: functions, classes, imports, exports with line numbers
Parameters not published.
get_project_summaryTech stack, file counts by language, directory structure
Parameters not published.
index_codebaseParse a directory into symbols/chunks, cache as JSON
Parameters not published.
search_codeBM25 full-text search across indexed files
Parameters not published.
search_symbolsFind functions, classes, types by name or pattern
Parameters not published.
Ask AI
Ask AI about io.github.Jhackman2019/codebase-context-mcp
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
codebase-context-mcp
MCP server for codebase indexing and search that works on every platform — including ARM64 devices like Raspberry Pi and Apple Silicon where most alternatives fail.
The Problem
Popular codebase-indexing MCP servers like @zilliz/claude-context-mcp depend on native C++ bindings (tree-sitter, faiss-node) that ship pre-built binaries only for x86_64. If you're on ARM64 — a Raspberry Pi, Apple Silicon Mac, AWS Graviton, or any other arm64 host — npm install fails with missing prebuilts and no fallback. There's no workaround short of cross-compiling the native modules yourself.
The Solution
This package replaces every native dependency with a WASM equivalent. The tree-sitter parser runs as WebAssembly, search uses a pure-JS BM25 implementation, and the index is stored as plain JSON. Zero native bindings means npm install succeeds on the first try on any architecture: ARM64, x86_64, macOS, Linux, Windows.
Drop-in compatible — provides the same core tools (index, search, outline, summary) via the standard MCP stdio transport.
Tools
| Tool | Description |
|---|---|
index_codebase |
Parse a directory into symbols/chunks, cache as JSON |
search_symbols |
Find functions, classes, types by name or pattern |
search_code |
BM25 full-text search across indexed files |
get_file_outline |
File structure: functions, classes, imports, exports with line numbers |
get_project_summary |
Tech stack, file counts by language, directory structure |
Supported Languages
TypeScript, TSX, JavaScript, Python, C#, VB.NET, XML, CSS, JSON
Install
Claude Code (recommended)
claude mcp add codebase-context -s user -- npx codebase-context-mcp
Or from a local clone:
git clone https://github.com/Jhackman2019/codebase-context-mcp.git
cd codebase-context-mcp
npm install && npm run build
claude mcp add codebase-context -s user -- node /path/to/codebase-context-mcp/dist/index.js
MCP Settings (JSON)
{
"mcpServers": {
"codebase-context": {
"command": "npx",
"args": ["codebase-context-mcp"]
}
}
}
How It Works
- Parsing:
web-tree-sitter(WASM) — same AST quality as native tree-sitter, runs on any architecture - Search: BM25 text ranking (pure JS) + symbol name matching
- Storage: JSON file index at
~/.codebase-context-mcp/<project-hash>.json - Transport: MCP stdio via
@modelcontextprotocol/sdk - Incremental: Files with unchanged content hash are skipped on re-index
Safety Limits
| Limit | Value |
|---|---|
| Max files | 20,000 |
| Max file size | 512KB |
| Default ignores | node_modules, .git, dist, build, .venv, binaries, lock files |
| .gitignore | Respected (root level) |
Development
npm install
npm run build # Build with tsup
npm run dev # Watch mode
npm start # Run the server
License
MIT
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.