メインコンテンツへスキップ
MCP は、Devin が数百の外部ツールやデータソースを利用できるようにするオープンなプロトコルです。Devin は 3 つの通信方式(stdio、SSE、HTTP)をサポートしています。

なぜ MCP を使うのか?

MCP を使うと、Devin は次のようなことを行えます:
  • Sentry、Datadog、Vercel のログを掘り下げて調査する
  • データベース MCP を使って、Slack 上で Devin をデータアナリストとして使う
  • SonarQube、CircleCI、Jam の問題を深掘りして調査する
  • Linear のチケット、Notion ドキュメント、Google ドキュメント(Zapier 経由)などを一括で作成する
  • Airtable、Stripe、Hubspot から関連情報を取得し、連携して操作する
  • そのほか、さまざまなことが行えます!

MCP を使い始める

MCP を有効にするには、Settings > MCP Marketplace に移動します。

設定のヒント

OAuth で認証する MCP の場合、アカウントを接続するためにアクセスする URL が Devin によって表示されます。サービスアカウントの使用を強く推奨します。組織内でアクセスが共有されるため、個人アカウントは使用しないでください。
目的の MCP が見つかりませんか?「Add Your Own」オプションを使って設定できます。問題が発生した場合は、サポートページ から、または support@cognition.ai までお問い合わせください。

カスタム MCP サーバーのセットアップ

必要な MCP がマーケットプレイスにない場合、Add Your Own オプションを使って独自の MCP サーバーを追加できます。Devin はカスタムサーバー向けに 3 種類のトランスポート方式をサポートしています:
Transport最適な用途必須フィールド
STDIOローカルの CLI ベースのサーバー(例:npxuvx、Docker)Command、args、環境変数
SSEServer-Sent Events を使用するリモートサーバーServer URL、headers
HTTPStreamable HTTP を使用するリモートサーバーServer URL、headers

手順: カスタム MCP サーバーの追加

  1. Settings > MCP Marketplace に移動します。
  2. ページ上部の Add Your Own をクリックします。
  3. サーバーの詳細を入力します:
    • Server Name: サーバーのわかりやすい名前(例: 「Internal API Gateway」)。
    • Icon(任意): サーバーのアイコンとして使用する絵文字または URL。
    • Short Description: サーバーが何を行うかの簡潔な概要。
  4. transport type(STDIO、SSE、または HTTP)を選択します。
  5. トランスポート種別ごとの設定フィールドに入力します(下記の Configuration format を参照)。
  6. Save をクリックしてサーバーを作成します。
  7. Test listing tools をクリックして接続を検証します。Devin は分離されたテスト環境を立ち上げ、サーバーに接続して利用可能なツールの検出を試行します。
Test listing tools ボタンは、設定を保存するまで無効になっています。検証に失敗した場合は表示されるエラーメッセージを確認してください。接続、認証、タイムアウトのどこに問題があるかが示されます。

設定フォーマット

以下の例では、各トランスポートの設定フィールドを JSON で表現しています。実際には、これらはウェブフォームから入力するだけで済み、JSON を記述したり貼り付けたりする必要はありません。ここでは、分かりやすさのためと、API やプログラムからのセットアップ時の参考として JSON 形式を示しています。

STDIO トランスポート

ローカルプロセスとして動作するサーバーには STDIO を使用します。サーバーを起動するためのコマンドと、それに渡す引数や環境変数を指定します。 フィールド:
  • Command (必須): 実行するコマンド (例: npxuvxdocker)。
  • Arguments: サーバーに渡すコマンドライン引数。
  • Environment Variables: サーバーのプロセス環境に設定されるキーと値のペア。APIキー、トークン、または設定値を渡すために使用します。
例 — npx を使ったカスタム STDIO サーバー:
{
  "transport": "STDIO",
  "command": "npx",
  "args": ["-y", "@example/my-mcp-server"],
  "env_variables": {
    "API_KEY": "your-api-key",
    "API_BASE_URL": "https://internal-api.example.com"
  }
}
例 — Docker を使ったカスタム STDIO サーバー:
{
  "transport": "STDIO",
  "command": "docker",
  "args": ["run", "-i", "--rm", "-e", "DB_CONNECTION_STRING", "my-org/my-mcp-server:latest"],
  "env_variables": {
    "DB_CONNECTION_STRING": "postgresql://user:pass@host:5432/mydb"
  }
}

SSE と HTTP のトランスポート

