双源天气 MCP 服务器

双源天气 MCP 服务器

qiangge2008

Research & Data
Visit Server

README

双源天气 MCP 服务器

这是一个基于 Model Context Protocol (MCP) 的天气服务器,使用和风天气和心知天气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. 所有API都失败时才会返回错误

技术文档

详细的技术文档可在 docs 目录中找到:

贡献

欢迎提交问题和拉取请求。

效果

alt text

许可

MIT

Recommended Servers

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

A Model Context Protocol (MCP) server that provides comprehensive cryptocurrency analysis using the CoinCap API. This server offers real-time price data, market analysis, and historical trends through an easy-to-use interface.

Featured
TypeScript
MCP PubMed Search

MCP PubMed Search

Server to search PubMed (PubMed is a free, online database that allows users to search for biomedical and life sciences literature). I have created on a day MCP came out but was on vacation, I saw someone post similar server in your DB, but figured to post mine.

Featured
Python
dbt Semantic Layer MCP Server

dbt Semantic Layer MCP Server

A server that enables querying the dbt Semantic Layer through natural language conversations with Claude Desktop and other AI assistants, allowing users to discover metrics, create queries, analyze data, and visualize results.

Featured
TypeScript
mixpanel

mixpanel

Connect to your Mixpanel data. Query events, retention, and funnel data from Mixpanel analytics.

Featured
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.

Featured
Python
Nefino MCP Server

Nefino MCP Server

Provides large language models with access to news and information about renewable energy projects in Germany, allowing filtering by location, topic (solar, wind, hydrogen), and date range.

Official
Python
Vectorize

Vectorize

Vectorize MCP server for advanced retrieval, Private Deep Research, Anything-to-Markdown file extraction and text chunking.

Official
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

A server that provides access to Mathematica documentation through FastMCP, enabling users to retrieve function documentation and list package symbols from Wolfram Mathematica.

Local
Python
kb-mcp-server

kb-mcp-server

An MCP server aimed to be portable, local, easy and convenient to support semantic/graph based retrieval of txtai "all in one" embeddings database. Any txtai embeddings db in tar.gz form can be loaded

Local
Python
Research MCP Server

Research MCP Server

The server functions as an MCP server to interact with Notion for retrieving and creating survey data, integrating with the Claude Desktop Client for conducting and reviewing surveys.

Local
Python