mcpField
A
auto-mcp-client

auto-mcp-client

github.com/down-to-earth1994フレームワーク・SDK1276 週間前に更新

auto-mcp-client について

Spring AI に基づく MCP クライアントフレームワークで、stdio と HTTP SSE 経由で MCP サービスと通信します。自動初期化、ヘルスチェック、タイムアウト管理、接続再利用を実装し、Web ベースのエージェントをサポートします。

主な機能

  1. 01stdio と HTTP SSE プロトコルサポート
  2. 02自動接続初期化とヘルスチェック
  3. 03タイムアウト切断と接続再利用
  4. 04マルチエージェント分離
  5. 05Spring AI フレームワーク統合

活用シーン

  1. 01MCP サービスを照会する Web アプリケーション
  2. 02エージェントが外部ツールを自動呼び出し
  3. 03複数エージェントの MCP 共有利用
  4. 04サーバーリソース消費の削減

MCP 対応

Spring AI 上に構築された MCP クライアント実装で、stdio と HTTP SSE 経由で MCP サービスに接続し、ツールとリソースへのアクセスを提供します。

詳細

auto-mcp-client

プロジェクト概要

これは Spring AI 1.0.0-M7 に基づいた Java プロジェクトで、mcp-client サービスをカプセル化し、stdio および HTTP SSE(Server-Sent Events) を通じて MCP サーバーと相互作用することをサポートしています。プロジェクトは自動接続管理メカニズムを実装しており、自動初期化接続、ヘルスチェック、タイムアウト切断、および接続の再利用などの機能が含まれています。


プライベートモデル設定例
ai:
  openai:
    api-key: YWljcF9hcHA6UVd4aFpHUnBianB2Y0dWdUlITmxjMkZ0WlE=
    base-url: http://10.0.1.133:30080
    chat:
      options:
        stream: true
        model: qwen3-30b-a3b
      base-url:  http://10.0.1.133:30080
      completions-path: /v10/llm/chat/qwen3-30b-a3b/completion

機能特性

  • 複数プロトコルサポート:stdio および HTTP SSE を通じて MCP サーバーと通信をサポートします。
  • 自動初期化接続:プロジェクト起動時に MCP サーバーとの接続初期化が自動的に完了します。
  • 自動ヘルスチェック:接続のヘルスステータスを定期的にチェックし、接続が常に利用可能であることを確認します。
  • 自動タイムアウト切断:接続が指定されたタイムアウト時間内に使用されない場合、リソースを解放するために自動的に接続を切断します。
  • 接続の再利用:タイムアウト時間範囲内で、同じ接続を再利用してパフォーマンスとリソース利用率を向上させます。
  • 環境分離:複数のエージェントが同じ MCP サーバーを使用する場合、相互に分離されます。

技術スタック

  • フレームワーク:Spring AI 1.0.0-M7
  • 言語:Java
  • 依存ライブラリ:
    • mcp-client
    • Spring Boot 3.3.6
    • HTTP クライアントライブラリ(OkHttp または HttpClient など)

クイックスタート

1. 環境準備
  • Java バージョン:JDK 17 以上がインストールされていることを確認してください。
  • Maven/Gradle:プロジェクトは Maven/Gradle ビルドツールを使用します。正しく設定されていることを確認してください。
2. プロジェクト実行前の設定
  1. bootstrap.yml の Nacos 設定センターとネームスペースを変更する必要があります。mcp-client-dev.yml 設定を Nacos 設定センターにインポートする必要があります。
  2. デフォルトで接続されるのは Alibaba Bailian の qwen2.5-72b-instruct 大規模言語モデル(OpenAI プロトコル)です。プライベート OpenAI プロトコルモデルへの切り替えをサポートします。API キーは自分で申請する必要があります。
  3. 組み込みのデフォルト default-mcp-registry.json を自分の API キーまたは他の MCP サーバーに変更する必要があります。
  4. 設定ファイルの Node サービスパスを変更する必要があります。サービス起動時に Node サービスが利用可能かどうかを最初にチェックします。チェック目的は stdio プロトコルをサポートする多くの MCP サーバーに対応するためです。
3. 組み込み効果デモ(他のツールの設定後に質問することで、すべてのツールにアクセス可能です)
  • 効果 1:
  1. 質問:北京と上海の天気を比較して、今日の気温が高いのはどちらか、棒グラフを生成してください。
  2. 回答:

北京 VS 上海気温比較グラフ

  • 効果 2:
  1. 質問:データベース内の福建省 GDP トップ 5 を分析し、円グラフで描画してください。
  2. 回答:

福建省 GDP Top5

  • 効果 3:
  1. 質問:このウェブページの内容を整理して Markdown にまとめてください。
  2. 回答:

firecrawl.png

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。