mcpField
G
GeoSphere Austria Weather

GeoSphere Austria Weather

ローカル
github.com地図・旅行12 日前に更新

GeoSphere Austria Weather について

GeoSphere Austria Weatherは、オーストリアとアルプス地域の現在の天気、時間別予報、暴風雨の見通し、大気質を提供するMCPサーバーです。GeoSphere Austriaのモデルデータを使い、対象地域外には対応しません。

主な機能

  1. 01INCAとAROMEによる現在の天気
  2. 02約60時間までの時間別予報
  3. 03突風と雷雨の見通し
  4. 04汚染物質濃度と欧州AQI
  5. 05簡潔なメートル法のMarkdown出力

活用シーン

  1. 01オーストリアの現地の天気確認
  2. 02アルプスの時間別予報に基づく予定調整
  3. 03暴風雨の時刻と突風の確認
  4. 04指定地点の大気質確認

MCP 対応

MCPクライアントに、現在の天気、時間別予報、暴風雨の見通し、大気質の4つのツールを提供します。各ツールには十進法の緯度と経度が必要です。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"slettmayer-geosphere": {
"command": "uvx",
"args": [
"geosphere-mcp-server"
]
}
}
}
起動コマンドuvx geosphere-mcp-server

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypigeosphere-mcp-server0.6.0

ツール

4

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
latitudenumberはい
longitudenumberはい

詳細

geosphere-mcp-server

PyPI Python License: MIT

Model Context Protocol を介して、オーストリアとアルプス地域の現在の気象状況、時間別予報、暴風雨の見通し、大気質を提供する気象用 MCP サーバーです。

GeoSphere Austria の高解像度データを提供します。対象は、AROME 数値予報、INCA 解析/ナウキャスト、降水確率用の C-LAEF アンサンブル、WRF-Chem 大気質予報です。世界全域を対象とする代替データはありません。AROME の格子範囲外の地点では範囲外の通知が返されるため、世界全域の情報が必要な場合は、グローバルな気象情報ソースと併用してください。すべての応答に、使用したデータセットが明記されます。

出力は、メートル法の単位を使った簡潔な絵文字付き Markdown 形式です。JSON の塊よりも、短く読みやすい回答が適しているスマートホームや音声アシスタントの LLM パイプライン向けに作られています。気象状況は物理パラメーターから導出され、Home Assistant の状態用語(sunny、partlycloudy、rainy、snowy、…)で報告されます。

対象範囲

場所get_current_weatherget_hourly_forecastget_storm_outlookget_air_quality
オーストリアINCA + ナウキャスト + AROMEAROME(≤60 h)+ C-LAEF 確率AROME、CAPE は CIN による条件付きWRF-Chem(3 km)
アルプス(AT 以外)AROME のみAROME(≤60 h)+ C-LAEF 確率AROME、CAPE は CIN による条件付きWRF-Chem(3 km)
その他の地域対象外対象外対象外対象外

対象範囲は API によって決まるもので、設定した境界ボックスによるものではありません。GeoSphere は格子範囲外の地点に対して HTTP 400 を返し、サーバーはそれを次のように表示します。

⚠️ Outside coverage — this server only serves Austria and the Alpine region.

この行は、一時的なエラー(⚠️ Timeout…、⚠️ No weather data available)とは意図的に区別されています。対象範囲外であることは地点に固有の永続的な性質であり、再試行しても解決しません。使用する格子名は意図的に記載していません。予報ツールは AROME(2.5 km)を、get_air_quality は WRF-Chem(3 km)を照会するため、ある格子の範囲内でも、別の格子の範囲外となる地点があります。

複数日にわたる予報はありません。 GeoSphere は AROME の約 60 時間先を超えるデータを公開していないため、このサーバーが提供できる最長の回答は、1 時間ごとの行でおよそ 2 日半分です。

インストール

すべてのツールには、10 進数形式の緯度/経度を渡してください。サーバーにジオコーダーはありません。呼び出し元の LLM が都市名を自ら座標に変換します。

Claude Desktop