ネットワーク経由でアクセス可能なリモートサーバーには SSE か HTTP を使用します。新しい統合には HTTP(Streamable HTTP)を推奨します。SSE はレガシーサーバー向けにサポートされています。 フィールド:
  • Server URL(必須): MCP サーバーのエンドポイント URL。
  • Authentication method: NoneAuth HeaderOAuth から選択します。
    • Auth Header の場合: ヘッダー名(デフォルトは Authorization)とヘッダー値(例: Bearer your-token)を指定します。
    • OAuth の場合: Devin は初回セッション中に OAuth フローを完了するよう求めます。
例 — ベアラートークン認証を使うリモート HTTP サーバー:
{
  "transport": "HTTP",
  "url": "https://mcp.internal-service.example.com/mcp",
  "auth_method": "auth_header",
  "headers": {
    "Authorization": "Bearer your-api-token"
  }
}
例 — リモート SSE サーバー(認証なし)の場合:
{
  "transport": "SSE",
  "url": "https://mcp.example.com/sse"
}
SSE と HTTP の選択で迷う場合は、HTTP(Streamable HTTP)を優先してください。SSE はレガシーなプロトコルであり、MCP エコシステム全体で非推奨となっています。

よくあるパターン

内部 API への接続

内部 API を MCP サーバーとして公開すると、Devin から直接クエリできるようになります。STDIO トランスポートを使用し、MCP ツール呼び出しを API リクエストに変換するラッパーを使用してください。
{
  "transport": "STDIO",
  "command": "npx",
  "args": ["-y", "@example/api-mcp-bridge"],
  "env_variables": {
    "API_BASE_URL": "https://api.internal.example.com",
    "API_TOKEN": "your-internal-api-token"
  }
}
また、内部の API にネットワーク経由で到達可能な場合は、HTTP トランスポートを使用してください。
{
  "transport": "HTTP",
  "url": "https://api.internal.example.com/mcp",
  "headers": {
    "Authorization": "Bearer your-internal-api-token"
  }
}

データベースへの接続

データベース MCP サーバーを使用すると、Devin にデータの読み取りや書き込みの権限を付与できます。一般的なデータベース向けには、コミュニティによって運用・保守されているサーバーが多数公開されています。
{
  "transport": "STDIO",
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:password@host:5432/database"]
}
本番データベースでは、読み取り専用 の接続文字列、または権限を制限したデータベースユーザーを使用してください。Devin はユーザーの指示に基づいてクエリを実行するため、アクセス権限の範囲を適切に制御することが重要です。

カスタムツールやスクリプトへの接続

任意の CLI ツールやスクリプトを MCP サーバーとしてラップできます。たとえば、uvx を使った Python ベースのサーバーです:
{
  "transport": "STDIO",
  "command": "uvx",
  "args": ["my-custom-mcp-server"],
  "env_variables": {
    "CONFIG_PATH": "/path/to/config.json"
  }
}
または、実行を分離するための Docker ベースのサーバー:
{
  "transport": "STDIO",
  "command": "docker",
  "args": ["run", "-i", "--rm", "my-org/custom-mcp-server:latest"]
}

シークレットには環境変数を使用する

機密性の高い値は、引数にハードコードするのではなく、環境変数経由で渡してください。Devin の Secrets 機能を使うとこれらの値を管理できます。APIキーやトークンをシークレットとして保存し、MCP サーバーの設定から参照できます。

カスタム MCP サーバーのトラブルシューティング

「Test listing tools」が失敗する

症状想定される原因対処方法
”Verify server URL and network connectivity”サーバーURLに接続できないURLが正しく、インターネット(VPN使用時はDevinのネットワーク)からアクセスできることを確認してください
”Check authentication credentials and permissions”認証情報が無効または不足しているAPIキー、トークン、またはOAuth設定を確認してください
”Server took too long to respond - check server status”サーバーがタイムアウトまでに応答しなかったサーバーが起動していて応答していることを確認し、接続をブロックしているファイアウォールルールがないか確認してください
”MCP server validation failed” (generic)コマンドが見つからない、依存関係の不足、またはサーバーのクラッシュSTDIOサーバーの場合、コマンドが存在してローカルで実行できることを確認し、必要な環境変数がすべて設定されていることを確認してください

