返回 MCP 目录
public公开dns本地运行

spring-ai-mcp-client

Spring AI MCP客户端是一个基于Spring AI和Anthropic Claude/OpenAI模型的聊天应用,通过MCP协议与服务器交互,支持AI驱动的对话功能。

article

README

🚀 Spring AI MCP 客户端

Spring AI MCP 客户端应用程序借助 Spring AI 与 Anthropic 的 Claude 模型(或 OpenAI 的模型),与支持 MCP 协议的服务器集成,实现基于人工智能的聊天交互,为用户带来智能便捷的聊天体验。

🚀 快速开始

Spring MCP 客户端是 MCP 架构中的关键组件,负责建立和管理与 MCP 服务器的连接,实现协议的客户端部分,具备多种重要功能。

✨ 主要特性

  • 协议版本协商:确保与服务器兼容。
  • 功能协商:确定可用的功能。
  • 消息传输和 JSON - RPC 通信:保障数据的高效传输。
  • 工具发现和执行:方便用户使用各类工具。
  • 资源访问和管理:合理调配资源。
  • 提示系统交互:提供良好的交互体验。
  • 可选功能:如根目录管理、采样支持。
  • 支持多模型:支持 OpenAI 和 Anthropic 模型。

📦 安装指南

1. 克隆仓库

git clone <repo-url>
cd spring-ai-mcp-client

2. MCP 服务器配置

必须将 MCP 服务器信息添加到 mcp-servers.json 文件中,示例如下:

{
    "mcpServers": {
        "any-mcp-server": {
            "command": "node",
            "args": [
                "any-mcp-server/build/index.js"
            ]
        }
    }
}

3. Spring 配置

application.yml 文件应按如下配置:

spring:
  ai:
    mcp:
      client:
        enabled: true
        name: any-mcp-server # MCP 服务器名称
        version: 1.0.0
        type: SYNC
        request-timeout: 20s
        stdio:
          root-change-notification: true
          servers-configuration: classpath:mcp-servers.json # MCP 服务器配置,如 Claude 桌面配置。
    anthropic:
      api-key: ${ANTHROPIC_API_KEY}
#   openai:
#     api-key:  ${OPENAI_API_KEY}
server:
  port: 8081

4. 运行应用程序

mvn clean install
mvn spring-boot:run

💻 使用示例

基础用法

一旦应用程序运行,可通过以下端点访问:

  • http://localhost:8091/ai

您可以通过以下 cURL 命令启动聊天:

curl -X GET "http://localhost:8081/ai?message=Hello" -H "Accept: application/json"

🔧 技术细节

需求

  • Java 17+

  • Maven 或 Gradle

  • Docker(可选)

  • Anthropic API 密钥或 OpenAI API 密钥

  • Anthropic API 密钥:从 Anthropic 控台 获取。

  • OpenAI API 密钥:从 OpenAI 控制台 获取。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端