Knmi Mcp

Knmi Mcp

🚀 KNMI 天气 MCP 服务器

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

🚀 快速开始

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

✨ 主要特性

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

📦 安装指南

先决条件

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

安装步骤

  1. 克隆仓库:
    git clone 
    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///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 服务器、数据解析失败、网络问题等情况。

  • 0 关注
  • 0 收藏,29 浏览
  • system 提出于 2025-09-20 19:33

相似服务问题

相关AI产品