code-fundi-mcp について
code-fundi-mcpは、Code-Fundi APIを利用するMCPサーバーです。コードベースを検索・分析するコーディングエージェントやチーム向けに、コード構造、リポジトリ間の依存関係、変更の影響範囲を提供します。
主な機能
- 01セマンティック検索とgrep検索
- 02検索結果のAI分析
- 03リポジトリのインデックス作成と管理
- 04リポジトリ間の依存関係マップ
- 05変更影響範囲の分析
- 06OTPまたはパスワード認証
活用シーン
- 01インデックス済みコードベースで実装を検索
- 02検索結果と関連コードを分析
- 03リポジトリ間の依存関係を把握
- 04マージ前に変更の影響を評価
MCP 対応
検索、リポジトリ管理、コードベース分析、ファイル文書、認証、チャットのための27個のツールをMCPクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
27掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| query | string | はい | 検索クエリ文字列 |
| scope | enum | いいえ | 検索範囲(デフォルト:all)all | repos | files | code | functions |
| fields | enum | いいえ | 各結果のドキュメント詳細レベル(デフォルト:full)。basic | summary | full |
| repo_ids | array | いいえ | リポジトリ UUID で絞り込みます |
| max_lines | integer | いいえ | ファイルの最大行数 |
| min_lines | integer | いいえ | ファイルの最小行数 |
| repo_urls | array | いいえ | リポジトリのクローン URL で絞り込みます |
| scan_mode | enum | いいえ | 検索モード(デフォルト:semantic)semantic | grep_docs | grep_code |
| file_paths | array | いいえ | ファイルパスのパターンで絞り込みます |
| file_types | array | いいえ | ファイル拡張子で絞り込みます(例:['.ts', '.py']) |
| visibility | enum | いいえ | リポジトリの公開範囲フィルターprivate | public | all |
| dependencies | array | いいえ | コード概要で宣言された依存関係で絞り込みます |
| has_functions | boolean | いいえ | 関数を定義しているファイルのみを返します |
| function_names | array | いいえ | コード概要に含まれる関数名で絞り込みます |
| similarity_threshold | number | いいえ | 類似度スコアの下限(0-1) |
詳細
Code Fundi
AI エージェント、チーム、アプリケーションのためのコードベースマップ。
Code-Fundi MCP サーバー
Code-Fundi API 用の本番環境対応 Model Context Protocol(MCP) サーバーです。Code-Fundi は、AI コーディングエージェント向けのコードベースマップ兼影響範囲分析エンジンです。MCP 互換のあらゆる AI アシスタント(Claude、Claude Code、Cursor、Windsurf、VS Code Copilot など)が、自然言語を使ってコードリポジトリを検索、調査、インデックス化、スキャンできるほか、変更を反映する前に、その変更がどこに影響するかを確認できます。
FastMCP(TypeScript)と、スキーマ検証用の Zod を使用して構築されています。
AI エージェント向けの利用開始方法
AI エージェントである場合(またはエージェントを設定している場合)、CODEFUNDI_API_KEY が設定されていなければ、検索、リポジトリ、チャット、その他の認証が必要なツールを使う前に、自分で認証する必要があります。認証ツール(code-fundi-auth-*)は、事前にキーを設定しなくても使用できます。
使用する方法
| 状況 | 操作 |
|---|---|
MCP 設定で CODEFUNDI_API_KEY が設定されている | 任意のツールをすぐに使用できます。サーバーはすべてのリクエストでキーを X-API-Key として送信します |
| API キーが設定されていない | 以下のOTP セルフ認証フロー(推奨)またはパスワードでのサインインを実行します |
ゼロ設定の MCP セットアップ(API キーなし)
CODEFUNDI_API_KEY を設定せずに MCP サーバーを起動し、実行時に認証できます。
{
"mcpServers": {
"code-fundi": {
"command": "npx",
"args": ["-y", "@codefundi/code-fundi-mcp"]
}
}
}
OTP でセルフ認証する(推奨)
Code-Fundi は Supabase ベースの認証(POST /v2/auth/authenticate、/v2/auth/verify、/v2/auth/resend)を使用します。OTP メールには6 桁のコードが含まれます。この方式ではマジックリンクはサポートされていません。
- 人間のユーザーにメールアドレスを尋ねます。
code-fundi-auth-authenticateを以下の引数で呼び出します。auth_mode:"otp"email:ユーザーのメールアドレスshould_create_user:新規アカウントの場合はtrue、既存ユーザーの場合はfalse
- ユーザーに受信トレイで 6 桁のコードを確認するよう伝えます。検証が完了するまで、API は
verification_required: trueおよびapi_key.key_state: "agent_pending"を返すことがあります。 - ユーザーに 6 桁の OTP を尋ねます(人間が介在する手順です。この手順を推測したり回避したりすることはできません)。
- 同じ
emailとtoken(6 桁)を指定して、code-fundi-auth-verifyを呼び出します。 - 成功すると、MCP サーバーがこのセッションでの以降のすべてのツール呼び出しに備えて、API キーを自動的にメモリに設定します。
コードの有効期限が切れた場合、または届かなかった場合は、同じ email を指定して code-fundi-auth-resend を呼び出し、手順 5 をもう一度実行します。
対話の例:
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.
パスワードでのサインイン(代替方法)
パスワードを設定済みの既存アカウントでは、auth_mode: "password"、ユーザーの email、should_create_user: false、および password パラメーターを指定して、code-fundi-auth-authenticate を呼び出します。MCP クライアントはパスワードを X-CodeFundi-Auth-Password ヘッダーでのみ送信し、JSON 本文には含めません。本番環境では HTTPS が必要です。既存ユーザーの場合、別途検証手順を実行せずに、有効な API キーがすぐに返されることがあります。
認証後
- API キーは、MCP サーバーのプロセスが実行されている間、メモリ内に保持されます。IDE または MCP を再起動すると引き継がれません。
- 今後のセッションで認証済みの状態から開始できるよう、ユーザーには MCP の設定に
CODEFUNDI_API_KEYとしてキーを追加することをおすすめします。 - 初回登録時に、FREE ティアのアカウントと API キーが自動的に作成されます。
エラー
| HTTP ステータス | 対処方法 |
|---|---|
| 401 Unauthorized | 有効なキーがありません — 上記の OTP フローを実行するか、CODEFUNDI_API_KEY を設定してください |
| 429 Too many requests | 認証エンドポイントには IP ごとのレート制限があります。Retry-After 秒待ってから再試行してください |
機能
以下のすべてのツールは、同じコードベースマップ(構造上の依存関係、呼び出しグラフ、影響範囲)を使用します。マップは一度インデックス化され、ミリ秒単位でクエリできます。
- 🔍 インデックス化されたコードベースマップ全体を対象にしたセマンティック検索と grep 検索
- 🧠 AI によるリサーチ:1 回の呼び出しで検索と AI 分析を実行
- 📦 リポジトリ管理:インデックス化、ステータス、README、一覧、公開カタログ
- 🛰️ リポジトリインテリジェンス:リポジトリ横断の依存関係マップ、ブループリント、Blast-Radius Guard(マージ前の影響分析)
- 📄 ファイルのドキュメント:インデックス化された任意のファイルの AI 生成ドキュメント
- 📊 使用統計:使用状況、アクティビティ、言語別内訳の照会
- 🔐 エージェント主導の認証:事前設定されたキーなしで OTP による登録とサインイン
- 💬 AI チャットとモデル情報:Code-Fundi AI との直接の会話、モデルカタログ、ティアごとの制限
クイックスタート
npm からインストール(推奨)
パッケージをインストールします(ビルド済みの dist/ が含まれます)。グローバルにインストールすると code-fundi-mcp バイナリを PATH から利用でき、リポジトリをクローンしなくても npx から実行できます。
npm install -g @codefundi/code-fundi-mcp
または、プロジェクトに追加します。
npm install @codefundi/code-fundi-mcp
ソースからインストール(このリポジトリ)
git clone https://github.com/Code-Fundi/code-fundi-mcp.git
cd code-fundi-mcp
npm install
npm run build
設定
オプション A — API キー(最速): キーを環境変数として設定します。
export CODEFUNDI_API_KEY=your_api_key_here
オプション B — API キーなし: 環境変数を省略し、実行時にエージェントが自動認証できるようにします。AI エージェント向けの始め方を参照してください。
env ブロックを使わない、設定不要の MCP の例:
{
"mcpServers": {
"code-fundi": {
"command": "npx",
"args": ["-y", "@codefundi/code-fundi-mcp"]
}
}
}
Claude Desktop で使用する
グローバルインストール(npm i -g @codefundi/code-fundi-mcp)の後、公開済みのバイナリを MCP に指定します(dist/index.js へのパスは不要です)。
{
"mcpServers": {
"code-fundi": {
"command": "@codefundi/code-fundi-mcp",
"env": {
"CODEFUNDI_API_KEY": "your_api_key_here"
}
}
}
}
バイナリが PATH にない場合は npx を使用します(パッケージをダウンロードするかローカルのパッケージを使用して、同じエントリーポイントを実行します)。
{
"mcpServers": {
"code-fundi": {
"command": "npx",
"args": ["-y", "@codefundi/code-fundi-mcp"],
"env": {
"CODEFUNDI_API_KEY": "your_api_key_here"
}
}
}
}
Cursor で使用する
Claude と同じパターンで、command と任意の args のみを指定します。リポジトリへの手動のパス指定は不要です。
{
"mcpServers": {
"code-fundi": {
"command": "npx",
"args": ["-y", "@codefundi/code-fundi-mcp"],
"env": {
"CODEFUNDI_API_KEY": "your_api_key_here"
}
}
}
}
このリポジトリ内で開発する場合は、先にビルドせずに npm run dev または npx tsx src/index.ts を実行できます。
開発モード
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
ツールリファレンス(27 個のツール)
コードベースのマッピングと影響範囲分析を行う Code-Fundi V2 API を網羅しています。検索(search-with-chat/リサーチを含む)、リポジトリ(一覧、インデックス化、ステータス、README、公開カタログ)、リポジトリインテリジェンス(マップ、ブループリント、影響範囲)、ファイル、履歴、統計、API キー、認証のほか、Fundi チャット(POST /v1/fundi/chat)と V2 モデルカタログ/制限(GET /v2/models、GET /v2/models/limits)を利用できます。
検索
| ツール | 説明 |
|---|---|
code-fundi-search | フィルターを使って、インデックス化されたコードベースマップ全体をセマンティック検索および grep 検索 |
code-fundi-research | 検索と、該当するコードを AI が統合して生成する分析 |
リポジトリ
| ツール | 説明 |
|---|---|
code-fundi-list-repos | ページネーションを使って、インデックス化されたリポジトリを一覧表示 |
code-fundi-index-repo | 新しい GitHub リポジトリをコードベースマップにインデックス化 |
code-fundi-repo-status | リポジトリのインデックス化ステータスを確認 |
code-fundi-repo-readme | リポジトリの README ドキュメントを取得(非推奨。ブループリントの使用を推奨) |
code-fundi-list-public-repos | インデックス化された公開リポジトリのグローバルカタログを閲覧(キー不要) |
リポジトリのインテリジェンス
| ツール | 説明 |
|---|---|
code-fundi-repo-map | リポジトリ横断の依存関係マップ:サービスとパッケージが実際にどのようにつながっているか |
code-fundi-repo-blueprint | README と依存関係・規約の概要(repo-readme の後継) |
code-fundi-repo-radius | 影響範囲ガード:マージ前に壊れるすべてのファイルと関数を確認します(PRO+) |
ファイル
| ツール | 説明 |
|---|---|
code-fundi-list-files | リポジトリ内のファイルを一覧表示します |
code-fundi-file-docs | AI が生成したファイルのドキュメントを取得します |
履歴
| ツール | 説明 |
|---|---|
code-fundi-list-history | フィルターを指定してクエリ履歴を一覧表示します |
code-fundi-history-item | 履歴エントリーの詳細を取得します |
code-fundi-conversation | 会話スレッドのメッセージを取得します |
統計
| ツール | 説明 |
|---|---|
code-fundi-usage-stats | クエリ種別ごとの利用状況の内訳 |
code-fundi-activity-stats | 日別のアクティビティ統計 |
code-fundi-language-stats | プログラミング言語の利用状況 |
認証
| ツール | 説明 |
|---|---|
code-fundi-auth-authenticate | OTP/パスワード認証フローを開始します(キーは不要) |
code-fundi-auth-verify | OTP コードを検証して API キーを取得します |
code-fundi-auth-resend | OTP 認証メールを再送信します |
code-fundi-list-api-keys | API キーを一覧表示します(マスク済み) |
code-fundi-regenerate-api-key | API キーを再生成します |
code-fundi-disable-api-key | ID を指定して API キーを無効化します(DELETE /v2/keys/{key_id}) |
チャットとモデル
| ツール | 説明 |
|---|---|
code-fundi-chat | Fundi AI チャット(POST /v1/fundi/chat。ストリーミング応答はテキストにまとめられます) |
code-fundi-list-models | 厳選されたチャットモデルカタログを一覧表示します(GET /v2/models) |
code-fundi-model-limits | AI モデルの制限とティア設定を取得します(GET /v2/models/limits) |
認証
2 つの方法があります。事前設定済み API キー(MCP 設定の CODEFUNDI_API_KEY)または実行時のエージェントによる OTP/パスワード認証です。詳しい手順、ツール名、エラー処理については、この README の冒頭にあるAI エージェントのスタートガイドをご覧ください。
環境変数
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
CODEFUNDI_API_KEY | いいえ* | — | 認証用 API キー |
CODEFUNDI_BASE_URL | いいえ | https://api.codefundi.app | API ベース URL の上書き |
* エージェントによる認証ツールを使用する場合を除き、必須です。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。