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

Documentation Index

Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt

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

MCPサーバーの追加

コマンドラインから

MCP サーバーを追加する最も簡単な方法:
# stdioサーバー — --の後にコマンドを渡す
devin mcp add <name> -- <command> [args...]

# HTTPサーバー — URLを位置引数として渡す
devin mcp add <name> <URL>

# HTTPサーバー — または--urlフラグを利用する
devin mcp add <name> --url <URL>
トランスポートの種類は自動的に推定されます。URL は HTTP (Streamable HTTP) を示し、末尾の引数 (または --command) は stdio を示します。
リモートの MCP サーバーはデフォルトで Streamable HTTP を利用します。サーバーが HTTP 4xx エラーを返した場合、CLI は同じ URL で SSE にフォールバックします。必要に応じて "transport": "sse" を明示的に設定してください — 詳しくは下記の レガシー SSE フォールバック を参照してください。
デフォルトでは、サーバーは local スコープ (.devin/config.local.json、gitignored) に保存されます。変更するには -s/--scope を利用してください:
devin mcp add -s project <name> <URL>   # .devin/config.json で共有
devin mcp add -s user <name> <URL>      # グローバル (~/.config/devin/config.json; Windows では %APPDATA%\devin\config.json)
コマンドラインからもサーバーを管理できます:
devin mcp list              # 設定済みのサーバーをすべて一覧表示する
devin mcp get <name>        # 特定のサーバーの詳細を表示する
devin mcp remove <name>     # 設定済みのサーバーを削除する
devin mcp login <name>      # OAuth経由でサーバーに認証する
devin mcp logout <name>     # 保存済みのOAuth認証情報を削除する

設定ファイルを使う

サーバーを設定ファイルの mcpServers セクションに直接追加します。
// .devin/config.json
{
  "mcpServers": {
    "server-name": {
      "command": "npx",
      "args": ["-y", "@company/mcp-server"],
      "env": {
        "API_KEY": "your-key"
      }
    }
  }
}
プロジェクトレベルのサーバーは、バージョン管理を通じてチームで共有されます。

サーバーの設定オプション

MCPサーバーは、ローカルコマンド (stdio トランスポート) またはリモートサーバー (HTTP トランスポート) のいずれかの方法で設定できます。

ローカルコマンド (stdio)

フィールド必須説明
commandstringはい実行する実行ファイル
argsstring[]いいえコマンドライン引数
envobjectいいえ設定する環境変数

リモートサーバー (Streamable HTTP)

FieldTypeRequiredDescription
urlstringYesMCPサーバーのエンドポイント URL
transportstringNo"http" (Streamable HTTP。URL ベースのサーバーのデフォルト) または "sse" (レガシー SSE) 。"http" に設定するか省略すると、CLI はまず Streamable HTTP を試し、4xx エラーが発生した場合は SSE にフォールバックします (spec に従って) 。サーバーの SSE エンドポイントが別のパスにある場合は、"sse" を明示的に設定してください。
headersobjectNoリクエストに含めるカスタム HTTP ヘッダー

使用例

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_..."
      }
    }
  }
}
{
  "mcpServers": {
    "notion": {
      "url": "https://mcp.notion.com/mcp",
      "transport": "http"
    }
  }
}
OAuth ベースのサーバーを追加したら、devin mcp login notion を実行して認証します。詳細は下記の認証をご覧ください。
{
  "mcpServers": {
    "linear": {
      "url": "https://mcp.linear.app/mcp",
      "transport": "http"
    }
  }
}
{
  "mcpServers": {
    "atlassian": {
      "url": "https://mcp.atlassian.com/v1/mcp",
      "transport": "http"
    }
  }
}
追加後、devin mcp login atlassian を実行して認証します。各 MCP クライアント (Windsurf、Claude Code、Devin CLI) はそれぞれ独自の OAuth セッションを保持するため、別のツールですでに認証済みでも、個別にログインする必要があります。
{
  "mcpServers": {
    "my-tools": {
      "command": "python",
      "args": ["./scripts/mcp-server.py"],
      "env": {
        "DB_URL": "postgres://localhost/mydb"
      }
    }
  }
}

