mcpField
C
code-fundi-mcp

code-fundi-mcp

Local
github.com/Code-FundiDeveloper Tools1Updated 13w ago

About code-fundi-mcp

code-fundi-mcp is an MCP server for the Code-Fundi API, aimed at coding agents and teams that search and analyze codebases. It combines codebase mapping, cross-repository dependencies, and impact analysis to identify files and functions a change may affect.

Key features

  1. 01Semantic and grep code search
  2. 02AI analysis of search results
  3. 03Repository indexing and management
  4. 04Cross-repository dependency mapping
  5. 05Change impact analysis
  6. 06OTP or password authentication

Use cases

  1. 01Find implementations in indexed codebases
  2. 02Analyze search results and related code
  3. 03Understand dependencies across repositories
  4. 04Assess change impact before merging

MCP support

It provides MCP clients with 27 tools for Code-Fundi search, repository management, codebase analysis, file documentation, authentication, and chat.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"felixwaweru-code-fundi": {
"command": "npx",
"args": [
"-y",
"@codefundi/code-fundi-mcp"
]
}
}
}
Run commandnpx -y @codefundi/code-fundi-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@codefundi/code-fundi-mcp0.1.4

Tools

27

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
querystringYesThe search query string
scopeenumNoSearch scope (default: all)all | repos | files | code | functions
fieldsenumNoDocumentation detail level per result (default: full).basic | summary | full
repo_idsarrayNoFilter by repository UUIDs
max_linesintegerNoMaximum file line count
min_linesintegerNoMinimum file line count
repo_urlsarrayNoFilter by repository clone URLs
scan_modeenumNoSearch mode (default: semantic)semantic | grep_docs | grep_code
file_pathsarrayNoFilter by file path patterns
file_typesarrayNoFilter by file extensions (e.g. ['.ts', '.py'])
visibilityenumNoRepository visibility filterprivate | public | all
dependenciesarrayNoFilter by declared dependencies in code summaries
has_functionsbooleanNoOnly return files that define functions
function_namesarrayNoFilter by function names in code summaries
similarity_thresholdnumberNoMinimum similarity score (0-1)

Details

From the project README

Code Fundi

The Codebase Map for AI Agents, Teams and Applications.

Code Fundi

README image README image
README image README image README image

Code-Fundi MCP Server

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.

Getting started for AI agents

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.

Which path to use
SituationAction
CODEFUNDI_API_KEY is set in MCP configUse any tool immediately — the server sends it as X-API-Key on every request
No API key configuredRun the OTP self-auth flow below (recommended) or password sign-in
Zero-config MCP setup (no API key)

You can start the MCP server without CODEFUNDI_API_KEY and authenticate at runtime:

{
  "mcpServers": {
    "code-fundi": {
      "command": "npx",
      "args": ["-y", "@codefundi/code-fundi-mcp"]
    }
  }
}
Self-authenticate with OTP (recommended)

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.

  1. Ask the human user for their email address.
  2. Call code-fundi-auth-authenticate with:
    • auth_mode: "otp"
    • email: the user's email
    • should_create_user: true for a new account, false for a returning user
  3. Tell the user to check their inbox for a 6-digit code. The API may return verification_required: true and api_key.key_state: "agent_pending" until verification completes.
  4. Ask the user for the 6-digit OTP (human-in-the-loop — you cannot guess or bypass this step).
  5. Call code-fundi-auth-verify with the same email and the token (6 digits).
  6. On success, the MCP server automatically configures the API key in memory for all subsequent tool calls in this session.

If the code expired or was not received, call code-fundi-auth-resend with the same email, then repeat step 5.

Example dialogue:

Agent: What email should I use to sign in to Code-Fundi?
User:  [email protected]
Agent: [calls code-fundi-auth-authenticate] I've sent a 6-digit code to [email protected]. Please paste it here.
User:  482913
Agent: [calls code-fundi-auth-verify] You're signed in. I can now search and index your repositories.
Password sign-in (alternative)

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.

After authentication
  • The API key is held in memory for the lifetime of the MCP server process. It is not persisted across IDE or MCP restarts.
  • Recommend the user add the key to their MCP config as CODEFUNDI_API_KEY so future sessions start authenticated.
  • A FREE-tier account and API key are created automatically on first signup.
Errors
HTTP statusWhat to do
401 UnauthorizedNo valid key — run the OTP flow above, or set CODEFUNDI_API_KEY
429 Too many requestsAuth endpoints are rate-limited per IP; wait for Retry-After seconds, then retry

Features

