Weather MCP Service – README | MCP Marketplace

✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

Weather MCP Service

一个基于 Model Control Protocol (MCP) 的天气信息服务,提供天气预报和警报查询功能。

功能

  • 获取美国各州的天气警报(get_alerts
  • 通过经纬度查询天气预报(get_forecast

技术栈

  • Python 3.11+
  • MCP (Model Control Protocol)
  • FastMCP 服务器
  • LangGraph + LangChain
  • SSE (Server-Sent Events) 传输

安装

  1. 克隆仓库:

    git clone https://github.com/haichaozheng/weather-mcp.git
    cd weather-mcp
    
  2. 创建虚拟环境:

    # 使用 Python 标准库
    python -m venv weather_venv
    
    # 激活虚拟环境(Windows)
    weather_venvScriptsactivate
    
    # 激活虚拟环境(Linux/Mac)
    source weather_venv/bin/activate
    
  3. 安装依赖:

    pip install -r requirements.txt
    
  4. 配置环境变量:

    • 创建 .env 文件,参考 .env.example 文件格式
    • 添加必要的 API 密钥

使用方法

  1. 启动 Weather 服务器:

    python weather/weather.py
    

    服务器将在 http://localhost:8000 上启动,使用 SSE 传输。

  2. 在另一个终端窗口中运行客户端:

    python weather/mcp_client.py
    

    客户端将连接到服务器并执行一系列天气查询测试。

API 功能

天气警报查询

get_alerts(state: str) -> str
  • state: 两字母美国州代码(例如:CA, NY)
  • 返回:该州的活跃天气警报列表

天气预报查询

get_forecast(latitude: float, longitude: float) -> str
  • latitude: 位置纬度
  • longitude: 位置经度
  • 返回:该位置的天气预报

项目结构

weather-mcp/ ├── weather/ │ ├── weather.py # 主服务器文件 │ ├── mcp_client.py # 客户端测试文件 ├── requirements.txt # 项目依赖 ├── .env.example # 环境变量示例 └── README.md # 本文档


## 环境变量配置

项目使用 `.env` 文件存储环境变量和敏感信息。请按照以下步骤设置:

1. 复制环境变量模板文件:
   ```bash
   cp .env.example .env
  1. 编辑 .env 文件,填入您的实际配置:

    MOONSHOT_API_KEY=your_actual_api_key
    
  2. 确保 .env 文件不会被提交到版本控制系统中

Featured Templates

View More
Verified Icon
AI Assistants
Speech to Text
134 1510
Data Analysis
Pharmacy Admin Panel
238 1704
AI Assistants
Talk with Claude 3
156 1165
AI Assistants
AI Chatbot Starter Kit v0.1
130 667
Customer service
Multi-language AI Translator
135 645
Customer service
AI-Powered Product List Manager
147 625

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.