MCP 設定ガイド
OpenCode MCP 設定ガイド:ローカル・リモートサーバーを接続する7手順
実用上の結論は、OpenCode 設定の mcp 配下にサーバーごとの一意な名前を置き、PC 上で動くプロセスには local、HTTP エンドポイントには remote を指定し、Agent に使わせる前に opencode mcp list を実行することです。最初は用途が狭いサーバーを1つだけ有効にしてください。MCP を増やすほどツール説明が増え、コンテキストを消費します。
- 主要キーワード
- opencode mcp
- 更新
- 2026年7月11日に公式ドキュメントで確認
- 読了
- 約16分
要点
OpenCode MCP
このページは MCP の追加、認証、検証、制限、トラブル対策という独立した検索意図を扱います。一般的なインストール、Ollama、セッション保存先は既存ページに分け、キーワードの競合を避けます。
例は現行の公式 schema と CLI に基づきます。ただし提供者は URL、パッケージ、scope、認証方式を変更できます。チームへ導入する前に必ず所有者の公式資料で確認し、出所不明のコマンドを機密リポジトリで実行しないでください。

1. ローカルかリモートかを選ぶ
ローカルサーバーは OpenCode が起動する子プロセスです。信頼できる CLI パッケージやローカルファイルが必要なツールに向きます。安定性は runtime、package manager、作業ディレクトリ、環境変数、OS 権限に左右されます。
リモートサーバーは HTTP エンドポイントです。ドキュメント検索、監視、共有データベースには便利ですが、ネットワークと認証が障害点になります。好みではなく提供者が正式に対応する方式を選びます。
| 判断 | ローカル MCP | リモート MCP |
|---|---|---|
| 実行場所 | PC 上のプロセス | ホストされた URL |
| 必須項目 | type と command | type と URL |
| 認証 | 環境変数 | OAuth または header |
| 主な障害 | runtime、PATH、process | DNS、TLS、401、timeout |
| 最初の用途 | 狭いローカルツール | 公式ホスト連携 |
2. 設定ファイルの場所を決める
OpenCode は設定元をマージします。複数プロジェクト共通のツールはグローバル設定、リポジトリ固有のツールは opencode.json に置きます。秘密値は環境変数か OAuth に置き、Git へ入れません。
サーバー名は安定した説明的なものにします。その名前は prompt、tool prefix、Agent ごとのルールで使われます。任意サーバーは enabled: false にすると、説明を残しつつ常時読み込みを避けられます。
3. ローカルサーバーを安全に追加
ローカル項目には type: "local" と command 配列が必要です。公開者とソースを確認し、安定性が必要ならバージョンを固定し、機密情報のない場所で先に試します。
token は environment と環境変数置換で渡します。最初は読み取り専用の開発アカウントに限定します。モデルが慎重でも、ツールは token が持つ権限を実行できます。
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"docs_search": {
"type": "local",
"command": ["npx", "-y", "trusted-mcp-package"],
"enabled": true,
"environment": { "MCP_TOKEN": "{env:MCP_TOKEN}" }
}
}
}プレースホルダーはサーバー所有者の公式コマンドだけに置き換えてください。
4. リモートと OAuth を接続
リモート項目には type: "remote" と HTTPS URL が必要です。headers は提供者の指示がある場合だけ使います。OAuth は自動開始でき、opencode mcp auth <server-name> で明示的にも開始できます。
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"monitoring": {
"type": "remote",
"url": "https://provider.example/mcp",
"oauth": {}
}
}
}
5. 書き込み前に検証
まず opencode mcp list で状態を確認し、接続や OAuth は opencode mcp debug <server-name> で診断します。その後、読み取り専用の問い合わせを実行し、元システムと結果を比較します。
サーバー名、パッケージまたは URL、runtime、認証、prefix、テスト prompt、timeout、rollback を記録します。これで個人の実験が他の開発者にも再現可能になります。
- 提供者を確認公式 package、endpoint、認証を使う。
- 範囲を選択global、project、専門 Agent。
- 1件だけ追加新しい server は一度に1つ。
- 秘密値を保護環境変数か OAuth。Git には入れない。
- 一覧と debug状態、接続、OAuth を確認。
- 読み取りテスト結果を元システムと比較。
- 書き込みを許可log、diff、rollback 確認後。
opencode mcp list
opencode mcp auth <server-name>
opencode mcp debug <server-name>
opencode mcp logout <server-name>6. コンテキストと権限を制限
ツール説明はコンテキストを消費します。広すぎるサーバーは無効にし、専門 Agent だけで有効にします。導入前後の回答品質と token 使用量を比較してください。
ログや認証情報を共有する前に OpenCode セッション保存とプライバシーガイド を確認し、MCP を小さなコンテキストのローカルモデルと使う場合は OpenCode Ollama ガイド も参照してください。
7. 障害層を切り分ける
障害はプロセスまたは endpoint、認証、OpenCode の discovery、最後に prompt や policy の順で分けます。複数層を同時に変えると原因と rollback が不明になります。
| 症状 | 想定される層 | 最初の確認 |
|---|---|---|
| 実行ファイルなし | ローカル runtime | PATH、manager、command |
| すぐ終了 | ローカル process | 直接実行して stderr |
| 401・ループ | 認証 | URL、OAuth、scope、時刻 |
| tool がない | 設定 | 解決後 config と enabled |
| timeout | ネットワーク | DNS、TLS、proxy、health |
| Agent が無視 | prompt・policy | prefix と rules |
| 文脈品質低下 | tool 過多 | 広い server を無効化 |
用途:Figma、Supabase、文書、監視
Figma や Supabase は、まず提供者の公式導入手順に従い、その後この共通チェックを適用します。汎用 JSON はプロジェクト、region、権限の違いを見落としがちです。
インストールの基本は OpenCode 導入ガイド. へ戻り、公式の優先順位と MCP オプションは下記資料で確認してください。
よくある質問
OpenCode に MCP を追加する方法は?
mcp 配下に一意な項目を追加し、ローカル command またはリモート URL を指定し、環境変数か OAuth で認証して opencode mcp list で確認します。
設定ファイルはどこですか?
共通ツールはグローバル、プロジェクト固有サーバーは opencode.json を使います。OpenCode は優先順位に従って設定をマージします。
リモート MCP の認証方法は?
OAuth は opencode mcp auth <server-name>、API key は公式指定の header へ環境変数として渡します。
なぜ token が増えますか?
ツールの説明が呼び出し前からモデルのコンテキストに入るためです。
Figma や Supabase をグローバルにすべき?
まず project または Agent 単位、読み取り専用で検証し、広い必要性が確認できてから拡大します。
2026年7月11日に公式ドキュメントで確認