天气查询服务

SkyCast Weather MCP Server 是一个通过Open-Meteo APIs获取指定地点当前、每小时和每日天气预报的Model Context Protocol服务器,提供安全、无需密钥的接口,支持清晰格式化的输出。

  • by AusbelDev
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 AusbelDev/Skycast-MCP-server

使用说明

SkyCast Weather MCP 服务器

一个模型上下文协议(MCP)服务器,它利用Open-Meteo API为指定地点获取当前、每小时以及每日的天气预报。

目的

这款MCP服务器为助手提供了一个安全、无密钥的接口,以便根据人类地名查询天气,同时具备强大的错误处理能力和清晰、格式化的输出结果。

特点/特性

当前实施情况

  • weather_current - 获取当前天气状况(温度、体感温度、湿度、风力、降水量、天气代码)。
  • weather_hourly - 获取N小时的逐小时预报(默认24小时,范围限制为1–168小时)。
  • weather_daily - 获取N天的每日天气预报(默认7天,范围限制为1至16天)。
  • weather_raw - 返回一个修剪过的原始JSON快照,并可选地包含自定义查询参数。

APIs(应用程序编程接口)& Docs(文档)

  • 预报API:https://open-meteo.com/en/docs
  • 地理编码API:https://open-meteo.com/en/docs/geocoding-api
  • 认证:无需认证。

先决条件

  • 启用了MCP工具包的Docker Desktop
  • Docker MCP CLI 插件docker mcp)
  • 互联网连接

使用示例

在Claude Desktop中,尝试:

  • “获取东京当前天气,使用公制单位。” weather_current place="Tokyo" units="metric"
  • “波士顿未来12小时每小时天气预报(英制单位)。” weather_hourly place="Boston" hours="12" units="imperial"
  • “马德里未来10天的每日天气预报。” weather_daily place="Madrid" days="10"
  • “给我看看柏林的原始天气数据。” weather_raw place="Berlin"

建筑学

Claude Desktop → MCP网关 → SkyCast天气MCP服务器 → Open-Meteo(天气预报 + 地理编码) ↓ Docker Desktop(无需秘密信息)

发展

本地测试

# Run directly
python skycast_server.py

# List tools via MCP protocol
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | python skycast_server.py