Token导航 LogoToken导航TokenDH.com
Nws MCP Server logo
地图位置stdio官方级别未说明来源级核验

Nws MCP Server

MCP Server

一个基于Model Context Protocol (MCP)的天气数据服务器,提供美国地区的天气预报和警报信息。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
位置天气PythonClaude实时数据Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

nitvob

提供方

nitvob

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run weather.py

详细介绍

气象MCP服务器

一种模型上下文协议(MCP)服务器,使用美国国家气象局API提供天气信息。此服务器公开了用于获取美国各地天气预报和警报的工具。

特性

  • 🌤️ 天气预报:使用纬度/经度坐标获取美国任何地点的详细天气预报
  • 🚨 天气警报:检索美国任何州的活动天气警报
  • 🔌 MCP集成:与Claude无缝协作,适用于桌面和其他MCP兼容客户端
  • 📡 实时数据:从美国国家气象局API获取实时数据

可用工具

get-forecast

获取特定位置的天气预报。

参数:

  • latitude (浮动):位置的纬度(-90到90)
  • longitude (浮动):位置的经度(-180到180)

示例用法:

  • “旧金山的天气预报是什么?”(克劳德将使用坐标约37.7749,-122.4194)
  • “给我纬度47.6062,经度-122.3321的天气预报”(西雅图)

get-alerts

获取美国某个州的活跃天气警报。

参数:

  • state (string):两个字母的美国州代码(例如,“CA”、“NY”、“TX”)

示例用法:

  • “加利福尼亚州的活跃天气警报是什么?”
  • “得克萨斯州有天气预警吗?”

先决条件

  • Python 3.10或更高版本
  • uv 包管理器
  • 访问互联网(用于NWS API调用)

安装

  1. 安装uv (如果尚未安装):
   # macOS/Linux
   curl -LsSf https://astral.sh/uv/install.sh | sh

   # Windows
   powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
  1. 克隆或导航到项目目录:
   cd weather
  1. 安装依赖项:
   uv sync

运行服务器

独立测试

要直接测试服务器,请执行以下操作:

uv run weather.py

服务器将启动并监听标准输入/输出。您可以使用MCP检查器或其他MCP客户端对其进行测试。

Claude桌面版

  1. 安装桌面版Claudeclaude.ai/下载
  1. 为桌面配置Claude 通过编辑配置文件:

macOS/Linux:

   code ~/Library/Application\ Support/Claude/claude_desktop_config.json

窗户:

   code $env:AppData\Claude\claude_desktop_config.json
  1. 添加天气服务器配置:

macOS/Linux:

   {
     "mcpServers": {
       "weather": {
         "command": "uv",
         "args": [
           "--directory",
           "/ABSOLUTE/PATH/TO/YOUR/weather",
           "run",
           "weather.py"
         ]
       }
     }
   }

窗户:

   {
     "mcpServers": {
       "weather": {
         "command": "uv",
         "args": [
           "--directory",
           "C:\\ABSOLUTE\\PATH\\TO\\YOUR\\weather",
           "run",
           "weather.py"
         ]
       }
     }
   }
  1. 重新启动桌面版的Claude 完全
  1. 验证集成 在Claude for Desktop中查找“搜索和工具”图标

使用示例

一旦配置了Claude for Desktop,您可以提出以下问题:

  • “萨克拉门托的天气预报是什么?”
  • “给我纽约市的天气预报”
  • “佛罗里达州的活跃天气警报是什么?”
  • “得克萨斯州有任何恶劣天气预警吗?”
  • “坐标40.7128,-74.0060处的天气怎么样?”(纽约市)

API详细信息

此服务器使用美国国家气象局API(API.weither.gov),该API:

  • 提供免费访问美国天气数据
  • 不需要API密钥
  • 以JSON格式返回数据
  • 仅覆盖美国地区

项目结构

weather/
├── main.py          # Entry point (if needed)
├── weather.py       # Main MCP server implementation
├── pyproject.toml   # Project configuration and dependencies
├── uv.lock         # Dependency lock file
└── README.md       # This file

故障排除

服务器未在Claude中显示

  1. 检查配置文件语法 -确保JSON有效
  1. 验证绝对路径 -使用完整路径,而不是相对路径
  1. 检查克劳德的日志:
   # macOS/Linux
   tail -f ~/Library/Logs/Claude/mcp*.log

   # Windows
   # Check logs in %AppData%\Claude\logs\
  1. 重新启动桌面版的Claude 完全

工具调用失败

  1. 验证服务器是否独立运行:
   uv run weather.py
  1. 检查速率限制 -NWS API有费率限制
  2. 确保坐标为美国位置 -NWS API仅适用于美国
  3. 检查互联网连接 -服务器需要访问api.weather.gov

常见错误消息

  • “检索网格点数据失败”:通常意味着坐标在美国境外
  • “此状态没有活动警报”:不是错误-只是表示没有当前警报
  • “无法获取预测数据”:网络问题或坐标无效

发展

添加新工具

要添加新的天气相关工具,请执行以下操作:

  1. 使用添加工具 @mcp.tool() 装饰器
  2. 使用适当的类型提示实现async函数
  3. 添加错误处理和验证
  4. 测试用 uv run weather.py

依赖项

关键依赖关系(由管理 uv):

  • mcp:模型上下文协议SDK
  • httpx:API请求的HTTP客户端
  • fastmcp:简化的MCP服务器框架

许可证

该项目是模型上下文协议生态系统的一部分。检查其许可证的各个依赖关系。

贡献

请随时提交问题和拉取请求以改进天气服务器功能。

相关资源

目录标签

目录标签

位置天气PythonClaude实时数据天气服务本地部署数据APIMCP集成美国天气

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP