Verdent Docs
設定

MCP 連携

Verdent を Model Context Protocol サーバーとプラグインで拡張する

MCP(Model Context Protocol)とは

Model Context Protocol(MCP)は、外部のツール、データソース、サービスに接続することで Verdent の機能を拡張する連携システムです。

中心となる考え方: MCP により、Verdent は組み込みのツールセットを超えてシステムと連携できるようになり、以下とのシームレスな統合が可能になります。

  • 外部の API や Web サービス
  • データベースシステム
  • クラウドプラットフォーム(AWS、Azure、GCP)
  • プロジェクト管理ツール
  • CI/CD パイプライン
  • カスタムの社内ツール

アーキテクチャ: MCP サーバーは、Verdent と外部システムの橋渡し役として機能します。各 MCP サーバーは特定の機能を公開し、Verdent はコーディングセッション中にそれを呼び出せます。これは file_readbash といった組み込みツールと同様です。

設定の保存先: MCP サーバーの設定は ~/.verdent/mcp.json に保存され、Settings メニューから管理されます。


MCP 連携のメリット

機能の拡張

外部システムへのアクセス: Verdent を、組み込み機能では利用できないツールやサービスに接続できます。データベースへのクエリ、クラウドサービスとのやり取り、プロジェクト固有の API との連携を、コーディングワークフローから離れることなく行えます。

カスタムツールの開発: プロジェクト独自の要件に合わせた MCP サーバーを作成できます。社内ツール、独自の API、ドメイン固有のシステム向けに専用の連携を構築できます。

相互運用性

エコシステムの活用: 成長を続ける MCP エコシステムを活用できます。コミュニティが開発した MCP サーバーは、人気のツールやサービス向けに構築済みの連携を提供します。

標準化されたプロトコル: MCP はツール連携のための一貫したインターフェースを提供し、新しい機能が Verdent の既存のツールシステムにスムーズに統合されることを保証します。

ワークフローの自動化

シームレスな統合: MCP サーバーは Verdent のツールセットの一部になります。エージェントは適切な場面で自動的に MCP ツールを使用しますが、特定のタスク向けに明示的に呼び出すこともできます。

コンテキストを認識した操作: MCP 連携はコードベースのコンテキストを理解し、現在の開発状態に基づいて外部システムとインテリジェントにやり取りできます。


MCP サーバーのセットアップ

設定の手順

MCP 設定へのアクセス:

  1. Verdent で Settings メニューを開きます
  2. MCP Servers セクションに移動します
  3. ~/.verdent/mcp.json の設定を表示または変更します

設定ファイル: MCP サーバーは ~/.verdent/mcp.json ファイルで設定され、サーバー接続、認証、連携パラメータを定義します。完全なスキーマについては、以下の MCP 設定 セクションを参照してください。

設定の管理

サーバーの追加: 接続情報と認証クレデンシャルを含むエントリを mcp.json に追加することで、新しい MCP サーバーを設定できます。

複数のサーバー: Verdent は複数の MCP サーバーの同時利用をサポートしており、複数の外部システムと同時に連携できます。

接続のテスト: MCP サーバーの設定を検証し、開発ワークフローで使用する前に接続が成功することを確認できます。

サーバーのステータス

MCP 設定パネルで接続ステータスを監視できます。

ステータス説明
Successサーバーが接続され、ツールが利用可能
Failed接続エラー(クリックすると詳細を表示)
Loadingサーバーを初期化中

ツールの更新: 設定の変更や接続の問題があった後、更新ボタンを選択するとサーバーから利用可能なツールを再検出します。


MCP 設定

基本のセットアップ

場所: プロジェクトのルートにある .mcp.json、または ~/.verdent/mcp.json(グローバル)

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-postgres",
        "postgresql://localhost:5432/myapp_dev"
      ]
    }
  }
}
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"
      }
    }
  }
}
{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-postgres",
        "postgresql://localhost:5432/myapp_dev"
      ]
    },
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"
      }
    }
  }
}

