weather-mcp-server-mariox
Version:
MCP server for querying weather by current IP location using Open-Meteo free API
97 lines (69 loc) • 2.04 kB
Markdown
# Weather MCP Server
一个基于 Model Context Protocol (MCP) 的天气查询服务器,可以查询当前 IP 地址的天气信息。使用免费的 Open-Meteo API,无需注册或 API 密钥。
## 功能特性
- 🌍 **自动获取当前 IP 位置信息**:自动识别用户的地理位置
- 🌤️ **当前 IP 天气查询**:根据当前 IP 地址获取实时天气信息
- 📍 **经纬度天气查询**:支持按坐标查询天气信息
- 📅 **天气预报**:支持未来7天天气预报
- 🆓 **完全免费**:使用 Open-Meteo 免费 API,无需注册
## 可用工具
1. **get_current_ip_weather** - 获取当前IP地址的天气信息
2. **get_weather_by_coordinates** - 根据经纬度获取天气信息
3. **get_current_ip_info** - 获取当前IP地址的详细信息
4. **get_weather_forecast** - 获取天气预报(未来7天)
## 安装和使用
### 1. 安装依赖
```bash
npm install
```
### 2. 启动服务器
```bash
# 启动服务器
npm start
# 或者开发模式(自动重启)
npm run dev
```
## MCP 客户端配置
要在支持 MCP 的客户端中使用此服务器,请添加以下配置:
```json
{
"mcpServers": {
"weather": {
"command": "node",
"args": ["/path/to/your/weather-mcp-server/index.js"]
}
}
}
```
## 使用示例
### 查询当前 IP 天气
```
获取当前IP的天气信息
```
### 查询指定坐标天气
```
查询北京的天气 (纬度: 39.9042, 经度: 116.4074)
```
### 获取天气预报
```
获取未来3天的天气预报
```
## 技术栈
- Node.js 18+
- @modelcontextprotocol/sdk
- axios(HTTP 请求)
- Open-Meteo API(免费天气数据)
## API 数据源
- **IP 地理位置信息**:ip-api.com(免费服务)
- **天气数据**:Open-Meteo API(完全免费,无需注册)
## 许可证
MIT License
## 贡献
欢迎提交 Issues 和 Pull Requests!
## 更新日志
### v1.0.0
- 初始版本
- 支持当前 IP 天气查询
- 支持城市天气查询
- 支持 IP 信息查询
- 演示模式支持