メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://docs.devin.ai/llms.txt

Use this file to discover all available pages before exploring further.

MCP (Model Context Protocol) は、LLM がカスタムツールやサービスにアクセスできるようにするプロトコルです。 MCP クライアント (この場合は Cascade) は、MCPサーバーにリクエストを送信して、そのサーバーが提供するツールにアクセスできます。 Cascade は MCP とネイティブ統合されており、Cascade で利用する MCPサーバーを独自に追加できます。 詳細については、公式の MCP ドキュメントを参照してください。
Enterprise ユーザーは、設定からこれを手動で有効にする必要があります

新しいMCPプラグインの追加

新しいMCPプラグインは、Settings > Tools > Windsurf Settings > Add Server セクションから追加できます。 目的のMCPプラグインが見つからない場合は、View Raw Config ボタンをクリックして生の mcp_config.json ファイルを編集し、手動で追加できます。 MCPサーバーをクリックしたら、+ Add Server をクリックするだけで、そのサーバーとツールをCascadeで利用できるようになります。
Cascade は、MCPサーバー向けに 3 つのトランスポートタイプ (stdioStreamable HTTPSSE) をサポートしています。 また、各トランスポートタイプで OAuth にも対応しています。 http サーバーでは、URL はエンドポイントの URL を反映し、https://<your-server-url>/mcp のような形式にする必要があります。
新しいMCPプラグインを追加したら、必ず更新ボタンを押してください。

mcp_config.json

~/.codeium/mcp_config.json ファイルは、Cascade が接続できるサーバーの一覧が含まれた JSON ファイルです。 以下は設定例で、GitHub 向けに 1 つのサーバーを設定しています。
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_PERSONAL_ACCESS_TOKEN>"
      }
    }
  }
}
利用したいサーバーに必要な引数と環境変数を必ず指定してください。 サーバーの例については、公式の MCP server reference repository または OpenTools を参照してください。

リモート HTTP MCP

リモート HTTP MCP の場合、設定がやや異なり、serverUrl または url フィールドが必要になる点に注意してください。 以下は HTTP サーバーの設定例です。
{
  "mcpServers": {
    "remote-http-mcp": {
      "serverUrl": "<your-server-url>/mcp",
      "headers": {
        "API_KEY": "value"
      }
    }
  }
}

設定の補間

~/.codeium/mcp_config.json ファイルでは、commandargsenvserverUrlurlheaders の各フィールドで環境変数の補間を行います。 以下は、headersAUTH_TOKEN 環境変数を利用する設定例です。
{
  "mcpServers": {
    "remote-http-mcp": {
      "serverUrl": "<your-server-url>/mcp",
      "headers": {
        "API_KEY": "Bearer ${env:AUTH_TOKEN}"
      }
    }
  }
}

管理者向け設定 (Teams & Enterprises)

チーム管理者は、チームのMCPアクセスを切り替えられるほか、チームで利用を許可する承認済みのMCPサーバーを許可リストに追加できます。

MCP チーム設定

チームのMCP設定を管理します。
上記のリンクは、チームの管理者権限がある場合にのみ利用できます。
デフォルトでは、チーム内のユーザーは各自でMCPサーバーを設定できます。ただし、MCPサーバーを1つでも許可リストに追加すると、許可リストに含まれないすべてのサーバーがチームでブロックされます。

サーバーマッチングの仕組み

MCPサーバーを許可リストに追加すると、システムは次のルールに従って正規表現パターンマッチングを利用します。
  • 文字列全体のマッチング: 部分一致を防ぐため、すべてのパターンは自動的にアンカー付きになります (^(?:pattern)$ で囲まれます)
  • Command フィールド: 完全一致するか、指定した正規表現パターンに従って一致する必要があります
  • Arguments 配列: 各引数は、対応するパターンに対して個別にマッチングされます
  • 配列の長さ: 引数の数は、許可リストとユーザー設定で完全に一致している必要があります
  • 特殊文字: $.[]() などの文字は正規表現で特別な意味を持つため、そのまま一致させたい場合は \\ でエスケープする必要があります