サーバーには接続できるがツールが利用できない

  • サーバーが MCP プロトコルの tools/list メソッドを正しく実装しているか確認します。
  • STDIO サーバーの場合、プロセスが stdout に有効な JSON-RPC メッセージを書き出し、stdin から読み取っていることを確認します。stdout へのログやデバッグ出力はプロトコルに違反する原因になります。
  • 環境変数が正しく設定されているか確認します。値が設定されていない場合(例: APIキーが空の場合)、サーバーは起動してもツールの登録に失敗することがあります。

OAuth 認証の問題

  • 認証を求められたら、開いたブラウザウィンドウで OAuth フローを完了してください。Devin はコールバックを待機します。
  • 認証に失敗する場合は、OAuth リダイレクト URI がプロバイダー側で正しく設定されているか確認してください。
  • OAuth ベースの MCP サーバーを認証できるのは、組織の管理者のみです。権限エラーが表示される場合は、所属組織の管理者に連絡してください。
OAuth ベースの MCP を利用する場合は、個人アカウントではなくサービスアカウントを使用してください。アクセスは組織全体で共有され、すべてのメンバーのセッションで同じ認証済み接続が使用されます。

一般的なデバッグのヒント

  • まずはローカルでサーバーを確認する。 カスタムサーバーを Devin に追加する前に、自分のマシンからコマンドを実行するか URL にアクセスして、正しく動作することを確認してください。
  • Devin のセッションログを確認する。 セッション中にサーバーの動作が失敗した場合、Devin はエラーをログに記録します。セッション出力の中から MCP 関連のメッセージを探してください。
  • シンプルに始めて段階的に拡張する。 まずは最小限の構成(例: 認証なし、デフォルト設定)から始めて、基本的な接続が動作することを確認してから、徐々に設定を複雑にしていってください。
  • 環境変数を確認する。 よくある問題は、環境変数が不足している、または名前を間違えているケースです。必要な変数がすべて設定(コンフィグ)で正しく定義されていることを必ず再確認してください。
独自の MCP サーバーを構築する場合は、Model Context Protocol specification に、プロトコル、トランスポート種別、ツール定義に関する詳細なドキュメントがあります。

Marketplace MCPs

以下は、マーケットプレイスで利用可能な各 MCP の設定詳細です。

Vercel、Atlassian、Notion、Sentry、Neon、Asana、Jam など多数

マーケットプレイスにある多くの MCP は、設定不要で1クリックで有効化できます。 「Enable」をクリックするだけです。Devin セッション中、または「Test listing tools」をクリックしたタイミングで、サービスアカウントの接続を求められます。 利用可能な MCP には次のものが含まれます:
  • AlloyDB
  • Asana
  • Atlassian
  • BigQuery
  • Cloud SQL (MySQL)
  • Cloud SQL (PostgreSQL)
  • Cloud SQL (SQL Server)
  • Cloudflare
  • Cortex
  • Dataplex
  • Fireflies
  • Firestore
  • Jam
  • Linear
  • Looker
  • Metabase
  • MySQL
  • Neon
  • Notion
  • PostgreSQL
  • Prisma
  • Sentry
  • Spanner
  • SQL Server
  • Vercel
  • さらに多数!
Linear: Linear integration が接続済みの場合、Devin にはすでに Linear のネイティブツールが含まれているため、Linear MCP を別途設定する必要はありません。

Datadog

2 つの環境変数を設定する必要があります。
  • DATADOG_API_KEY - Datadog の API キー。Datadog の /organization-settings/api-keys ページで確認できます
  • DATADOG_APP_KEY - Datadog のアプリケーションキー。Datadog の /organization-settings/application-keys ページで確認できます
DATADOG_SITE(例: datadoghq.eu)は任意の環境変数です。 ドキュメント

Slack

必要なクレデンシャルを取得するには: Slack bot token:
まず api.slack.com/apps にアクセスし、自分のアプリを選択します。その後:
  • サイドバーで OAuth & Permissions に移動します
  • Bot User OAuth Token(「xoxb-」で始まるはずです)を探します
  • Bot User OAuth Token が表示されない場合は、アプリレベルトークンを設定しているか(Settings > Basic Information)、少なくとも 1 つのスコープを追加しているか(Settings > OAuth & Permissions)、そしてアプリをワークスペースにインストールしているかを確認してください
Slack team ID:
  • 次の curl コマンドを使用します: curl -H "Authorization: Bearer xoxb-your-token" https://slack.com/api/auth.test ここで xoxb-your-token は OAuth トークンに置き換えてください
