Provides weather query functionality using Baidu Maps API, enabling real-time weather data retrieval, 5-day forecasts, hourly predictions, weather alerts, and lifestyle indices for locations specified by administrative district codes or geographic coordinates
天气查询MCP服务器
基于百度地图API提供天气查询功能的MCP(Model Context Protocol)工具。
服务配置
环境变量配置: 请在系统环境变量中设置:
功能特性
- 🌤️ 实时天气查询 - 获取当前天气状况、温度、湿度、风向等信息
- 📅 天气预报 - 提供未来5天的详细天气预报
- 📊 生活指数 - 包含晨练、洗车、感冒、紫外线、穿衣、运动等生活指数
- ⚠️ 气象预警 - 实时获取气象预警信息
- ⏰ 逐小时预报 - 24小时逐小时天气预报
- 🗺️ 多种查询方式 - 支持行政区划代码和经纬度坐标查询
安装依赖
配置
设置系统环境变量:
Windows:
Linux/macOS:
或者在系统环境变量中永久设置 BAIDU_AK
。
获取百度地图API密钥
- 访问 百度地图开放平台
- 注册并登录账号
- 创建应用并获取AK(API Key)
- 确保开通天气服务权限
使用方法
启动MCP服务器
工具说明
get_weather
获取指定地区的天气信息,支持多种数据类型和查询方式。
参数:
district_id
(可选): 区县的行政区划编码,例如:'110101'(北京东城区)location
(可选): 经纬度坐标,格式:'经度,纬度',例如:'116.404,39.915'data_type
(可选): 请求数据类型now
: 实时天气fc
: 天气预报index
: 生活指数alert
: 气象预警fc_hour
: 逐小时预报all
: 所有数据(默认)
coordtype
(可选): 坐标类型,仅在使用location时有效wgs84
: WGS84坐标系(默认)bd09ll
: 百度经纬度坐标系bd09mc
: 百度墨卡托坐标系gcj02
: 国测局坐标系
注意: district_id
和 location
必须提供其中一个。
使用示例
1. 使用行政区划代码查询北京东城区天气
2. 使用经纬度查询天安门广场天气
3. 只查询实时天气
测试
测试百度地图API连接
测试MCP服务器功能
项目结构
常见问题
Q: 如何获取行政区划代码?
A: 行政区划代码是中国标准的区县编码。常见的代码包括:
- 110101: 北京市东城区
- 110102: 北京市西城区
- 310101: 上海市黄浦区
- 440101: 广州市荔湾区
您可以通过百度地图API的其他接口或相关文档获取完整的行政区划代码列表。
Q: 支持哪些坐标系?
A: 支持以下坐标系:
- WGS84: 国际标准坐标系
- BD09LL: 百度经纬度坐标系
- BD09MC: 百度墨卡托坐标系
- GCJ02: 国测局坐标系(火星坐标系)
Q: API调用频率限制?
A: 请参考百度地图开放平台的API调用频率限制说明。建议合理使用API,避免频繁调用。
MCP服务配置
本地使用配置
托管部署配置
注意:使用前请确保已在系统环境变量中设置 BAIDU_AK
。
许可证
MIT License
贡献
欢迎提交Issue和Pull Request来改进这个项目!
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Enables weather queries using Baidu Maps API, providing real-time weather conditions, 5-day forecasts, hourly predictions, lifestyle indices, and weather alerts. Supports queries by administrative district codes or coordinates with multiple coordinate systems.