Claude Desktop の設定(~/Library/Application Support/Claude/claude_desktop_config.json)に追加します。

{
  "mcpServers": {
    "geosphere": {
      "command": "uvx",
      "args": ["geosphere-mcp-server"]
    }
  }
}
Claude Code
claude mcp add geosphere -- uvx geosphere-mcp-server
ソースから(開発)
{
  "mcpServers": {
    "geosphere": {
      "command": "uvx",
      "args": ["--from", "/path/to/geosphere-mcp-server", "geosphere-mcp-server"]
    }
  }
}
Home Assistant

標準的な stdio MCP サーバーなので、stdio MCP サーバーをホストできる場所であればどこでも実行できます。Home Assistant の Assist パイプラインと併用することもできます(ほかの stdio MCP サーバーと同じ方法で登録してください)。音声エージェントには、回答対象とする場所の座標を渡すか、地名をジオコーディングさせてください。

ツール

get_current_weather

INCA、15 分間のナウキャスト、AROME による地点の現在の気象状況です。

パラメーター型デフォルト説明
latitudefloat必須10 進数形式の緯度(例:48.2208)
longitudefloat必須10 進数形式の経度(例:16.3738)
# Current Weather at 48.2208, 16.3738

🌡️ Temperature: 24.7°C (feels like 24.2°C)
🌤️ Condition: partlycloudy
💧 Humidity: 52%
💨 Wind: 2.9 m/s from 135° (gusts 7 m/s)
🌧️ Precipitation (last hour): 0 mm
📊 Pressure: 1016 hPa
☁️ Cloud cover: 30%
🕐 Timezone: Europe/Vienna (CEST)
📡 Source: GeoSphere (INCA + nowcast + AROME) — observed 15:20
get_hourly_forecast

AROME による1時間ごとの予報と、C-LAEF による降水確率です。最大約60時間先まで確認できます。

パラメーター型デフォルト説明
latitudefloatrequired10進数表記の緯度(例:48.2208)
longitudefloatrequired10進数表記の経度(例:16.3738)
hoursint24予報時間(1~60の範囲に制限されます)
startstringnow任意の ISO 8601 形式の開始時刻(例:2026-07-22T15:00)。予報はこの時刻以降から始まります
# 3-Hour Forecast for 48.2208, 16.3738

AROME model, reference 2026-07-22 12:00 CEST · Source: GeoSphere (AROME + C-LAEF ensemble)

Wed 2026-07-22
  15:00: 24.7°C — partlycloudy, wind 3 m/s
  16:00: 23.9°C — rainy, 1.2 mm (70% chance), wind 4 m/s
  17:00: 22.5°C — cloudy, wind 3 m/s

各時間は、地点の現地時間における日付の区切り見出し(%a %Y-%m-%d)の下にまとめられます。現地の日付が変わるたびに見出しが繰り返されるため、午前0時をまたぐ時間帯も明確です。指定した時間数が AROME の予報期間を超える場合は、予報期間の終了時点を示す注記が追加されます。それより先のデータはありません。降水のない時間帯では、降水と確率に関する部分は省略されます。

get_storm_outlook

荒天の見通し:最大瞬間風速と雷雨の発生時刻です。数値のみを報告し、危険度の判定は行いません。何を危険とみなすかは、呼び出し側の判断に委ねられます。

パラメーター型デフォルト説明
latitudefloatrequired10進数表記の緯度(例:48.2208)
longitudefloatrequired10進数表記の経度(例:16.3738)
# Storm Outlook for 48.2208, 16.3738

AROME model, reference 2026-08-10 14:00 CEST · Source: GeoSphere (AROME)

💨 Max gust next 1 h: 12 m/s (at Mon 2026-08-10 17:00)
💨 Max gust next 12 h: 24 m/s (at Mon 2026-08-10 20:00)
⛈️ Thunderstorm expected next 1 h: no
⚡ Next thunderstorm: Mon 2026-08-10 20:00 (CAPE 1800 J/kg)
🌡️ Max CAPE next 12 h: 1800 J/kg
🕐 Timezone: Europe/Vienna (CEST)