Slack channel IDs:
  • 次の curl コマンドを使用します: curl -H "Authorization: Bearer xoxb-your-token" https://slack.com/api/conversations.list ここで xoxb-your-token は OAuth トークンに置き換えてください
  • このコマンドを動作させるには、少なくとも次のスコープを追加する必要があります: channels:read,groups:read,mpim:read,im:read
ドキュメント

Supabase

パーソナルアクセストークンを用意する必要があります。https://supabase.com/dashboard/account/tokens で確認および作成できます。 ドキュメント

Figma

この MCP を有効にするには、Figma の API キーを用意する必要があります。
  1. Figma のホーム画面で、左上のプロフィールアイコンをクリックし、ドロップダウンから「Settings」を選択します。
  2. 設定メニューで「Security」タブを選択します。
  3. 「Personal access tokens」セクションまでスクロールし、「Generate new token」をクリックします。
  4. トークン名を入力し、適切な権限が付与されていることを確認します。少なくとも「File content」および「Dev resources」への読み取り権限を付与することを推奨します。
  5. 「Generate token」をクリックします。
この MCP を使用する際は、Devin に Figma ファイルへのリンクを送信してください。 注記: これは Figma によって構築またはメンテナンスされていない、サードパーティ製の MCP 連携です。 Documentation

Stripe

Bearer <TOKEN> という形式の Authorization ヘッダーを指定する必要があります。<TOKEN> には Stripe API キーを設定してください。詳細: https://docs.stripe.com/mcp#bearer-token ドキュメント

Zapier

Bearer &lt;TOKEN&gt; という形式の authorization ヘッダーを指定する必要があります。 https://mcp.zapier.com/mcp/servers > Connect で表示される Server URL から、Bearer トークンを取得する必要があります。 Server URL は次のような形式になります: https://mcp.zapier.com/api/mcp/s/*****/mcp アスタリスクの部分 (*****) を取り出し、指定する authorization ヘッダーで使用します: Bearer *****
Devin
ドキュメント

Airtable

Airtable の API キーを用意する必要があります。API キーは以下のページで取得できます: https://airtable.com/create/tokens ドキュメント

Docker Hub

必要な認証情報:
  • Docker Hub ユーザー名: My Hub から取得できます
  • パーソナルアクセス トークン: Account settings > Personal access tokens に移動し、トークンを作成します
    Devin
ドキュメント

SonarQube

必要な認証情報を取得するには:
  • SonarQube トークン: My Account > Security に移動し、API トークンを生成します
  • SonarQube org: あなたのユーザー名です。下の画像に例が示されています
    Devin
  • SonarQube URL:
ドキュメント

Netlify

Personal Access Token が必要です。https://app.netlify.com/user/applications#personal-access-tokens で表示および作成できます。PAT を作成したらすぐにコピーしてください。二度と表示できません。
Devin
ドキュメント

Pulumi

Pulumi のアクセス トークンは、Pulumi ダッシュボードのサイドバーにある「Access tokens」セクションから取得できます。
Devin
ドキュメント

Parallel

API キーを用意する必要があります。https://platform.parallel.ai/ で作成できます。 ドキュメント

Heroku

API キーを入力する必要があります。https://dashboard.heroku.com/account で確認できます。
Devin
ドキュメント

CircleCI

2 つの環境変数を設定する必要があります:
  • CIRCLECI_TOKEN - CircleCI API トークン。https://app.circleci.com/settings/user/tokens で作成できます。API トークンは作成直後に必ずコピーしてください。一度画面を離れると再表示できません。
Devin
  • CIRCLECI_BASE_URL [オプション] - オンプレミス環境のお客様のみ設定が必要なオプションです。デフォルト値は "https://circleci.com" です。
ドキュメント

Cortex

この MCP を有効にするには、Cortex のパーソナルアクセストークンが必要です。
  1. Cortex インスタンスにログインします。
  2. 左側のメニューから Settings → My access tokens に移動します。
  3. Create new token をクリックします。
  4. トークン名と説明を入力します。
  5. Create token をクリックし、表示されたトークンをコピーします。
