Building an AI-Powered MCP Server with Spring AI: Querying Product Data without APIs について
Spring AI と Spring Boot で MCP サーバーとクライアントを構築する開発者向けの例です。専用の REST API を作らず、AI チャットクライアントからドメインデータを照会する方法を示します。
主な機能
- 01MCP による製品データ公開
- 02JPA と PostgreSQL の利用
- 03Spring AI クライアント設定
活用シーン
- 01チャットクライアントで製品情報を照会
- 02Spring Boot MCP サーバー実装の学習
MCP 対応
Spring AI を介して Product エンティティを AI チャットクライアントに公開します。Spring AI MCP クライアントの設定例も含みます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Spring AI で AI 対応 MCP サーバーを構築する:API を使わずに商品データを照会する
AI アシスタントやチャットベースのユーザーインターフェースの普及に伴い、従来の REST API よりも直感的でコンテキストを考慮した方法でバックエンドデータを公開する必要性が高まっています。そこで登場するのが Spring AI と Model Context Protocol(MCP)です。この強力な組み合わせにより、AI エージェントはカスタム API を作成せずにドメインモデルを直接操作できます。
このブログ記事では、商品名、コード、数量、価格などの詳細を保存するシンプルな Product テーブルを照会するため、Spring AI を使用して MCP サーバーをセットアップする方法を説明します。API エンドポイントを作成する代わりに、Spring AI の MCP サポートを活用して、AI チャットクライアントに商品エンティティを公開します。
詳しく見ていきましょう。
ステップ 1:Spring Boot MCP サーバーのセットアップ
spring-boot-starter-data-jpaspring-ai-starter-mcp-server-webfluxpostgresql
ステップ 2:Spring Boot MCP クライアントのセットアップ
spring-ai-starter-mcp-client-webfluxspring-ai-starter-model-ollamaspring-boot-starter-web
Spring Initializr または IDE を使用してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。