Skip to main content
Glama
Kohei-Suzuki22

Weather MCP Server

Weather MCP Server

Model Context Protocol (MCP) サーバーの実装プロジェクトです。天気情報を提供するツールを実装します。

参考ドキュメント

システム要件

  • Python 3.10以上

  • uv (Pythonパッケージマネージャー)

セットアップ

# 仮想環境の作成とアクティベート
uv venv
source .venv/bin/activate

# 依存関係のインストール
uv add "mcp[cli]" httpx

実行方法

uv run main.py

提供するツール

ツール名

説明

get_alerts

米国の州の気象警報を取得

get_forecast

緯度・経度から天気予報を取得

Claude for Desktop への統合

~/Library/Application Support/Claude/claude_desktop_config.json を編集:

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

処理の流れ (What's happening under the hood)

Claude for Desktopでの質問から回答までの流れ:

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│  Claude Desktop │     │   MCP Server    │     │  External API   │
│    (Client)     │     │   (weather)     │     │  (weather.gov)  │
└────────┬────────┘     └────────┬────────┘     └────────┬────────┘
         │                       │                       │
         │  1. ユーザーが質問     │                       │
         │  「サクラメントの天気は?」                      │
         │                       │                       │
         │  2. Claudeが利用可能な │                       │
         │     ツールを分析       │                       │
         │                       │                       │
         │  3. ツール実行リクエスト│                       │
         │  (JSON-RPC over STDIO)│                       │
         │──────────────────────>│                       │
         │                       │  4. 外部API呼び出し    │
         │                       │──────────────────────>│
         │                       │                       │
         │                       │  5. APIレスポンス      │
         │                       │<──────────────────────│
         │  6. ツール実行結果     │                       │
         │<──────────────────────│                       │
         │                       │                       │
         │  7. Claudeが結果を解釈 │                       │
         │     して自然言語で回答 │                       │
         │                       │                       │

ポイント

  • 自動起動: Claude Desktopが設定に基づいてMCPサーバープロセスを起動・管理

  • ツール検出: クライアントがサーバーの tools/list を呼び出して利用可能なツールを取得

  • STDIO通信: 標準入出力を介してJSON-RPCメッセージをやり取り

  • 非同期実行: API呼び出しなどのI/O操作を効率的に処理

注意事項

  • STDIOベースのサーバーでは print() を使用しないこと(JSON-RPCメッセージが破損する)

  • ログ出力には logging モジュールを使用する

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kohei-Suzuki22/weather_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server