この MCP を使用する際は、Devin が正しい Cortex API URL(デフォルトは https://api.getcortexapp.com)で設定されていることを確認してください。 Documentation

Square

Bearer <TOKEN> という形式の認可ヘッダーを指定する必要があります。ここでの <TOKEN> は Square のアクセス トークンです。詳細については https://developer.squareup.com/docs/build-basics/access-tokens を参照してください。 Documentation

Hubspot

環境変数としてアクセストークンを指定する必要があります。アクセストークンを取得するには、次の手順に従います。
  1. HubSpot でプライベートアプリを作成します
  2. 「Settings」>「Integrations」>「Private Apps」へ移動します
  3. 「Create private app」をクリックします
  4. アプリ名を入力し、必要なスコープを設定します
  5. 「Create app」をクリックします
  6. 「Auth」タブから生成されたアクセストークンをコピーします
ドキュメント

Redis

必要な認証情報:
  • Redis ホスト
  • Redis ポート
  • Redis ユーザー名
  • Redis パスワード
ドキュメント

Google マップ

(1) API キーを用意し、(2) Devin にアクセスさせたい各 API を有効化する必要があります。 API キーを取得するには、https://console.cloud.google.com/apis/credentials にアクセスし、サイドバーから APIs and services > Credentials を開きます。 各 API を有効化するには、対象の API を検索して「enable」をクリックします。
Devin
Devin
Devin
ドキュメント

Playwright

このインテグレーションには環境変数は不要です。有効化するだけで利用できます。 ドキュメント

Firecrawl

Firecrawl 用の API キー(FIRECRAWL_API_KEY)を用意する必要があります。https://www.firecrawl.dev/app/api-keys で確認および作成できます。 ドキュメント

ElasticSearch

次の2つの環境変数を設定する必要があります:
  • ES_URL - ElasticSearch の URL またはエンドポイント。Elasticsearch の /overview ページで確認できます。
  • ES_API_KEY - ElasticSearch の API キー。Elasticsearch の /indices/index_details/<name>/data ページで作成できます。
Devin
ES_SSL_SKIP_VERIFY はオプションの環境変数です。true に設定すると、Elasticsearch への接続時に SSL/TLS 証明書の検証をスキップします。 Documentation

Postgres

必要な認証情報は、Postgres接続文字列のみです。 [ドキュメント] (https://www.npmjs.com/package/@modelcontextprotocol/server-postgres?activeTab=readme)

Plaid

必要となる認証情報は、次のコードを実行して取得できる OAuth bearer アクセストークンのみです。
curl -X POST https://production.plaid.com/oauth/token \
-H 'Content-Type: application/json' \
-d '{
"client_id": "YOUR_PLAID_CLIENT_ID",
"client_secret": "YOUR_PRODUCTION_SECRET",
"grant_type": "client_credentials",
"scope": "mcp:dashboard"
}'
クライアント ID と本番用クライアントシークレットを取得するには、https://dashboard.plaid.com/developers/keys にアクセスしてください。 ドキュメント

Replicate

唯一必要な認証情報はAPIトークンで、https://replicate.com/account/api-tokens で確認できます。 ドキュメント

Grafana

次の2つの環境変数を設定する必要があります:
  • Grafana URL
  • Grafana service account token: トークンを取得するには、サイドバーで Administration > Users and access > Service accounts > Add service account(まだ作成していない場合)> Add service account token に移動します
Devin

Pinecone

注意: Pinecone MCP は、組み込みの埋め込み機能を使用するインデックスのみをサポートします。外部の埋め込みモデルで作成したベクトル用のインデックスは、2025/07/16 時点ではまだサポートされていません。 必要な認証情報は Pinecone API キーのみです。これは、以下のように Pinecone ダッシュボードの API Keys ページから取得できます:
Devin

Snyk

  1. まず、MCP サーバーを設定します。ドキュメントはこちらにあります。注意: 最後に環境変数を 1 つ追加してください(ドキュメントには記載されていません)。
    Devin
  2. Devin のマシンに Snyk CLI をインストールします。ドキュメントはこちらにあります。
brew tap snyk/tap
brew install snyk-cli

snyk --disable-trust
注意: 一部の Snyk テストは動作にあたって trust 設定が必要です。Homebrew をインストールした後にマシンへインストールしてください。ドキュメントはこちらにあります。 Tip: 正しく設定されていれば、最初の実行時に Snyk スキャンがすべて実行されます。ただし、フレームワークによっては、一部のスキャンで “unmanaged: true” フラグ(例: C++)を渡す必要があります。現在、この設定は Knowledge 内、または Devin セッション中に行うことができます。以下はその例です:
Devin
Tip: すぐに使い始められるように、サンプル Playbookを用意しています。 ドキュメント