Every tool below is backed by the same codebase map: structural dependencies, call graph, and blast radius, indexed once and queried in milliseconds.

  • 🔍 Semantic & grep code search across your indexed codebase map
  • 🧠 AI-powered research: search plus AI analysis in a single call
  • 📦 Repository management: index, status, README, listing, public catalog
  • 🛰️ Repository intelligence: cross-repo dependency map, blueprint, Blast-Radius Guard (impact analysis before you merge)
  • 📄 File documentation: AI-generated docs for any indexed file
  • 📊 Usage statistics: query usage, activity, language breakdowns
  • 🔐 Agent-driven authentication: sign up/sign in via OTP without pre-configured keys
  • 💬 AI chat & model insight: direct conversation with Code-Fundi AI, model catalog, and per-tier limits

Quick Start

Install from npm (recommended)

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:

npm install -g @codefundi/code-fundi-mcp

Or add it to a project:

npm install @codefundi/code-fundi-mcp
Install from source (this repository)
git clone https://github.com/Code-Fundi/code-fundi-mcp.git
cd code-fundi-mcp
npm install
npm run build
Configure

Option A — API key (fastest): set your key as an environment variable:

export CODEFUNDI_API_KEY=your_api_key_here

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):

{
  "mcpServers": {
    "code-fundi": {
      "command": "npx",
      "args": ["-y", "@codefundi/code-fundi-mcp"]
    }
  }
}
Use with Claude Desktop

After a global install (npm i -g @codefundi/code-fundi-mcp), point MCP at the published binary (no path to dist/index.js required):

{
  "mcpServers": {
    "code-fundi": {
      "command": "@codefundi/code-fundi-mcp",
      "env": {
        "CODEFUNDI_API_KEY": "your_api_key_here"
      }
    }
  }
}

If the binary is not on your PATH, use npx (downloads or uses the local package and runs the same entrypoint):

{
  "mcpServers": {
    "code-fundi": {
      "command": "npx",
      "args": ["-y", "@codefundi/code-fundi-mcp"],
      "env": {
        "CODEFUNDI_API_KEY": "your_api_key_here"
      }
    }
  }
}
Use with Cursor

Same pattern as Claude: command plus optional args only, no manual path to the repo:

{
  "mcpServers": {
    "code-fundi": {
      "command": "npx",
      "args": ["-y", "@codefundi/code-fundi-mcp"],
      "env": {
        "CODEFUNDI_API_KEY": "your_api_key_here"
      }
    }
  }
}

When developing inside this repo, you can run npm run dev or npx tsx src/index.ts without building first.

Development Mode
npm run dev                          # Run with tsx (no build needed)
npx fastmcp inspect src/index.ts    # Open MCP Inspector UI
npx fastmcp dev src/index.ts        # Test with MCP CLI

Tools Reference (27 tools)

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).

Search
ToolDescription
code-fundi-searchSemantic and grep search across your indexed codebase map, with filters
code-fundi-researchSearch plus AI-synthesized analysis of matching code
Repositories
ToolDescription
code-fundi-list-reposList indexed repositories with pagination
code-fundi-index-repoIndex a new GitHub repository into your codebase map
code-fundi-repo-statusCheck repository indexing status
code-fundi-repo-readmeGet repository README documentation (deprecated, prefer blueprint)
code-fundi-list-public-reposBrowse the global catalog of indexed public repositories (no key needed)
Repository Intelligence
ToolDescription
code-fundi-repo-mapCross-repository dependency map: how services and packages actually connect
code-fundi-repo-blueprintREADME plus dependency and convention overview (successor to repo-readme)
code-fundi-repo-radiusBlast-Radius Guard: every file and function that breaks before you merge (PRO+)
Files
ToolDescription
code-fundi-list-filesList files in a repository
code-fundi-file-docsGet AI-generated file documentation
History
ToolDescription
code-fundi-list-historyList query history with filters
code-fundi-history-itemGet full details of a history entry
code-fundi-conversationGet conversation thread messages
Statistics
ToolDescription
code-fundi-usage-statsQuery-type usage breakdown
code-fundi-activity-statsDaily activity statistics
code-fundi-language-statsProgramming language usage
Authentication
ToolDescription
code-fundi-auth-authenticateStart OTP/password auth flow (no key needed)
code-fundi-auth-verifyVerify OTP code and obtain API key
code-fundi-auth-resendResend OTP verification email
code-fundi-list-api-keysList API keys (masked)
code-fundi-regenerate-api-keyRegenerate API key
code-fundi-disable-api-keyDisable an API key by ID (DELETE /v2/keys/{key_id})
Chat & Models
ToolDescription
code-fundi-chatFundi AI chat (POST /v1/fundi/chat; streamed responses are collected to text)
code-fundi-list-modelsList the curated chat model catalog (GET /v2/models)
code-fundi-model-limitsGet AI model limits and tier configuration (GET /v2/models/limits)

Authentication

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.

Environment Variables

VariableRequiredDefaultDescription
CODEFUNDI_API_KEYNo*—API key for authentication
CODEFUNDI_BASE_URLNohttps://api.codefundi.appAPI base URL override

* Required unless using agent-driven auth tools.

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.