mcpField
S
Spring Ai Mcp

Spring Ai Mcp

ローカル
github.com/rifatcakirAI・エージェント273 週間前に更新

Spring Ai Mcp について

Spring Ai Mcpは、Spring AIとMCPを使い、自然言語で個人情報・口座・取引のマイクロサービスを操作するチャットの例です。チャットクライアントと複数のMCPサービスで構成され、会話間のコンテキストを保持します。

主な機能

  1. 01自然言語によるサービス操作
  2. 02統合チャットインターフェース
  3. 03複数サービスとのリアルタイム通信
  4. 04マイクロサービスの追加対応
  5. 05会話をまたぐコンテキスト管理

活用シーン

  1. 01個人情報の取得
  2. 02個人の口座と残高の確認
  3. 03口座の取引履歴の照会

MCP 対応

個人情報・口座・取引の各マイクロサービスがMCPを実装します。Spring AIチャットクライアントは自然言語の要求を、該当サービスへの呼び出しに変換します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Spring AI MCP(Model Context Protocol)

このプロジェクトでは、Spring AI と MCP(Model Context Protocol)を使用して、マイクロサービスと通信するチャットベースのインターフェースを実装する方法を紹介します。このシステムでは、ユーザーが自然言語でのチャットを通じてさまざまなマイクロサービスを操作できます。コンテキストを理解し、モデル主導のインタラクションを実現することで、異なるサービス間の操作を簡単に行えます。

プロジェクト構成

このプロジェクトは、以下のコンポーネントで構成されています。

  • chat-client:ユーザーがマイクロサービスとやり取りするためのチャットインターフェースを提供する Spring Boot アプリケーション
  • person-mcp-service:人物に関する操作を管理するマイクロサービス
  • account-mcp-service:口座に関する操作を処理するマイクロサービス
  • transaction-mcp-service:取引に関する操作を処理するマイクロサービス

前提条件

  • Java 21
  • Maven 3.8+
  • Spring Boot 3.5.0
  • Spring AI 1.0.0

はじめに

  1. リポジトリをクローンします。
git clone https://github.com/yourusername/spring-ai-mcp.git
cd spring-ai-mcp
  1. プロジェクトをビルドします。
mvn clean install
  1. サービスを起動します。
# Start each service in separate terminals
mvn spring-boot:run -pl person-mcp-service
mvn spring-boot:run -pl account-mcp-service
mvn spring-boot:run -pl transaction-mcp-service
mvn spring-boot:run -pl chat-client

アーキテクチャ

このプロジェクトは、以下のようなマイクロサービスアーキテクチャを採用しています。

  1. 各マイクロサービス(person、account、transaction)が Model Context Protocol(MCP)を実装します。
  2. チャットクライアントは Spring AI を使用して、以下を行います。
    • 自然言語の入力を処理する
    • ユーザーのリクエストを適切なモデルコンテキスト呼び出しに変換する
    • マイクロサービスからの応答を処理する
    • ユーザーにとってわかりやすい形式で結果を提示する
    • 複数のやり取りにわたってコンテキストを維持する

機能

  • サービスとのやり取りのための自然言語処理
  • すべてのマイクロサービスに対応する統一チャットインターフェース
  • 複数のサービスとのリアルタイム通信
  • 新しいマイクロサービスをシームレスに統合

使い方

  1. chat-client アプリケーションからチャットインターフェースにアクセスします。
  2. リクエストを自然言語で入力します。
  3. システムは以下を実行します。
    • リクエストを解析する
    • 関連するマイクロサービスを特定する
    • 必要な操作を実行する
    • 会話形式で結果を返す

チャットのやり取りの例

以下は、Model Context Protocol によって、チャットを通じてコンテキストを考慮した銀行業務をシームレスに行えることを示す、AI アシスタントとの会話例です。

1. 個人情報を確認する
例:John Smith の個人情報を表示

ユーザーが John Smith の個人情報をリクエストします。アシスタントは ID、名、姓を提示します。

2. 人物の口座を照会する
例:John Smith の口座を表示

ユーザーが John Smith の口座の表示をリクエストします。アシスタントは残高とともにすべての口座を一覧表示します。

3. 口座の取引を確認する
例:口座の取引を表示

ユーザーが、先ほど一覧表示した口座の取引の表示をリクエストします。アシスタントは、以前のメッセージのコンテキストを維持しながら、口座と取引の詳細を回答します。

開発

新しいマイクロサービスの追加
  1. プロジェクトに新しいモジュールを作成します。
  2. MCP プロトコルを実装します。
  3. 親の pom.xml にモジュールを追加します。
  4. 新しいサービスの操作を処理できるようにチャットクライアントを更新します。
設定

各サービスは、それぞれの application.properties または application.yml ファイルで設定できます。一般的な設定項目は以下のとおりです。

  • サービスポート
  • データベース接続
  • AI モデルの設定
  • Model Context Protocol の設定
  • コンテキスト管理パラメーター

コントリビューション

  1. リポジトリをフォークします。
  2. フィーチャーブランチを作成します。
  3. 変更をコミットします。
  4. ブランチにプッシュします。
  5. プルリクエストを作成します。

ライセンス

このプロジェクトは MIT License のもとでライセンスされています。詳細については LICENSE ファイルを参照してください。

サポート

サポートが必要な場合は、GitHub リポジトリで issue を作成するか、開発チームにお問い合わせください。

コメント

MCP は初めてですか?

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

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