Model Context Protocol (MCP) サーバーは、追加のツールとコンテキストを提供することでdroidの機能を拡張します。Droidでは、簡単なブラウジングとセットアップのためのインタラクティブUIと、スクリプトや自動化のためのCLIコマンドの2つの管理方法を提供しています。Documentation Index
Fetch the complete documentation index at: https://docs.factory.ai/llms.txt
Use this file to discover all available pages before exploring further.
クイックスタート: レジストリから追加
最も簡単に始める方法は、組み込みレジストリを使用することです。droidで/mcpと入力し、**「レジストリから追加」**を選択して40以上の事前設定済みサーバーを参照できます:
| サーバー | 説明 |
|---|---|
| figma | デザインの探索と実装 |
| linear | 課題追跡とプロジェクト管理 |
| sentry | エラー追跡とパフォーマンス監視 |
| notion | ノート、ドキュメント、プロジェクト管理 |
| supabase | Supabaseプロジェクトの作成と管理 |
| stripe | 決済処理API |
| vercel | プロジェクトとデプロイメントの管理 |
| playwright | エンドツーエンドブラウザーテスト |
| hubspot | CRMデータ管理 |
| mongodb | データベース管理 |
| … | その他多数 |
インタラクティブマネージャー(/mcp)
droid内で/mcpと入力すると、インタラクティブMCPマネージャーが開きます。ここから以下のことができます:
- サーバーの参照 - 設定済みのすべてのサーバーとその接続状況を確認
- ツールの表示 - 接続された各サーバーが提供するツールを検査
- 有効化/無効化 - サーバーを削除せずに一時的に無効化
- 認証 - ブラウザー経由でOAuth対応サーバーに接続
- 認証のクリア - サーバーの保存された認証情報を削除
- レジストリから追加 - 人気のあるMCPサーバーをワンクリックセットアップ
- サーバーの削除 - ユーザー設定のサーバーを削除
CLIでサーバーを追加
スクリプトや自動化には、droid mcp addを使用してください。Droidは2種類のサーバーをサポートしています:http(リモートエンドポイント)とstdio(ローカルプロセス)。
HTTPサーバーの追加
HTTPサーバーはリモートMCPエンドポイントで、クラウドサービスやAPIに接続する推奨方法です。 構文:name- 一意のサーバー識別子url- MCPサーバーのHTTP/HTTPS URL--type http- HTTPトランスポートを指定するための必須フラグ--header "KEY: VALUE"- 認証用HTTPヘッダー(複数回使用可能)
人気のHTTP MCPサーバー
開発とテスト
Sentry - エラーの監視、本番環境の問題のデバッグプロジェクト管理とドキュメント
Notion - ドキュメントの読み取り、ページの更新、タスク管理決済と商取引
Stripe - 決済処理とサブスクリプションデザインとメディア
Figma - Figmaコンテキストでコードを生成インフラストラクチャとDevOps
Netlify - ウェブサイトの作成、デプロイ、管理Stdioサーバーの追加
Stdioサーバーはマシン上でローカルプロセスとして実行され、直接システムアクセスが必要なツールに最適です。 構文:name- 一意のサーバー識別子command- サーバーを開始するためのコマンド(スペースが含まれる場合は引用符で囲む)--env KEY=VALUE- 環境変数(複数回使用可能)
人気のStdio MCPサーバー
Airtable - レコードの読み取り/書き込み、ベースとテーブルの管理サーバーの削除
設定からサーバーを削除:サーバーの管理
droid内で/mcpと入力すると、MCPサーバーを管理するためのインタラクティブUIが開きます。
- 設定済みサーバーをステータス付きですべて表示
- 各サーバーが提供するすべてのツールを表示
- OAuth認証が必要なリモートサーバーの認証
- サーバーの追加/削除および有効化/無効化
設定
MCPサーバーの設定は2つのレベルで保存できます:| レベル | 場所 | 目的 |
|---|---|---|
| ユーザー | ~/.factory/mcp.json | 個人のサーバー、すべてのプロジェクトで利用可能 |
| プロジェクト | .factory/mcp.json | チーム共有サーバー、リポジトリにコミット |
レイヤー化の仕組み
ユーザー設定がプロジェクト設定よりも優先されます。両方のレベルで同じサーバーが定義されている場合、ユーザーレベルの設定が優先されます。 重要な動作:- プロジェクト定義のサーバーを有効化/無効化すると、新しい状態でコピーがユーザー設定に保存されます。元のプロジェクト設定は変更されないため、チームメンバーには影響しません。
- プロジェクトサーバーはCLIや
/mcpUI経由では削除できません。削除するには、.factory/mcp.jsonを直接編集してください。 droid mcp addやレジストリ経由で追加したサーバーは、常にユーザー設定に保存されます。
OAuthトークン
OAuthトークンはシステムキーリング(またはフォールバックファイル)にグローバルに保存され、プロジェクトごとではありません。あるプロジェクトでサーバーに認証すると、そのサーバーが設定されているすべての場所で認証されます。 サーバーの認証をクリアするには、/mcpインタラクティブマネージャーを使用し、「認証のクリア」を選択してください。
設定スキーマ
各サーバーエントリには以下が含まれます:| フィールド | 型 | 説明 |
|---|---|---|
type | "stdio" | "http" | サーバータイプ |
disabled | boolean | サーバーを一時的に無効化(デフォルト:false) |
enabledTools | string[] | このサーバーから読み込むツール名の許可リスト。設定されている場合、リストに記載されたツールのみがコンテキストに読み込まれます。 |
disabledTools | string[] | このサーバーから除外するツール名のブロックリスト。無効化されたツールはコンテキストに読み込まれません。 |
timeoutMs | number | MCP ツール呼び出しタイムアウトのサーバーごとの上書き(ミリ秒)。省略時はグローバルデフォルトにフォールバックします。 |
- command: 実行する実行可能ファイル
- args: コマンドライン引数(配列)
- env: 環境変数(オブジェクト)
- url: HTTP/HTTPSエンドポイントURL
- headers: 認証用HTTPヘッダー(オブジェクト)
mcp.jsonの例:
変数展開
Droid は設定の読み込み時に、現在のシェル環境に対してmcp.json 内の ${VAR} および ${VAR:-default} 参照を展開します。これにより、シークレットをファイル自体から切り離し、シークレットマネージャー、.env ローダー、またはシェルプロファイルから取得できます。
変数展開がサポートされる箇所:
- stdio サーバーの
commandおよびargsエントリ - stdio サーバーの
env値 - http サーバーの
url - http サーバーの
headers値
${VAR:-fallback} を使用してください。
生の
mcp.json ファイルが展開後の値で書き換えられることはありません。展開は読み込み時にメモリ内で行われるため、シークレットがディスクやバージョン管理に残ることはありません。ツール単位のフィルタリング
サーバーは多数のツールを公開することがあり、必ずしもすべてをすべてのセッションに読み込む必要はありません。enabledTools と disabledTools を使えば、mcp.json の中でツールの公開範囲を永続的に絞り込めます。これは droid exec の --enabled-tools / --disabled-tools フラグと同等の機能をファイルベースで提供します。
disabledTools:ブロックリスト — サーバーが報告するすべてのツールが読み込まれますが、リストされた名前は除外されます。enabledTools:許可リスト — リストされたツールのみが読み込まれます。- 両方が設定された場合は
enabledToolsが優先され、disabledToolsは無視されます。 - フィルタリングで除外されたツールはモデルに登録されないため、コンテキストトークンを消費しません。
MCP 呼び出しタイムアウト
デフォルトでは、Droid はすべての MCP ツール呼び出しにグローバルタイムアウトを適用します。長時間実行されるツール(大規模なデータエクスポート、ブラウザ自動化、モデルバックエンドのサーバーなど)はこのデフォルトを超えてタイムアウトエラーで失敗することがあります。 サーバーごとにtimeoutMs でタイムアウトを上書きできます:
settings.json の mcp.callTimeoutMs 設定でグローバルデフォルトを変更することもできます:
mcp.json内のサーバーごとのtimeoutMssettings.json内のグローバルmcp.callTimeoutMs- 組み込みデフォルト
タイムアウトを延長しても変わるのは Droid がレスポンスを待つ時間だけで、MCP サーバー自身や上流の API が課すタイムアウトは延長されません。
Enterprise MCP ポリシー
組織は、組織管理設定のmcpPolicy 設定を通じて、許可される MCP サーバーを集中的に制御できます。これにより、管理者は組織レベルで MCP アクセスを制限し、ユーザーが検証済みのサーバーにのみ接続できるようにします。
| フィールド | 型 | 説明 |
|---|---|---|
enabled | boolean | 組織の MCP サポートを有効または無効にします。false の場合、すべての MCP サーバーがブロックされます。 |
allowlist | string[] | ユーザーが有効化を許可されるサーバー名の任意のリスト。設定されている場合、リストにないサーバーはすべてブロックされます。 |
mcpPolicy はエンタープライズ/組織レベルの設定で、管理設定を通じて適用されます。個々のユーザーが上書きすることはできません。ポリシーによってブロックされたサーバーは、/mcp のレジストリブラウザに表示されず、mcp.json からも読み込まれません。