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

knmi-mcp

KNMI气象数据MCP服务,提供荷兰境内实时天气信息查询

article

README

🚀 KNMI 天气 MCP 服务器

这是一个快速的MCP服务器,可提供荷兰皇家气象研究所(KNMI)气象站的实时天气数据。它能从最近的KNMI气象站获取任何位置的最新10分钟测量数据,为用户带来便捷的天气信息服务。

🚀 快速开始

本服务器可快速获取荷兰任何位置的实时天气数据,通过简单的配置和操作即可投入使用。

✨ 主要特性

  • 广泛的数据覆盖:可获取荷兰任何位置的天气数据。
  • 智能站点查找:自动查找最近的KNMI气象站。
  • 丰富的数据类型:提供实时测量数据,涵盖温度、湿度、风速和风向、降水量、能见度、大气压力等。
  • 自然语言解释:对天气状况进行自然语言解释。
  • 便捷的搜索功能:支持地点搜索功能。
  • 详细的日志记录:提供详细的日志记录,方便问题排查和数据追溯。

📦 安装指南

先决条件

  • Python 3.10 或更高版本
  • KNMI API 密钥(从 KNMI 数据平台 获取)
  • uv 包管理器

安装步骤

  1. 克隆仓库:
    git clone <repository-url>
    cd knmi-mcp
    
  2. 在项目根目录中创建一个 .env 文件:
    KNMI_API_KEY=your_api_key_here
    

💻 使用示例

运行服务器

使用Claude AI

要使用此应用程序与Claude AI一起运行,请在项目文件夹中执行以下命令:

uv run fastmcp install src/knmi_weather_mcp/server.py

这将向您的Claude配置文件(通常位于 ~/Library/Application Support/Claude/claude_desktop_config.json)添加以下配置:

{
    "KNMI 天气": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "fastmcp",
        "--with",
        "httpx",
        "--with",
        "netCDF4",
        "--with",
        "numpy",
        "--with",
        "pandas",
        "--with",
        "pydantic",
        "--with",
        "python-dotenv",
        "--with",
        "xarray",
        "fastmcp",
        "run",
        "/Users/<username>/<git location>/knmi-mcp/src/knmi_weather_mcp/server.py"
      ]
    }
}

⚠️ 重要提示

如果出现 spawn uv ENOENT 错误,请将 uv 命令替换为完整路径的 uv 命令。在 *nix 系统上,可以使用命令 which uv 找到。

手动运行

用于开发或独立使用:

uv run fastmcp run src/knmi_weather_mcp/server.py

可用工具

基础用法

  • 获取天气自然语言解释
await what_is_the_weather_like_in("Amsterdam")
  • 获取原始天气数据
await get_location_weather("Rotterdam")
  • 搜索地点
await search_location("Utrecht")
  • 查找最近气象站
await get_nearest_station(52.3676, 4.9041)

📚 详细文档

日志记录

应用程序日志存储在 logs/knmi_weather.log 文件中,提供有关 API 请求和响应、天气数据处理、错误消息、调试信息等方面的详细信息。

数据来源

此应用程序使用 KNMI 数据平台 API 从“Actuele10mindataKNMIstations”数据集获取数据,该数据集提供荷兰所有 KNMI 气象站的 10 分钟间隔测量值。

错误处理

该应用程序包括强大的错误处理功能,能够处理 API 密钥未设置或无效、无法连接到 KNMI 服务器、数据解析失败、网络问题等情况。

help

运行方式说明

cloud

托管运行

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

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

本地运行 / 其它方式

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

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