Skip to main content

天气 MCP 服务器

这是一个基于 FastMCP 构建的天气查询服务器,提供城市天气信息查询服务。

功能特点

  • 支持全球城市天气查询
  • 提供温度、湿度和天气描述信息
  • 支持摄氏度和华氏度温度单位切换
  • 基于 Model Context Protocol (MCP) 实现
  • 完整的日志记录

安装要求

  • Python 3.8+
  • OpenWeatherMap API 密钥
  • uv (Python 包管理工具)

快速开始

  1. 克隆仓库:
git clone <repository-url>
cd weather-mcp-server
  1. 安装依赖:
make install
  1. 设置环境变量: 创建 .env 文件并添加以下内容:
OPENWEATHER_API_KEY=你的OpenWeatherMap_API密钥
  1. 运行服务器:
make run

安装和使用

选项 1:使用 uvx(推荐)

使用 uvx 将自动从 PyPI 安装包,无需克隆仓库。将以下配置添加到 Claude Desktop 的配置文件 claude_desktop_config.json 中:

{
  "mcpServers": {
    "weather-mcp-server": {
      "command": "uvx",
      "args": [
        "weather-mcp-server"
      ],
      "env": {
        "OPENWEATHER_API_KEY": "你的OpenWeatherMap_API密钥"
      }
    }
  }
}

选项 2:本地开发模式

  1. 克隆仓库并安装依赖:
git clone <repository-url>
cd weather-mcp-server
make install
  1. 设置环境变量: 创建 .env 文件并添加以下内容:
OPENWEATHER_API_KEY=你的OpenWeatherMap_API密钥
  1. 在 Claude Desktop 配置文件中添加:
{
  "mcpServers": {
    "weather": {
      "command": "uv",
      "args": [
        "--directory",
        "path/to/src/weather_mcp_server",
        "run",
        "weather-mcp-server"
      ],
      "env": {
        "OPENWEATHER_API_KEY": "你的OpenWeatherMap_API密钥"
      }
    }
  }
}

配置文件位置:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json

重启 Claude Desktop 以加载新的 MCP 服务器。

开发

本项目使用 Makefile 来简化常用命令。

可用命令

make install  # 安装依赖
make format   # 格式化代码
make lint     # 运行代码检查
make clean    # 清理临时文件
make run      # 运行服务器

发布新版本

make release version=v0.1.0

MCP 工具

服务器提供以下 MCP 工具:

get_weather

获取指定城市的天气信息。

参数:

  • city: 城市名称(必填)
  • units: 温度单位(可选,默认为 "metric")
    • "metric": 摄氏度
    • "imperial": 华氏度

示例请求:

{
    "name": "get_weather",
    "kwargs": {
        "city": "Beijing",
        "units": "metric"
    }
}

示例响应:

{
    "temperature": 20.5,
    "humidity": 65,
    "description": "晴",
    "city": "Beijing"
}

现在您可以通过 Claude 使用自然语言命令与天气服务进行交互,例如:

  • "查看北京的天气"
  • "东京现在的温度是多少"
  • "伦敦的天气情况如何"

Metadata

Release files for weather-mcp-server 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for weather-mcp-server 1.0.1
File Size Uploaded
weather_mcp_server-1.0.1.tar.gz 17.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for weather-mcp-server 1.0.1
File Interpreter ABI Platform
weather_mcp_server-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 23.5 kB

Release files / weather_mcp_server-1.0.1.tar.gz

Download URL weather_mcp_server-1.0.1.tar.gz
Size 17.3 kB
Tags Source
SHA-256 checksum
How to use checksums
6c245dff1263256d5895d62f9038ca724934b3bd103a096c8226e61f6d245a3c
BLAKE2b-256 checksum
How to use checksums
4add6b71a322cc9cd536f2638538be424e8e53b042ec6e34704c866c364a7310
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / weather_mcp_server-1.0.1-py3-none-any.whl

Download URL weather_mcp_server-1.0.1-py3-none-any.whl
Size 6.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
94b009854c7858dd7f865b72f9163a5e5ed6132d1ffd6de877e032b7f2952a98
BLAKE2b-256 checksum
How to use checksums
8745cc3f43ddffef1667c1b821fe5f5930198f807a8a85a8265487304e68103f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page