設定オプション

Admin Whitelist の設定:
  • Server ID: github-mcp-server
  • Server Config (JSON): (空のまま)
{}
対応するユーザー設定 (mcp_config.json):
{
  "mcpServers": {
    "github-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
これにより、Server ID が Plugin Store のエントリと一致している限り、ユーザーは任意の有効な設定で GitHub MCPサーバーをインストールできます。
Admin Whitelist の設定:
  • Server ID: github-mcp-server
  • Server Config (JSON):
{
  "command": "docker",
  "args": [
    "run",
    "-i",
    "--rm",
    "-e",
    "GITHUB_PERSONAL_ACCESS_TOKEN",
    "ghcr.io/github/github-mcp-server"
  ],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": ""
  }
}
対応するユーザー設定 (mcp_config.json):
{
  "mcpServers": {
    "github-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
ユーザーはこの設定を正確に利用する必要があります。command または args が少しでも異なる場合はブロックされます。env セクションの値は異なっていてもかまいません。
Admin Whitelist の設定:
  • Server ID: python-mcp-server
  • Server Config (JSON):
{
  "command": "python3",
  "args": ["/.*\\.py", "--port", "[0-9]+"]
}
対応するユーザー設定 (mcp_config.json):
{
  "mcpServers": {
    "python-mcp-server": {
      "command": "python3",
      "args": ["/home/user/my_server.py", "--port", "8080"],
      "env": {
        "PYTHONPATH": "/home/user/mcp"
      }
    }
  }
}
この例では、セキュリティを維持しながら柔軟性を持たせることができます。
  • 正規表現 /.*\\.py は、/home/user/my_server.py のような任意の Python ファイルパスにマッチします
  • 正規表現 [0-9]+ は、80803000 のような任意の数値ポートにマッチします
  • admins は Python スクリプトのみが実行されるようにしつつ、ユーザーはファイルパスやポートをカスタマイズできます

一般的な正規表現パターン

パターン一致するもの
.*任意の文字列/home/user/script.py
[0-9]+任意の数字8080, 3000
[a-zA-Z0-9_]+英数字 + アンダースコアapi_key_123
\\$HOME$HOME そのもの$HOME (展開されない)
\\.py.py そのものscript.py
\\[cli\\][cli] そのものmcp[cli]

注記

管理者向け設定ガイドライン

  • 環境変数: env セクションは正規表現マッチングの対象ではなく、ユーザーが自由に設定できます
  • 無効化されたツール: disabledTools 配列は個別に処理され、許可リストのマッチング対象には含まれません
  • 大文字と小文字の区別: すべてのマッチングで大文字と小文字は区別されます
  • エラー処理: 無効な正規表現パターンはログに記録され、アクセスは拒否されます
  • テスト: 正規表現パターンは慎重にテストしてください。制限が厳しすぎるパターンは、正当なユースケースをブロックする可能性があります

トラブルシューティング

許可リストに追加した後で、ユーザーから MCPサーバーが動作しないという報告があった場合:
  1. 厳密な一致を確認: 許可リストのパターンがユーザーの設定と完全に一致していることを確認してください
  2. 正規表現のエスケープを確認: 特殊文字はエスケープが必要な場合があります (例: ピリオドを文字どおりに扱うには \\.)
  3. ログを確認: 無効な正規表現パターンは警告付きでログに記録されます
  4. パターンをテスト: 正規表現テスターを使って、パターンが想定どおりに機能することを確認してください
注意: いずれかのサーバーを許可リストに追加すると、それ以外のすべてのサーバーはチームのメンバーに対して自動的にブロックされます

一般情報

  • MCP ツール呼び出しでは、任意のサーバー実装者が作成したコードが実行される可能性があるため、当社は MCP ツール呼び出しの失敗について責任を負いません。改めて申し上げると:
  • 現在、MCP サーバーのツールリソース、およびプロンプトをサポートしています。