mcpField
I
Initialize MCP Server using Cursor IDE

Initialize MCP Server using Cursor IDE

ローカル
github.com/msremigio開発ツール263 週間前に更新

Initialize MCP Server using Cursor IDE について

MCP 対応クライアントやアシスタント向けの、米国の気象警報と予報を取得する MCP サーバーです。National Weather Service API から最新の警報と5日間の予報を取得します。

主な機能

  1. 01州別の最新気象警報
  2. 02座標指定の5日間予報
  3. 03National Weather Service のデータ
  4. 04非同期リクエストとエラー処理

活用シーン

  1. 01州の発令中の警報を確認
  2. 02指定地点の5日間予報を取得

MCP 対応

stdio 経由で MCP クライアントに気象警報と予報のツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP Weather Server

米国内の各地域を対象に、リアルタイムの気象警報と予報を提供する Model Context Protocol(MCP)サーバーです。FastMCP で構築され、National Weather Service(NWS)API を利用しています。

作者

Matheus Remigio
連絡先:[email protected]

🌟 機能

  • 気象警報:米国の任意の州について、現在の気象警報を取得します
  • 気象予報:指定した座標の詳細な5日間の気象予報を取得します
  • リアルタイムデータ:公式の National Weather Service API を利用します
  • MCP 連携:MCP 対応クライアントや AI アシスタントとシームレスに連携します
  • 非同期処理のサポート:最適なパフォーマンスを実現するため、async/await で構築されています
  • エラー処理:適切なフォールバックを備えた堅牢なエラー処理を行います

🚀 クイックスタート

前提条件
  • Python 3.13 以降
  • uv パッケージマネージャー(推奨)
  • MCP 対応クライアント(Cursor IDE など)
インストール
  1. リポジトリをクローンする

    git clone https://github.com/msremigio/mcp-server-weather.git
    cd mcp_weather
    
  2. uv を使って依存関係をインストールする

    uv sync
    
  3. 仮想環境を有効にする

    uv shell
    
サーバーの起動
uv run weather.py

サーバーが起動し、stdio トランスポート経由で MCP プロトコルメッセージを受信します。

🔧 設定

MCP クライアントの設定

以下を MCP クライアントの設定(例:mcp.json)に追加します。

{
  "mcpServers": {
    "mcp_weather": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/your/mcp_weather/project",
        "run",
        "weather.py"
      ]
    }
  }
}

注:--directory のパスは、実際のプロジェクトの場所に合わせて更新してください。

📚 API リファレンス

利用可能なツール
1. 気象警報の取得(get_alerts)

米国の指定した州について、現在の気象警報を取得します。

パラメーター:

  • state (str):2文字の州略称(例:"CA"、"NY"、"TX")

戻り値:

  • 指定した州で発令中のすべての警報を含む整形済み文字列

応答例:

Event: Severe Thunderstorm Warning
Area: Northern California
Severity: Severe
Description: Severe thunderstorms capable of producing large hail and damaging winds
Instructions: Move to an interior room on the lowest floor of a building

---

Event: Flash Flood Watch
Area: Southern California
Severity: Moderate
Description: Heavy rainfall may cause flash flooding
Instructions: Monitor weather conditions and be prepared to take action
2. 気象予報の取得(get_forecast)

指定した座標の5日間の気象予報を取得します。

パラメーター:

  • latitude (str):緯度座標(10進度)
  • longitude (str):経度座標(10進度)

戻り値:

  • 今後5つの予報期間を含む整形済み文字列

応答例:

Tonight:
- Temperature: 45°F
- Wind: 5 mph NW
- Forecast: Clear skies with light winds

---

Tomorrow:
- Temperature: 72°F
- Wind: 10 mph SW
- Forecast: Sunny and warm with increasing clouds in the afternoon

🏗️ プロジェクト構成

mcp_weather/
├── weather.py          # Main MCP server implementation
├── main.py             # Simple entry point (placeholder)
├── pyproject.toml      # Project configuration and dependencies
├── mcp.json           # MCP client configuration template
├── README.md          # This file
├── uv.lock            # Dependency lock file
├── .python-version    # Python version specification
└── .venv/             # Virtual environment directory

🔌 依存関係

  • httpx:API リクエスト用の最新の非同期 HTTP クライアント
  • mcp:Model Context Protocol の実装
  • FastMCP:MCP サーバー構築用の FastMCP フレームワーク

🌐 データソース

このプロジェクトでは、以下を提供する National Weather Service(NWS)API を使用します。

  • リアルタイムの気象警報と注意報
  • 詳細な気象予報
  • 地理的な地点データ
  • 無料で信頼性の高い気象情報

🛠️ 開発

新しいツールの追加

気象関連の新しいツールを追加するには、次の手順に従います。

  1. weather.py に新しい非同期関数を作成します
  2. @mcp.tool() デコレーターを付けます
  3. 適切な型ヒントと docstring を追加します
  4. 既存のヘルパー関数を使用してツールのロジックを実装します
テスト
# Run the server in development mode
uv run weather.py

# Test with MCP client tools
# The server will respond to MCP protocol messages

📝 エラー処理

サーバーには、包括的なエラー処理が含まれています。

  • HTTP リクエストの失敗
  • API 応答の検証
  • ネットワークのタイムアウト(30秒の制限)
  • データがない場合の適切なフォールバック

🤝 貢献

  1. リポジトリをフォークします
  2. 機能ブランチを作成します
  3. 変更を加えます
  4. 該当する場合はテストを追加します
  5. プルリクエストを送信します

📄 ライセンス

MIT ライセンス。

🙏 謝辞

📞 サポート

問題、質問、貢献については、以下をご確認ください。

  • GitHub で issue を作成する
  • MCP のドキュメントを確認する
  • National Weather Service API のドキュメントを確認する

注:このサーバーで NWS API から気象データを取得するには、インターネットへの接続が必要です。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。