The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Code Fundi MCP listing page.
The Codebase Map for AI Agents, Teams and Applications.
A production-grade Model Context Protocol (MCP) server for the Code-Fundi API: a codebase map and blast-radius engine for AI coding agents. Enables any MCP-compatible AI assistant (Claude, Claude Code, Cursor, Windsurf, VS Code Copilot, and more) to search, research, index, and scan code repositories through natural language, and see what a change breaks before it ships.
Built with FastMCP (TypeScript) and Zod for schema validation.
If you are an AI agent (or configuring one) and no CODEFUNDI_API_KEY is set, you must self-authenticate before using search, repos, chat, or other authenticated tools. The auth tools (code-fundi-auth-*) work without a pre-existing key.
| Situation | Action |
|---|---|
CODEFUNDI_API_KEY is set in MCP config | Use any tool immediately — the server sends it as X-API-Key on every request |
| No API key configured | Run the OTP self-auth flow below (recommended) or password sign-in |
You can start the MCP server without CODEFUNDI_API_KEY and authenticate at runtime:
Code-Fundi uses Supabase-backed auth (POST /v2/auth/authenticate, /v2/auth/verify, /v2/auth/resend). OTP emails contain a 6-digit code — magic links are not supported on this path.
code-fundi-auth-authenticate with:
auth_mode: "otp"email: the user's emailshould_create_user: true for a new account, false for a returning userverification_required: true and api_key.key_state: "agent_pending" until verification completes.code-fundi-auth-verify with the same email and the token (6 digits).If the code expired or was not received, call code-fundi-auth-resend with the same email, then repeat step 5.
Example dialogue:
For existing accounts with a password, call code-fundi-auth-authenticate with auth_mode: "password", the user's email, should_create_user: false, and the password parameter. The MCP client sends the password only in the X-CodeFundi-Auth-Password header (never in the JSON body). Production requires HTTPS. Returning users may receive an active API key immediately without a separate verify step.
CODEFUNDI_API_KEY so future sessions start authenticated.| HTTP status | What to do |
|---|---|
| 401 Unauthorized | No valid key — run the OTP flow above, or set CODEFUNDI_API_KEY |
| 429 Too many requests | Auth endpoints are rate-limited per IP; wait for Retry-After seconds, then retry |
Every tool below is backed by the same codebase map: structural dependencies, call graph, and blast radius, indexed once and queried in milliseconds.
Install the package (includes a pre-built dist/). The code-fundi-mcp binary is on your PATH when installed globally, or available via npx without cloning the repo:
Or add it to a project:
Option A — API key (fastest): set your key as an environment variable:
Option B — no API key: skip the env var and let the agent self-authenticate at runtime. See Getting started for AI agents.
Zero-config MCP example (no env block):
After a global install (npm i -g @codefundi/code-fundi-mcp), point MCP at the published binary (no path to dist/index.js required):
If the binary is not on your PATH, use npx (downloads or uses the local package and runs the same entrypoint):
Same pattern as Claude: command plus optional args only, no manual path to the repo:
When developing inside this repo, you can run npm run dev or npx tsx src/index.ts without building first.
Covers the Code-Fundi V2 API for codebase mapping and blast-radius analysis: search (including search-with-chat / research), repositories (list, index, status, readme, public catalog), repository intelligence (map, blueprint, radius), files, history, statistics, API keys, authentication, plus Fundi chat (POST /v1/fundi/chat) and the V2 model catalog / limits (GET /v2/models, GET /v2/models/limits).
| Tool | Description |
|---|---|
code-fundi-search | Semantic and grep search across your indexed codebase map, with filters |
code-fundi-research | Search plus AI-synthesized analysis of matching code |
| Tool | Description |
|---|---|
code-fundi-list-repos | List indexed repositories with pagination |
code-fundi-index-repo | Index a new GitHub repository into your codebase map |
code-fundi-repo-status | Check repository indexing status |
code-fundi-repo-readme | Get repository README documentation (deprecated, prefer blueprint) |
code-fundi-list-public-repos | Browse the global catalog of indexed public repositories (no key needed) |
| Tool | Description |
|---|---|
code-fundi-repo-map | Cross-repository dependency map: how services and packages actually connect |
code-fundi-repo-blueprint | README plus dependency and convention overview (successor to repo-readme) |
code-fundi-repo-radius | Blast-Radius Guard: every file and function that breaks before you merge (PRO+) |
| Tool | Description |
|---|---|
code-fundi-list-files | List files in a repository |
code-fundi-file-docs | Get AI-generated file documentation |
| Tool | Description |
|---|---|
code-fundi-list-history | List query history with filters |
code-fundi-history-item | Get full details of a history entry |
code-fundi-conversation | Get conversation thread messages |
| Tool | Description |
|---|---|
code-fundi-usage-stats | Query-type usage breakdown |
code-fundi-activity-stats | Daily activity statistics |
code-fundi-language-stats | Programming language usage |
| Tool | Description |
|---|---|
code-fundi-auth-authenticate | Start OTP/password auth flow (no key needed) |
code-fundi-auth-verify | Verify OTP code and obtain API key |
code-fundi-auth-resend | Resend OTP verification email |
code-fundi-list-api-keys | List API keys (masked) |
code-fundi-regenerate-api-key | Regenerate API key |
code-fundi-disable-api-key | Disable an API key by ID (DELETE /v2/keys/{key_id}) |
| Tool | Description |
|---|---|
code-fundi-chat | Fundi AI chat (POST /v1/fundi/chat; streamed responses are collected to text) |
code-fundi-list-models | List the curated chat model catalog (GET /v2/models) |
code-fundi-model-limits | Get AI model limits and tier configuration (GET /v2/models/limits) |
Two modes: pre-configured API key (CODEFUNDI_API_KEY in MCP config) or agent-driven OTP/password auth at runtime. Full step-by-step instructions, tool names, and error handling are in Getting started for AI agents at the top of this README.
| Variable | Required | Default | Description |
|---|---|---|---|
CODEFUNDI_API_KEY | No* | — | API key for authentication |
CODEFUNDI_BASE_URL | No | https://api.codefundi.app | API base URL override |
* Required unless using agent-driven auth tools.
MIT