このツールを利用する前に知っておくべき動作が2つあります。

  • 予報期間は1時間単位で切り上げられます。 期間は現在の時刻を含む時間の開始時点から始まります。そのため、「next 1 h」の数値は、すでに始まっている時間とその次の時間の両方を対象とし、最大約2時間先の事象を報告することがあります。厳密に60分間の予報が必要な場合は、返されたタイムスタンプを自分で比較してください。
  • Next thunderstorm が過去の時刻になることがあります。 雷雨が現在進行中の時間に発生する場合、最大59分前の時刻が返されます。これは雷雨が発生中であることを意味します。未来の時刻だと思い込まず、負のリードタイムは0に補正してください。
  • 「警報なし」の場合も予報期間が示されます(none in the next 54 h)。AROME の公称予報期間は約60時間ですが、古い実行結果や途中で切り詰められた結果では、予報期間が短くなります。そのため、期間は実際に返された行を基準に測定されます。示された期間を超えて警報がないという意味ではありません。

雷雨時間とは、導出された状態が lightning/lightning-rainy である時間、または CAPE が 1000 J/kg 以上かつ抑制が弱く、さらに降水が予報されている時間です。後者の条件により、雷雪や雲データが欠落している時間も検出されます。また、降水を条件とすることで、CAPE が高いだけの乾燥した午後に信号が出ないようにしています。予報に利用可能な時間が含まれていない場合、Thunderstorm expected と Next thunderstorm は、確定的な回答ではなく unknown を返します。

get_air_quality

現在の汚染物質濃度と、今日・明日・明後日の欧州大気質指数です。

パラメーター型デフォルト説明
latitudefloatrequired10進数表記の緯度(例:48.2208)
longitudefloatrequired10進数表記の経度(例:16.3738)
# Air Quality at 48.2208, 16.3738

🏷️ European AQI: 2 (fair) today · 3 (moderate) tomorrow · 2 (fair) in 2 days
🌫️ Concentrations (16:00): NO₂ 18 µg/m³ · O₃ 92 µg/m³ · PM10 21 µg/m³ · PM2.5 12 µg/m³
🕐 Timezone: Europe/Vienna (CEST)
📡 Source: GeoSphere (WRF-Chem + daily AQI, 3 km)

AQI は GeoSphere が公開している EEA の1~6段階(1:良好~6:極めて悪い)で報告されます。併記できる元の数値指数はありません。これらはモデルによる予報であり、観測局での測定値ではありません。近隣の観測局の測定値と傾向は一致することがありますが、数値まで一致するとは限りません。

3 km グリッド内の地点でも、WRF-Chem の実行結果が古い、または不完全な場合はデータが空で返されることがあります。その場合、応答には No air-quality data available for this location と表示され、データソース名も示されます。これは対象範囲外である場合とは異なる回答です。

データソースと帰属表示

  • GeoSphere Austria Dataset API — AROME 予報、INCA 解析/ナウキャスト、C-LAEF アンサンブル、WRF-Chem 大気質データ。データは CC-BY 4.0 ライセンスの下で提供されています。© GeoSphere Austria.

この API はキー不要で、非営利利用を想定しています。データを再配布する場合は、帰属表示を残してください。

レート制限

GeoSphere Dataset API では、1 秒あたり 5 リクエスト、1 時間あたり 240 リクエストが許可されています。各呼び出しでは、並行リクエストが少数まとめて発行されます(現在の天気は 3 件、時間別の天気と大気質は 2 件、暴風雨の予報は 1 件)。HTTP 429 が返された場合、サーバーは API が短時間の待機を求めているときに 1 回だけ再試行し、それ以外の場合はレート制限の通知を返します。

開発

# Install dependencies (creates .venv from the locked versions)
uv sync

# Lint & format
ruff check .
ruff format .

# Run unit tests
pytest -m "not integration"

# Run integration tests (hits the live GeoSphere API)
pytest -m integration

ライセンス

MIT

コメント

MCP は初めてですか?

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

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