返回市场
弹簧人工智能MCP服务器

弹簧人工智能MCP服务器

作者:spring-projects-experimental197 星标更新:2025-02-15

项目介绍

技术文档摘要

注意:此项目已毕业并迁移到MCP Java SDKSpring AI MCP。请在那里查看!此仓库现已存档。

Java & Spring MCP

构建状态

一组提供Java SDK和Spring框架集成的项目,用于模型上下文协议。 它使Java应用程序能够通过标准化接口与AI模型和工具进行交互,支持同步和异步通信模式。

📚 参考文档

对于全面指南和API文档,请访问Spring AI MCP参考文档

<img src="mcp-docs/src/main/antora/modules/ROOT/images/spring-ai-mcp-clinet-architecture.jpg" width="600"> <img src="mcp-docs/src/main/antora/modules/ROOT/images/spring-ai-mcp-server-architecture.jpg" width="600">

项目

MCP Java SDK

模型上下文协议规范的Java实现。包括:

  • 同步和异步的MCP客户端MCP服务器实现
  • 标准MCP操作支持(工具发现、资源管理、提示处理、结构化日志)。支持请求和通知处理。
  • 基于StdioSSE的传输实现。

MCP传输

核心传输

  • 基于Stdio的(StdioClientTransportStdioServerTransport)进程间通信
  • 基于Java HttpClient的SSE客户端(HttpClientSseClientTransport)HTTP流
  • 基于Servlet的SSE服务器(HttpServletSseServerTransport)使用传统Servlet API的HTTP SSE服务器流

可选SSE传输

  • WebFlux SSE传输 - 使用Spring WebFlux的响应式HTTP流(客户端和服务器)
  • WebMvc SSE传输 - 基于Spring MVC的HTTP SSE传输(仅限服务器)。您可以使用核心HttpClientSseClientTransport传输作为SSE客户端。

Spring AI MCP

Spring集成模块提供了特定于Spring的功能:

  • 与Spring AI函数调用系统的集成
  • 对MCP客户端友好的Spring抽象
  • 自动配置(正在进行中)

安装

在您的Maven项目中添加以下依赖项:

<!-- 核心MCP -->
<dependency>
    <groupId>org.springframework.experimental</groupId>
    <artifactId>mcp</artifactId>
</dependency>

<!-- 可选:WebFlux SSE传输 -->
<dependency>
    <groupId>org.springframework.experimental</groupId>
    <artifactId>mcp-webflux-sse-transport</artifactId>
</dependency>

<!-- 可选:WebMVC SSE传输 -->
<dependency>
    <groupId>-org.springframework.experimental</groupId>
    <artifactId>mcp-webmvc-sse-transport</artifactId>
</dependency>

<!-- 可选:Spring AI集成 -->
<dependency>
    <groupId>org.springframework.experimental</groupId>
    <artifactId>spring-ai-mcp</artifactId>
</dependency>

这是一个里程碑版本,不在Maven中央仓库中。 在POM中添加此仓库:

<repositories>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>https://repo.spring.io/milestone</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>

更多信息请参阅依赖管理页面。

示例演示

spring-ai-examples/model-context-protocol仓库中探索这些MCP示例:

文档

开发

  • 从源码构建
mvn clean install
  • 运行测试
mvn test

贡献

这是一个实验性的Spring项目。欢迎贡献!请:

  1. 分叉仓库
  2. 创建一个特性分支
  3. 提交拉取请求

团队

  • Christian Tzolov
  • Dariusz Jędrzejczyk

链接

许可证

本项目根据Apache许可证2.0授权。