claude code访问本地部署的MCP服务
使用springAI搭建一个MCP服务端
实现2个mcp服务,一个加法,一个乘法。
package spring.ai.example.spring_ai_demo.tool;import org.springframework.ai.tool.annotation.Tool;
import org.springframework.stereotype.Service;@Service
public class Mathtool {@Tool(description = "两个数字相加")public Integer add(Integer a, Integer b) {return a + b;}@Tool(description = "两个数字相乘")public Integer multi(Integer a, Integer b) {return a * b;}}
配置为bean
package spring.ai.example.spring_ai_demo;import org.springframework.ai.tool.ToolCallbackProvider;
import org.springframework.ai.tool.method.MethodToolCallbackProvider;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import spring.ai.example.spring_ai_demo.tool.Mathtool;@Configuration
public class ToolCallbackProviderConfig {@Beanpublic ToolCallbackProvider mathTool(Mathtool mathtool) {return MethodToolCallbackProvider.builder().toolObjects(mathtool).build();}}
注意要引入依赖:
org.springframework.ai
spring-ai-starter-mcp-server-webmvc
配置如下:
spring:application:name: spring-ai-demoai:mcp:server:enabled: truename: math_mcp_serverversion: 1.0.0sse-endpoint: /mcplogging:level:io.modelcontextprotocol: TRACEorg.springframework.ai.mcp: TRACE
claudecode好像只支持sse结尾,所以我这里配置了 sse-endpoint: /mcp
启动以后,用postman验证一下服务是否可用。


MCP服务可用以后,进行下一步。
在claude 中使用我们自己的MCP服务
添加mcp服务
claude mcp add --transport sse --scope user my-sse-mcp http://localhost:8080/mcp
查看
claude mcp list
Checking MCP server health…
my-sse-mcp: http://localhost:8080/mcp (SSE) - ✓ Connected
测试

spring ai日志中也正常打印出了请求信息

