Skip to main content
Glama

AMap Weather MCP

一个基于高德地图 API 的 MCP(Model Context Protocol)服务器,提供实时天气查询和城市代码搜索功能。

功能特性

  • 🌤️ 实时天气查询 - 支持按城市名称或城市代码查询天气信息

  • 📍 城市搜索 - 支持精确匹配和模糊搜索中国所有城市

  • 📊 4日天气预报 - 获取详细的天气预报数据

  • 🔄 多种查询方式

    • 按城市名称查询(如:杭州市、北京市)

    • 按行政代码(adcode)查询

    • 列出所有可用城市

    • 按 adcode 获取城市信息

系统需求

安装

1. 克隆或下载项目

git clone <repository-url> cd amap-weather-mcp

2. 安装依赖

使用 uv 包管理器(推荐):

uv pip install -r requirements.txt

或使用 pip:

pip install -r requirements.txt

配置

环境变量

需要配置以下环境变量:

环境变量

说明

必需

AMAP_API_KEY

高德地图 API 密钥

✅ 必需

使用 Claude Desktop 集成(或者使用其他方式)

将以下配置添加到 Claude Desktop 的 claude_desktop_config.json

{ "mcpServers": { "amap-weather-mcp": { "name": "amap-weather-mcp", "type": "stdio", "isActive": true, "command": "uv", "args": [ "--directory", "/path/to/amap-weather-mcp", "run", "main.py" ], "env": { "AMAP_API_KEY": "your-api-key-here" } } } }

使用方式

可用工具

1. get_weather_by_city_name

按城市名称获取天气信息

参数:

  • city_name (string): 城市名称,如 "杭州市"、"北京市"

返回: 实时天气和 4 天预报数据

2. get_weather_by_city_code

按城市行政代码获取天气信息

参数:

  • city_code (string): 城市行政代码,如 "110100"(北京市朝阳区)

返回: 实时天气和 4 天预报数据

3. search_city

搜索城市(支持精确和模糊匹配)

参数:

  • city_name (string): 要搜索的城市名称

返回: 匹配的城市列表及其代码

4. get_city_by_adcode

按 adcode 获取城市信息

参数:

  • adcode (string): 行政代码,如 "110000"(北京市)

返回: 城市信息对象

5. list_all_cities

列出所有可用城市

参数:

  • limit (integer): 返回结果数量限制,默认 50,最大 200

返回: 城市列表,包括总数量

项目结构

amap-weather-mcp/ ├── main.py # 主程序文件 ├── city_codes.json # 城市代码数据库 ├── requirements.txt # 项目依赖 ├── .gitignore # Git 忽略规则 └── README.md # 本文件

依赖包

  • httpx - 异步 HTTP 客户端

  • requests - HTTP 库

  • mcp - Model Context Protocol 实现

开发说明

项目特点

  • 使用 Python asyncio 实现异步操作

  • 集成 MCP 标准,支持与 Claude AI 无缝集成

  • 高效的城市代码索引,支持快速查询

  • 完善的错误处理和日志记录

日志

程序使用 Python 的 logging 模块记录信息,日志级别为 INFO。

许可证

MIT License

支持

如有问题或建议,欢迎提交 Issue 或 Pull Request。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ChuranNeko/amap-weather-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server