設定キー:

  • mcpServers - MCP 設定に必須のトップレベルキー
  • command - 実行する実行ファイル(Node.js パッケージの場合は通常 npx
  • args - コマンドに渡す引数(パッケージ名、接続文字列など)
  • env - 認証・設定用の環境変数

MCP についてさらに詳しく:


MCP プラグインと拡張機能

利用可能なプラグイン

MCP プラグインは、一般的なツールやサービス向けの構築済み連携を提供します。現在利用できるものは、コミュニティレジストリ mcp.so/servers または 公式 MCP サーバーリポジトリ で閲覧できます。

一般的なプラグインのカテゴリ:

  • データベース連携: PostgreSQL、MySQL、MongoDB のクエリツール
  • クラウドサービス: AWS、Azure、GCP の API とのやり取り
  • 開発者ツール: GitHub、GitLab、Jira、Linear との連携
  • CI/CD プラットフォーム: Jenkins、GitHub Actions、CircleCI
  • 監視サービス: Datadog、New Relic、Sentry
  • コミュニケーション: Slack、Discord、Microsoft Teams への通知

プラグインのインストール

インストール方法: プラグインは MCP Settings インターフェースからインストールおよび設定し、通常は以下が必要です。

  • プラグインの識別子またはソース
  • 設定パラメータ
  • 認証クレデンシャル(該当する場合)

依存関係の管理: MCP プラグインは外部サービスやライブラリに依存する場合があります。インストールプロセスは可能な限り依存関係の解決を自動的に処理します。


カスタム MCP サーバーの開発

カスタムサーバーの作成

上級ユーザーは、独自のツールやドメイン固有のシステムを連携させるためにカスタム MCP サーバーを作成できます。

開発のアプローチ: カスタム MCP サーバーは MCP プロトコル仕様を実装し、Verdent が呼び出せるツール機能を公開します。実装の詳細と SDK については Model Context Protocol 仕様 を参照してください。

カスタムサーバーのユースケース:

  • 社内 API 連携: 会社固有の API やサービスに接続
  • レガシーシステムのブリッジ: Verdent がレガシーインフラとやり取りできるようにする
  • 特殊なデータソース: 独自のデータベースやデータウェアハウスにアクセス
  • ワークフローの自動化: カスタムのビルド、デプロイ、テストパイプラインをトリガー

連携のパターン

ワークスペースレベルの設定: MCP サーバーは、プロジェクト固有の連携のためにワークスペースレベルで設定でき、チームはバージョン管理を通じて MCP 設定を共有できます。

ツールの相互運用性: MCP が提供するツールは Verdent の組み込みツール(file_readbashspawn_subagent)とシームレスに統合され、複数のツールタイプを組み合わせた複雑なワークフローを実現できます。


デスクトップ固有の MCP 機能

プロジェクトごとの設定

設定レベル場所スコープ
Global~/.verdent/mcp.jsonすべてのプロジェクト
Projectプロジェクトのルートにある .mcp.json単一のプロジェクト
Worktreeプロジェクトから継承プロジェクト設定を継承

複数 worktree での MCP

MCP サーバーは worktree をまたいで動作します。

  • 共有サーバー: ベースワークスペースの MCP 設定がすべての worktree で共有される
  • 分離された操作: 各 worktree は個別の MCP セッション状態を保持する
  • 並列アクセス: 複数の worktree が同じ MCP サーバーを同時に使用できる

プロジェクトの切り替え

プロジェクトを切り替えると、次のようになります。

  • 現在のプロジェクトの MCP サーバーが読み込まれる
  • グローバルの MCP サーバーは引き続き利用できる
  • 以前のプロジェクトの MCP 接続はバックグラウンドで維持される

MCP ワークフローの例

データベースクエリ連携

シナリオ: データの問題をデバッグするために本番データベースにクエリを実行する。

MCP でのアプローチ:

User: "Check the orders table for customer ID 12345"
Verdent: [Uses MCP database server to execute safe read-only query]
        Results: 3 orders found for customer 12345
        [Displays formatted results]

MCP のデータベースサーバーが認証、クエリの検証、結果のフォーマットを処理します。

クラウドサービスとのやり取り

シナリオ: AWS Lambda 関数のログでエラーを確認する。

MCP でのアプローチ:

User: "Show me recent errors from the payment-processor Lambda function"
Verdent: [Invokes MCP AWS integration]
        [Retrieves CloudWatch logs for specified function]
        [Filters for ERROR level entries]
        [Presents formatted error summaries]

MCP の AWS サーバーが認証、API 呼び出し、ログの解析を管理します。

CI/CD パイプラインの監視

シナリオ: 変更をデプロイする前にビルドのステータスを確認する。

MCP でのアプローチ:

User: "Is the master branch build passing?"
Verdent: [Queries MCP CI/CD integration]
        Build #245: ✓ Passed (2 minutes ago)
        All tests passed, ready for deployment

MCP の CI/CD サーバーがパイプラインのステータスを追跡し、リアルタイムのフィードバックを提供します。


セキュリティ上の考慮事項

認証と認可

クレデンシャルの管理: MCP サーバーは外部サービスへの認証を処理します。クレデンシャルは MCP の設定に安全に保存され、チャット履歴やコードに公開されることはありません。

権限のスコープ設定: MCP サーバーは必要最小限の権限で設定してください。可能な場合は読み取り専用アクセスを使用し、破壊的な操作を制限します。

安全な操作

コマンドのレビュー: MCP ツールを伴う操作は会話履歴に表示され、可視性とコントロールを提供します。

監査ログ: MCP サーバーの操作は Verdent のチャット履歴に表示され、外部システムとのやり取りの監査証跡を作成します。


MCP 連携のトラブルシューティング

よくある問題

接続の失敗:

  • MCP サーバーへのネットワーク接続を確認する
  • mcp.json の認証クレデンシャルを確認する
  • MCP サーバーが実行中でアクセス可能であることを確認する
  • 設定ファイルの構文を検証する

権限エラー:

  • API キーまたはクレデンシャルに必要な権限があることを確認する
  • サービスのクォータやレート制限を確認する
  • ファイアウォールのルールが MCP のトラフィックを許可していることを確認する

ツール呼び出しの問題:

  • MCP サーバーが期待されるツールを正しく公開していることを確認する
  • ツールのパラメータ形式がサーバーの期待に一致していることを確認する
  • エラーの詳細について MCP サーバーのログを確認する

ヘルプを得る

サポートチャネル:

診断情報: MCP の問題を報告する際は、以下を提供してください。

  • MCP サーバーのタイプとバージョン
  • 設定の詳細(クレデンシャルを除去したもの)
  • チャット履歴のエラーメッセージ
  • MCP サーバーのログ(アクセス可能な場合)

よくある質問

MCP サーバーはクレジットを消費しますか?

MCP サーバーの操作は、結果を処理するモデルに応じてクレジットを消費します。MCP サーバー自体は直接クレジットを使用しません。

MCP サーバーはプロジェクト固有ですか?

いいえ。MCP サーバーはプロジェクトごとではなく、ユーザーレベルで設定されます。設定したすべてのサーバーは、すべてのプロジェクトで利用できます。

mcp.json 内のクレデンシャルは安全ですか?

mcp.json 内のクレデンシャルはお使いのマシンにローカルで保存され、Verdent のサーバーに送信されることはありません。機密性の高い値には環境変数(${VAR_NAME})を使用してください。

MCP サーバーは常時実行されますか?

MCP サーバーは必要なときに起動し、セッション中に実行されます。Verdent を閉じている間はリソースを消費しません。

MCP サーバーは私のファイルを変更できますか?

MCP サーバーは、あなたが設定した権限を持ちます。可能な場合は読み取り専用アクセスを使用し、破壊的な操作を制限してください。

MCP サーバーが動作しているかどうかはどうやって確認しますか?

Verdent に MCP サーバーのツールを使うよう依頼してください。正常な応答が返れば接続が機能していることを示します。問題が発生した場合はトラブルシューティングのセクションを確認してください。