
ModelContextProtocolClient

2025.03.01
1
Java开发工具通信协议开发效率
ModelContextProtocolClient 是一个 Spring Boot 客户端应用程序,用于演示与 MCP 服务器通信的不同传输方法(WebFlux SSE、Stdio)。它支持多种传输配置,包括 WebFlux SSE、Stdio、BraveSearch 和 Weather API,适用于需要与 MCP 服务器进行高效通信的开发场景。
View on GitHub
Overview
基本能力
产品定位
ModelContextProtocolClient 是一个用于演示与 MCP 服务器通信的 Spring Boot 客户端应用程序,支持多种传输方法。
核心功能
- 多种传输方法支持:
- WebFlux SSE Transport(默认)
- Stdio Transport
- BraveSearch Transport
- Weather API
- 工具列表查询:支持通过不同传输方法查询可用工具。
- 计算功能:支持通过不同传输方法进行数学计算。
- 天气查询:支持通过不同传输方法查询天气信息。
- 网络搜索:支持通过 BraveSearch Transport 进行网络搜索。
适用场景
- 开发测试:用于测试 MCP 服务器的不同传输方法。
- 工具集成:集成多种工具(如计算器、天气查询、网络搜索)的客户端应用。
- 多传输方法研究:研究不同传输方法(如 WebFlux SSE、Stdio)的性能和适用性。
工具列表
- 计算器工具:支持加、减、乘、除等数学运算。
- 天气查询工具:支持查询指定地点的天气信息。
- 网络搜索工具:支持通过 BraveSearch API 进行网络搜索。
常见问题解答
- 如何获取 API 密钥?
- BraveSearch API 密钥可从 Brave Search API 获取。
- Weather API 密钥可从 WeatherAPI 获取。
- 如何切换传输方法?
- 默认使用 WebFlux SSE Transport,可通过配置切换为 Stdio Transport 或其他传输方法。
使用教程
使用依赖
- 创建
.env
文件并填写 API 密钥:bash BRAVE_SEARCH_API_KEY=your_brave_search_api_key_here WEATHER_API_KEY=your_weather_api_key_here
安装教程
- 克隆 MCP 服务器仓库:
bash git clone https://github.com/InnoBridge/ModelContextProtocolServer
- 更新
docker-compose.yml
文件中的卷映射: ```yaml volumes:- .:/app
- /var/run/docker.sock:/var/run/docker.sock
- ./local/root:/root
- ../{path to ModelContextProtocolServer repo}:/ModelContextProtocolServer ```
- 启动 Docker 容器:
bash sudo docker compose up
- 构建并运行 MCP 服务器:
bash sudo docker exec -it modelcontextprotocolserver-application sh cd /app ./mvnw clean install ./mvnw spring-boot:run
- 构建并运行客户端:
bash docker exec -it modelcontextprotocolclient-application sh ./mvnw spring-boot:run
调试方式
- 查询可用工具:
bash curl -X GET "http://localhost:8080/webflux/tools"
- 使用计算器工具:
bash curl -X POST "http://localhost:8080/webflux/calculate?operation=add&a=5&b=3"
- 查询天气信息:
bash curl -X POST "http://localhost:8080/webflux/weather?location=San%20Francisco&format=celsius"
- 进行网络搜索:
bash curl -X POST "http://localhost:8080/bravesearch?query=spring%20boot"
许可证
None