返回 MCP 目录
public公开dns本地运行

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

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端