使用说明
MCP气象服务器
这个项目是一个使用Spring Boot用Java实现的MCP(模型上下文协议)服务器。它提供实时天气和股票价格数据。
建筑
- Web MVC服务器配置:主分支使用Spring Web MVC来处理HTTP请求。
- WebFlux MVC配置:The
webflux-transport该分支使用Spring WebFlux进行反应式、非阻塞的请求处理。- 这两种配置都是单独维护的,以进行灵活性和性能测试。
特性
- 天气信息检索
- 使用Ninja API实时获取股票价格
- 流数据的SSE(服务器发送事件)支持
- localhost:8081/sse连接的sse端点
使用的技术
- Java 24
- Spring Boot(Web MVC和WebFlux)
- 等级8.14.3
API股价
使用以下工具实时获取股票价格 API忍者 服务。您必须为此服务提供一个API密钥。
设置API密钥
通过以下方式之一设置Ninja API密钥:
- 作为环境变量:
export API_NINJA_KEY=your_api_key_here - 或在
src/main/resources/application.properties:api.ninja.key=your_api_key_here
如何构建
./gradlew build
如何跑步
./gradlew bootRun
分支
main:Web MVC配置webflux-transport:WebFlux配置
VSCode的MCP配置json
Spring webflux的webflux传输分支配置(反应式SSE)
{
"servers": {
"my-mcp-server-488ad34d": {
"url": "http://localhost:8081/sse",
"type": "sse"
}
},
"inputs": []
}
Spring MVC主分支的配置(服务器发送事件)
{
"servers": {
"my-mcp-server-488ad34d": {
"url": "http://localhost:8081/sse",
"type": "http"
}
},
"inputs": []
}
MCP提示示例
1. Fetch the current weather in New York City.
2. Get details coordinates for Samastipur.
3. What is the current stock price of Apple ?