weather
MCP server that provides real-time weather and daily forecast for the nearest city station from China Meteorological Administration based on given latitude and longitude.
README
中国天气 MCP Server(供 Cline 使用)
通过经纬度查询中国天气的 MCP Server。数据源为**中央气象台(中国气象局)**的公开接口 http://www.nmc.cn/rest/weather。
- 输入:任意经纬度(例如
latitude=39.9087, longitude=116.3975北京) - 输出:该位置最近的市级站点天气实况 + 今日预报(温度、湿度、体感、风向风力、日出日落等)
精度说明:内置一份覆盖全国地级市/直辖市的"城市 → 经纬度 → 气象台站点代码"索引(857 个站点)。 传入经纬度后,先按大圆距离找最近的站点,再调中央气象台接口。距离通常为 15~50 公里,适合日常天气查询,无需精确到区县。
文件说明
| 文件 | 作用 |
|---|---|
cma_weather.py |
天气模块:内置站点索引 + 最近站点查找 + 调用中央气象台接口 |
weather_mcp.py |
MCP Server:用 FastMCP 把天气查询封装成工具,供 Cline 调用 |
requirements.txt |
依赖:mcp(Python SDK) |
.mcp.json |
Cline 的 MCP Server 配置(自动被识别) |
安装
# 本机已用 Python 3.13 测试。安装 mcp 依赖:
py -3.13 -m pip install -r requirements.txt
# 如果上面走代理失败,可禁用代理并加清华镜像:
py -3.13 -m pip install -r requirements.txt --proxy "" -i https://pypi.tuna.tsinghua.edu.cn/simple
若本机没有
py启动器,改用python -m pip install -r requirements.txt即可。
命令行自测(不经过 Cline)
# 直接测试天气模块
py -3.13 cma_weather.py 39.9087 116.3975
# 直接调用 MCP 工具函数
py -3.13 -c "from weather_mcp import get_weather; print(get_weather(39.9087, 116.3975))"
在 Cline 中配置
方式一:项目级 .mcp.json(推荐)
本目录下已提供 .mcp.json。在 VS Code 中打开本项目目录后,打开 Cline 的 MCP 服务器 面板,Cline 会自动发现并加载它,显示 weather 服务。
内容如下(按需改成你机器上的 Python 路径):
{
"mcpServers": {
"weather": {
"type": "stdio",
"command": "C:\\Users\\34588\\AppData\\Local\\Programs\\Python\\Python313\\python.exe",
"args": ["d:\\ai_mcp_server\\weather_mcp.py"],
"env": {}
}
}
}
方式二:在 Cline 面板里手动添加
- 打开 Cline 侧边栏 → MCP Servers(服务器)标签。
- 点 + → 选择 command 类型。
- 填写:
- 名称:
weather - 命令:
C:\Users\34588\AppData\Local\Programs\Python\Python313\python.exe - 参数:
d:\ai_mcp_server\weather_mcp.py - 环境变量:空
- 名称:
- 保存后点 连接(Connect),看到
● weather已连接即可。
连接失败时看报错:
- 找不到 Python → 用
where python查路径后改.mcp.json里的command。- 缺依赖 → 先执行上面的 pip install。
使用方式
在 Cline 对话中直接提问即可,例如:
查一下北京天安门现在天气怎么样? 深圳下周一会不会下雨?
Cline 的模型会把地名解析为经纬度,然后调用 get_weather 工具:
- 工具名:
get_weather - 参数:
latitude(纬度)、longitude(经度)
常见问题
- 查询失败/超时:中央气象台接口需要能访问
nmc.cn。若在代理/VPN 环境下,请给 MCP 服务配置可用的代理或直连。 - 返回"天气: -":表示该站点实况字段暂无具体天气描述(源站数据如此),不影响温度等其它字段。
- 想更精确:如需区县级精确天气,可把
cma_weather.py中内置的站点索引扩充为区县级(重新跑构建脚本抓取更多站点即可)。
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。