Skip to main content

中国城市天气查询 MCP 服务

基于高德地图 API 的中国城市天气查询 Model Context Protocol (MCP) 服务。该服务允许用户通过简单的请求获取中国各城市的实时天气状况和未来几天的天气预报。

功能特点

  • 使用高德地图天气 API 获取精确的中国城市天气数据
  • 支持查询实时天气状况
  • 支持查询未来 3-4 天的天气预报
  • 支持智能城市名称识别,包括城市、区县级别的查询
  • 支持城市名称搜索功能
  • 实现为标准 MCP 服务,易于集成到 AI 应用中

安装说明

前提条件

  • 高德地图开发者 API 密钥(需通过环境变量配置)

安装步骤

  1. 克隆或下载本仓库
  2. 进入项目目录
  3. 使用 uv 安装依赖:
uv venv
source .venv/bin/activate
uv add "mcp[cli]" httpx

使用方法

启动 MCP 服务

如果你需要自行创建客户端测试该 MCP 服务,请手动启动。 在终端中执行以下命令启动 MCP 服务:

uv run weather.py

使用集成的 MCP 服务

在 Claude Desktop 中使用

如果想在 Claude Desktop 中使用,请添加服务器配置: 请在文本编辑器中打开 Claude for Desktop App 配置,路径参考如下 ~/Library/Application Support/Claude/claude_desktop_config.json 如果文件不存在,请确保创建该文件。

{
    "mcpServers": {
        "amap-weather-mcp-server": {
            "command": "uv",
            "args": [
                "--directory",
                "/ABSOLUTE/PATH/TO/PARENT/FOLDER/weather",
                "run",
                "weather.py"
            ],
            "env": {
                "AMAP_API_KEY": "YOUR_API_KEY_HERE"
            }
        }
    }
}

在 Cherry Studio 中使用

如下图所示配置即可: in-cherrystudio

调用服务

MCP 服务提供了三个主要工具函数用于天气查询:

  1. get_current_weather: 获取城市当前天气状况
  2. get_weather_forecast: 获取未来几天的天气预报
  3. search_city: 搜索城市名称

使用 MCP 客户端调用示例:

from mcp.client import Client

# 连接到服务
client = Client("amap-weather-mcp-server")

# 查询实时天气
current_weather = await client.get_current_weather("北京市")
print(current_weather)

# 查询天气预报
forecast = await client.get_weather_forecast("上海市")
print(forecast)

# 搜索城市名称
cities = await client.search_city("广州")
print(cities)

API 参考

get_current_weather

获取指定城市的实时天气数据。

参数:

  • city: 中国城市名称,需要包含省/市/县等行政区划标识,如"北京市"、"上海市"、"海珠区"等

返回: 格式化的城市实时天气信息字符串,包括:

  • 城市名称
  • 天气状况
  • 温度
  • 风向
  • 风力
  • 湿度
  • 发布时间

get_weather_forecast

获取指定城市的天气预报(未来3-4天)。

参数:

  • city: 中国城市名称,需要包含省/市/县等行政区划标识,如"北京市"、"上海市"、"浙江省杭州市"等

返回: 格式化的城市天气预报信息字符串,包括:

  • 城市名称
  • 未来几天的日期
  • 白天和夜间天气状况
  • 白天和夜间温度
  • 白天和夜间风向、风力

search_city

根据关键词搜索匹配的城市名称。

参数:

  • keyword: 城市名称关键词,建议包含省/市/县等行政区划标识,如"广州市"、"海珠区"等

返回: 包含匹配城市名称列表的字符串。

数据来源

本服务使用高德地图开放平台提供的天气数据 API:

注意事项

  • 该服务仅支持中国大陆地区的城市天气查询
  • 高德地图 API 可能有请求频率限制
  • 城市名称识别支持直接输入城市名称或区县名称(建议带上行政区划标识如"市"、"县"、"区"等)
  • 环境变量必须正确配置,否则API请求将失败

许可证

MIT 许可证

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

amapote_moni_mcp_server_xyt-0.1.9.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

amapote_moni_mcp_server_xyt-0.1.9-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file amapote_moni_mcp_server_xyt-0.1.9.tar.gz.

File metadata

File hashes

Hashes for amapote_moni_mcp_server_xyt-0.1.9.tar.gz
Algorithm Hash digest
SHA256 a947f8a1ac320f801f1784aa8f98d3cbb86871de67f1e1515bf340a1b49f4f42
MD5 ae38976793d60cbf8449bb4058bb766d
BLAKE2b-256 6736ec7f25e658dd9967584bd3abdc866e68ddcdf7b7ffa736d9b8b6e966737d

See more details on using hashes here.

File details

Details for the file amapote_moni_mcp_server_xyt-0.1.9-py3-none-any.whl.

File metadata

File hashes

Hashes for amapote_moni_mcp_server_xyt-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 6cd686d1afd8e8cbb9365133ca95323b295dc4d52c4706040ccca8ca9b5d765e
MD5 b22d18ed3ea5eb657d4a0ee277c8a7cd
BLAKE2b-256 32f2b1429b7a04c9a957222e938d6aa4394e443244524f2d0c270c93fd302c5d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.9 This release

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page