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

MCP Server Python Getting Started

MCP Server

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

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
位置天气服务器开发PythonClaudeClaude

安装说明

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

作者 / 组织

agentventure

提供方

agentventure

最后核验

2026/5/17 20:19

快速接入

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

命令预览

pip install -r requirements.txt

详细介绍

气象MCP服务器

模型上下文协议(MCP)服务器,使用美国国家气象局(NWS)API提供天气信息和警报。此服务器提供用于检索美国各地天气预报和活动天气警报的工具。

关于本项目

该项目基于 模型上下文协议(MCP)入门教程 对于服务器开发人员来说。本教程为构建MCP服务器并将其与Claude for Desktop等客户端集成提供了全面的指南。

此天气服务器的原始代码示例可以在 MCP快速入门资源库.

特性

  • 天气警报:使用两个字母的州代码获取美国任何州的活动天气警报
  • 天气预报:检索特定坐标的详细天气预报
  • 实时数据:使用官方国家气象局API获取准确、最新的信息
  • 易于集成:简单的MCP服务器,可以与任何兼容MCP的客户端集成

安装

先决条件

  • Python 3.8或更高版本
  • uv 包管理器(推荐)或 pip

设置

  1. 克隆存储库:
git clone https://github.com/agentventure/mcp_server_python_getting_started.git
cd mcp_server_python_getting_started
  1. 使用安装依赖项 uv:
uv sync

或使用 pip:

pip install -r requirements.txt

用法

运行服务器

启动MCP服务器:

uv run weather.py

服务器将启动并通过stdio进行通信,准备处理来自MCP客户端的请求。

可用工具

1.获取天气警报(get_alerts)

检索美国某个州的活动天气警报。

参数:

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

例子:

# Get alerts for California
alerts = await get_alerts("CA")

响应格式:

Event: Severe Thunderstorm Warning
Area: Northern California
Severity: Severe
Description: Severe thunderstorm warning in effect...
Instructions: Take shelter immediately...

---

Event: Flood Watch
Area: Central Valley
Severity: Moderate
Description: Flood watch in effect...
Instructions: Monitor weather conditions...

2.获取天气预报(get_forecast)

获取特定地点的详细天气预报。

参数:

  • latitude (float):位置的纬度坐标
  • longitude (float):位置的经度坐标

例子:

# Get forecast for San Francisco (37.7749, -122.4194)
forecast = await get_forecast(37.7749, -122.4194)

响应格式:

Tonight:
Temperature: 55°F
Wind: 10 mph NW
Forecast: Clear skies with light winds. Low around 55.

---

Tomorrow:
Temperature: 68°F
Wind: 15 mph W
Forecast: Sunny with increasing clouds in the afternoon. High near 68.

---

Tomorrow Night:
Temperature: 52°F
Wind: 8 mph NW
Forecast: Partly cloudy with light winds. Low around 52.

api信息

此服务器使用 美国国家气象局API,它提供:

  • 不需要API密钥:免费获取天气数据
  • 实时更新:数据全天频繁更新
  • 全面覆盖:覆盖美国所有州和地区
  • 可靠的服务:政府官方气象服务

数据源

  • 警报:来自NWS的活跃天气警报
  • 预测:详细的天气预报,包括温度、风和条件
  • 地理数据:美国任何地点的基于点的天气信息

错误处理

该服务器包括强大的错误处理功能,用于:

  • 网络连接问题
  • 坐标或州代码无效
  • API服务不可用
  • 超时条件

当发生错误时,服务器会返回信息性错误消息以帮助调试。

发展

项目结构

weather/
├── weather.py          # Main MCP server implementation
├── main.py            # Entry point for running the server
├── pyproject.toml     # Project configuration and dependencies
├── README.md          # This file
└── .gitignore         # Git ignore rules

依赖项

  • mcp:模型上下文协议服务器框架
  • httpx:API请求的异步HTTP客户端
  • fastmcp:FastMCP服务器实施

添加新功能

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

  1. 在中创建一个新的异步函数 weather.py
  2. @mcp.tool()
  3. 添加适当的类型提示和文档字符串
  4. 使用现有的实现错误处理 make_nws_request 助手

贡献

欢迎投稿!请随时提交拉取请求。

许可证

这个项目是开源的,可以在MIT许可证下使用。

支持

对于问题或疑问:

  1. 检查 美国国家气象局API文件
  2. 查阅MCP文档,网址为 模型上下文协议.io
  3. 在此存储库中打开问题

______________________________________________________________________

备注:此服务器专为教育和发展目的而设计。对于生产使用,考虑根据您的特定要求实施速率限制和额外的错误处理。

目录标签

目录标签

位置天气服务器开发PythonClaude天气服务本地部署数据API实时数据气象信息

支持客户端

Claude

接入字段

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

stdio

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

none

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

remote-capable

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiononeremote-capable

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

安装前确认

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

来源信息

继续浏览同类 MCP