認証

一部のリモートMCPサーバーでは、OAuth認証が必要です。OAuth対応のサーバーを設定に追加したら、login コマンドを使って認証してください。
devin mcp login <server-name>
たとえば、
devin mcp login notion    # Notionで認証する
devin mcp login linear    # Linearで認証する
アクセスを承認するためのブラウザウィンドウが開きます。OAuthトークンはローカルに保存され、自動的に更新されます。 必要に応じて、特定のOAuthスコープをリクエストすることもできます:
devin mcp login notion --scopes read,write
サーバーに保存済みのOAuth認証情報を削除するには:
devin mcp logout <server-name>
サーバーがOAuthに対応している場合は、そのサーバーを初めて利用する際にも、自動的に認証を求められます。

シークレットの管理

APIキーやシークレットをバージョン管理にコミットしないでください。機密性の高い値には .devin/config.local.json を利用してください。
チームでのプロジェクトでは、次のパターンを推奨します。
  1. .devin/config.json で、env var はプレースホルダーにするか未設定のまま サーバー を定義する
  2. 各チームメンバーが .devin/config.local.json に個人用のキーを追加する
ローカル設定ファイルは自動的に git の対象外になります。

MCPの権限

権限設定で、特定のMCPツールを事前承認したり、拒否したり、都度確認を必須にしたりできます。
{
  "permissions": {
    "allow": [
      "mcp__github__list_issues",
      "mcp__github__create_issue"
    ],
    "deny": [
      "mcp__github__delete_repo"
    ],
    "ask": [
      "mcp__linear__*"
    ]
  }
}
権限マッチャーのパターン:
パターン一致対象
mcp__server__tool特定のサーバー上の特定のツール
mcp__server__*特定のサーバー上のすべてのツール
mcp__*すべてのサーバー上のすべてのMCPツール

トラブルシューティング

リモート MCP サーバーへの接続時に Auth requiredAuthRequired のようなエラーが表示される場合、そのサーバーでは OAuth 認証が必要です。実行:
devin mcp login <server-name>
MCP クライアントごとに認証は個別に行われます。Windsurf や Claude Code ですでに認証済みでも、Devin CLI では別途 devin mcp login を実行する必要があります。認証状態を確認するには、認証情報をいったん削除してから再度追加してみてください:
devin mcp logout <server-name>
devin mcp login <server-name>
Devin CLI の外部でコマンドが動作することを確認してください:
npx -y @modelcontextprotocol/server-github
必要な環境変数がすべて設定されていることを確認してください。
エージェントに MCP サーバーとツールを一覧表示するよう依頼してください。サーバーの初期化に少し時間がかかる場合があります。
権限設定を確認してください。MCP ツールはデフォルトで承認を求めるようになっています。自動承認するには permissions.allow に追加してください。
HTTP サーバーに接続すると、Devin CLI はまず Streamable HTTP を試します。サーバーが HTTP 4xx エラー (例: 404 または 405) を返した場合、自動的に同じ設定済み URLレガシー SSE にフォールバックします。これは MCP spec の後方互換性ガイダンス に従った動作です。このフォールバックがトリガーされるのは 4xx レスポンスの場合のみです。接続エラー、タイムアウト、5xx レスポンスでは SSE を試行せず、そのままエラーとして報告されます。サーバーの SSE エンドポイントが別のパス (例: /mcp ではなく /sse) にある場合は、SSE URL とともに "transport": "sse" を設定すると、Streamable HTTP を試さずに直接接続できます。両方のトランスポートが失敗した場合、トラブルシューティングに役立つよう、エラーメッセージには両方の試行の詳細が含まれます。