使用说明
气象MCP服务器
一种基于位置坐标提供天气信息的模型上下文协议(MCP)服务器。
概述
天气MCP服务器是一种专门的服务,它实现了模型上下文协议,为人工智能助手和其他客户端提供天气信息。它提供了一个基于纬度和经度坐标检索天气数据的简单工具。
特性
- 符合MCP的服务器实现
- 基于位置坐标的气象信息服务
- 用于LLM集成的安全API密钥管理
- 轻量级服务器,依赖性最小
- 已准备好与AI助手集成
先决条件
- Java 21或更高版本
- Maven 3.6.0或更高版本
- Google Gemini API密钥
设置
1.克隆存储库
git clone <repository-url>
cd weather-mcp-server
2.启动服务器
使用提供的启动脚本构建并启动服务器:
./start-server.sh
脚本将:
- 提示您输入Google Gemini API密钥
- 构建项目
- 启动MCP服务器
3.启动客户端(在单独的终端中)
cd weather-client
mvn spring-boot:run
用法
服务器公开了以下工具:
getWeatherByLocation(lat, lon)
- 描述:根据纬度和经度按位置获取天气信息
- 参数:
lat(int):纬度坐标lon(int):经度坐标
- 退货:基于所提供坐标的天气描述
配置
服务器使用以下配置:
- 服务器名称:
weather-mcp-server - 服务器版本:
1.0.0 - 运输标准: stdio
- 所需环境变量:
GOOGLE_GEMINI_API_KEY
项目结构
weather-mcp-server/
├── src/
│ └── main/
│ └── java/
│ └── dev/dayo/
│ └── weathermcpserver/
│ ├── WeatherMcpServerApplication.java
│ └── service/
│ └── WeatherService.java
├── weather-client/
│ └── (Client application for testing the MCP server)
├── start-server.sh (Startup script with API key prompt)
└── pom.xml
与MCP客户端集成
服务器可以与MCP兼容的客户端集成。服务器通过stdio传输公开天气工具,该传输在应用程序属性中配置。
此存储库中的客户端(weather-client)已配置为通过中的配置与此服务器通信 weather-client/src/main/resources/mcp-servers.config.json.
对于外部MCP集成,服务器使用stdio传输运行,可以按以下方式调用:
java -jar /path/to/your/cloned/weather-mcp-server/target/weather-mcp-server-0.0.1-SNAPSHOT.jar
替换 /path/to/your/cloned/weather-mcp-server 使用克隆存储库的实际路径。
安全
- API密钥未存储在存储库中
- 这
.gitignore文件阻止提交环境文件 - API密钥仅在运行时加载到内存中
发展
要运行测试,请执行以下操作:
mvn test
要在不运行测试的情况下进行构建,请执行以下操作:
mvn clean package -DskipTests
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 提交拉取请求
许可证
[在此处指定您的许可证]