OpenAPI 转 MCP Server
将使用 OpenAPI 作为接口文档的 SpringBoot 应用转换为 MCP Server。
快速入门
要求
- Java 17+
- SpringBoot 和 SpringMVC
步骤
-
添加依赖: 引入
mcp-spring-webmvc
依赖,版本 0.7.0。 -
复制代码文件:
- InternalWebMvcSseServerTransport.java
- McpConfig.java
- RestApiToolProvider.java
- UserContextSetter.java
-
实现 UserContextSetter 接口: 示例实现:
@Component public class MyUserContextSetter implements UserContextSetter { @Override public void set(String auth) { UserContext.set(jwtConfig.getUserContextFromTokenWithoutException(auth)); } @Override public void clear() { UserContext.clear(); } }
-
配置其他基础组件(如拦截器)。
-
客户端 Demo: 使用 TypeScript 编写客户端并调用服务。
const transport = new SSEClientTransport(new URL("http://localhost:8080/mcp/sse/...")); const client = new Client({ name: "MCP Server", version: "1.0.0" }); await client.connect(transport); const tools = await client.listTools(); console.log(tools);