mcp-server-weather

mcp-server-weather

3.2

If you are the rightful owner of mcp-server-weather and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The MCP Weather Server is a weather information service based on the Model Context Protocol (MCP), utilizing the OpenWeatherMap API to provide real-time weather data and forecasts.

MCP Weather Server

這是一個基於Model Context Protocol (MCP)的天氣資訊服務器,使用OpenWeatherMap API提供即時天氣資訊和天氣預報功能。

功能特點

  • 獲取城市當前天氣資訊
  • 獲取城市5天天氣預報
  • 支持中英文城市名稱查詢
  • 完整的錯誤處理機制
  • 豐富的天氣資訊顯示(溫度、濕度、風速等)

系統要求

  • Python >= 3.10
  • OpenWeatherMap API金鑰

安裝

  1. 確保您已安裝 Python 3.10 或更高版本
  2. 使用以下命令安裝依賴套件:
uv venv
uv pip install -r requirements.txt

配置

mcp.json 中配置您的OpenWeatherMap API金鑰:

{
  "mcpServers": {
    "weather": {
      "command": "uv",
      "args": ["--directory", ".", "run", "main.py"],
      "description": "天氣資訊伺服器 - 取得當前天氣和天氣預報",
      "env": {
        "OPENWEATHER_API_KEY": "your_api_key_here"
      }
    }
  }
}

使用方法

作為MCP服務器運行

python main.py

使用客戶端

python client.py

API參考

獲取當前天氣

get_current_weather(city: str) -> str
  • 參數:
    • city: 城市名稱(支持中英文)
  • 返回:格式化的當前天氣資訊

獲取天氣預報

get_weather_forecast(city: str, days: int = 5) -> str
  • 參數:
    • city: 城市名稱(支持中英文)
    • days: 預報天數(1-5天,預設5天)
  • 返回:格式化的天氣預報資訊

資源端點

  • weather://current/{city} - 獲取指定城市的當前天氣資源
  • weather://forecast/{city} - 獲取指定城市的天氣預報資源
  • weather://api-status - 獲取API狀態資訊

授權

MIT License

貢獻

歡迎提交問題和拉取請求!

致謝

部署

關於部署的詳細信息,請參考

支持的部署方式:

  • 直接部署(Python 環境)
  • Docker 部署
  • Docker Compose 部署
  • 系統服務部署(Linux)