Back to MCP directory
publicPublicdnsLocal runtime

mcp-a0c

一个基于MCP协议的双源天气服务器,整合和风天气和心知天气API,提供天气查询和预报功能,支持故障转移和快速响应。

article

README

🚀 双源天气 MCP 服务器

这是一个基于 Model Context Protocol (MCP) 的天气服务器,借助和风天气和心知天气 API 来提供天气数据。它支持故障转移功能,还能优先获取最快响应,为用户提供高效、稳定的天气信息服务。

🚀 快速开始

本服务器使用和风天气和心知天气 API 提供天气数据,支持故障转移和优先获取最快响应。以下是使用该服务器的基本步骤:

  1. 安装服务器(具体安装步骤见下方“📦 安装指南”)。
  2. 获取 API 密钥(具体获取方式见下方“API 密钥获取”)。
  3. 运行服务器(具体运行命令见下方“运行”)。
  4. 配置客户端(如在 Claude Desktop 中配置,具体配置方法见下方“在 Claude Desktop 中配置”)。

✨ 主要特性

  • 丰富的天气查询功能
    • 可查看当前天气(作为资源提供)。
    • 能获取指定城市的当前天气(工具)。
    • 可获取指定城市的天气预报(工具)。
  • 智能的 API 源选择:同时使用多个 API 源,自动选择最快响应的结果。
  • 全面的天气数据支持:支持最低/最高温度、湿度和风速数据。

📦 安装指南

# 克隆仓库
git clone <repository-url>
cd weather-mcp-server

# 安装依赖
npm install

# 配置环境变量
cp .env.example .env
# 编辑 .env 文件,添加你的API密钥

📚 详细文档

API 密钥获取

和风天气 API

  1. 访问 和风天气开发服务
  2. 注册账号并创建应用。
  3. 在控制台获取 API Key。

心知天气 API

  1. 访问 心知天气开发服务
  2. 注册账号并创建应用。
  3. 在控制台获取 API Key。

开发

# 构建项目
npm run build

# 监视模式(自动重新构建)
npm run watch

运行

npm start

MCP 模式说明

本服务器仅支持 Model Context Protocol (MCP) 模式运行,不提供 HTTP 服务器功能。MCP 是一种专为大型语言模型设计的协议,允许模型与外部工具和资源进行交互。

MCP 服务器特点

  • 使用标准输入/输出(stdio)与客户端通信。
  • 提供资源和工具供大型语言模型使用。
  • 支持结构化数据交换和错误处理。

可用资源

  • weather://{city} - 获取指定城市的当前天气。

可用工具

  • getCurrentWeather - 获取指定城市的当前天气。
  • getForecast - 获取指定城市的天气预报(支持 1 - 7 天)。

在 Claude Desktop 中配置

编辑 Claude Desktop 配置文件:

// macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
// Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "weather": {
      "command": "node",
      "args": ["你的完整路径/weather-mcp-server/build/index.js"],
      "env": {
        "QWEATHER_API_KEY": "你的和风天气API密钥",
        "SENIVERSE_API_KEY": "你的心知天气API密钥"
      }
    }
  }
}

调试

查看 MCP 的日志:

# macOS
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log

使用 MCP Inspector 调试

npx @modelcontextprotocol/inspector node 你的完整路径/weather-mcp-server/build/index.js

然后在浏览器中访问 http://localhost:5173。

故障转移机制

此服务器同时使用多个天气 API 源:

  1. 首先并行向和风天气和心知天气发送请求。
  2. 采用最先返回响应的 API 结果。
  3. 如果某个 API 失败,将自动切换到备用 API。
  4. 支持最低/最高温度、湿度和风速数据。

技术文档

🤝 贡献

欢迎提交问题和拉取请求!请参考 贡献指南 了解如何参与。

📄 许可证

MIT License


效果图

效果图

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client