Weather MCP Server

Weather MCP Server

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.

Category
访问服务器

README

天气查询MCP服务器

基于百度地图API提供天气查询功能的MCP(Model Context Protocol)工具。

服务配置

{
  "mcpServers": {
    "weather-mcp": {
      "command": "python",
      "args": ["-m", "weather_mcp.server"]
    }
  }
}

环境变量配置: 请在系统环境变量中设置:

BAIDU_AK=your_baidu_ak_here

功能特性

  • 🌤️ 实时天气查询 - 获取当前天气状况、温度、湿度、风向等信息
  • 📅 天气预报 - 提供未来5天的详细天气预报
  • 📊 生活指数 - 包含晨练、洗车、感冒、紫外线、穿衣、运动等生活指数
  • ⚠️ 气象预警 - 实时获取气象预警信息
  • 逐小时预报 - 24小时逐小时天气预报
  • 🗺️ 多种查询方式 - 支持行政区划代码和经纬度坐标查询

安装依赖

pip install -r requirements.txt

配置

设置系统环境变量:

Windows

set BAIDU_AK=your_baidu_ak_here

Linux/macOS

export BAIDU_AK=your_baidu_ak_here

或者在系统环境变量中永久设置 BAIDU_AK

获取百度地图API密钥

  1. 访问 百度地图开放平台
  2. 注册并登录账号
  3. 创建应用并获取AK(API Key)
  4. 确保开通天气服务权限

使用方法

启动MCP服务器

python server.py

工具说明

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_idlocation 必须提供其中一个。

使用示例

1. 使用行政区划代码查询北京东城区天气

{
  "name": "get_weather",
  "arguments": {
    "district_id": "110101",
    "data_type": "all"
  }
}

2. 使用经纬度查询天安门广场天气

{
  "name": "get_weather",
  "arguments": {
    "location": "116.404,39.915",
    "data_type": "all",
    "coordtype": "wgs84"
  }
}

3. 只查询实时天气

{
  "name": "get_weather",
  "arguments": {
    "district_id": "110101",
    "data_type": "now"
  }
}

测试

测试百度地图API连接

python test_baidu_api.py

测试MCP服务器功能

python test_mcp_server.py

项目结构

weather_query/
├── server.py              # MCP服务器主文件
├── requirements.txt        # Python依赖
├── .env                   # 环境变量配置
├── .env.example          # 环境变量模板
├── test_baidu_api.py     # API测试脚本
├── test_mcp_server.py    # MCP服务器测试脚本
├── pyproject.toml        # 项目配置
├── setup.py              # 安装脚本
├── __init__.py           # 包初始化文件
└── README.md             # 项目说明文档

常见问题

Q: 如何获取行政区划代码?

A: 行政区划代码是中国标准的区县编码。常见的代码包括:

  • 110101: 北京市东城区
  • 110102: 北京市西城区
  • 310101: 上海市黄浦区
  • 440101: 广州市荔湾区

您可以通过百度地图API的其他接口或相关文档获取完整的行政区划代码列表。

Q: 支持哪些坐标系?

A: 支持以下坐标系:

  • WGS84: 国际标准坐标系
  • BD09LL: 百度经纬度坐标系
  • BD09MC: 百度墨卡托坐标系
  • GCJ02: 国测局坐标系(火星坐标系)

Q: API调用频率限制?

A: 请参考百度地图开放平台的API调用频率限制说明。建议合理使用API,避免频繁调用。

MCP服务配置

本地使用配置

{
  "mcpServers": {
    "weather-mcp": {
      "command": "python",
      "args": ["-m", "weather_mcp.server"]
    }
  }
}

托管部署配置

{
  "mcpServers": {
    "weather-mcp": {
      "command": "python",
      "args": ["-m", "weather_mcp.server"]
    }
  }
}

注意:使用前请确保已在系统环境变量中设置 BAIDU_AK

许可证

MIT License

贡献

欢迎提交Issue和Pull Request来改进这个项目!

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选