气象数据检索MCP服务器

JMA Data MCP 是一款用于检索日本气象厅(JMA)AMeDAS观测数据、过去数据和天气预报的MCP服务器,内置全国1,286个观测站快照,支持按地点名和坐标检索观测站、获取当前天气、预报及历史/时间序列天气数据,适用于气象数据查询与天气信息服务场景。

  • by koizumikento
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 koizumikento/jma-data-mcp

使用说明

JMA Data MCP

気象庁のAMeDAS観測・過去データと天気予報を検索するMCPサーバーです。全国1,286観測所のスナップショットを同梱し、地点名・座標から観測所を検索できます。

実行

Python 3.10+ と uv が必要です。

uvx --from git+https://github.com/koizumikento/jma-data-mcp.git@master jma-data-mcp

MCPクライアント設定例:

{
  "mcpServers": {
    "jma-data": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/koizumikento/jma-data-mcp.git@master",
        "jma-data-mcp"
      ]
    }
  }
}

引数なし、または serve でMCPサーバーを起動します。station、weather、forecast、history サブコマンドからCLIとしても利用できます。

MCP tools

  • 観測所: get_station_info、search_stations、search_nearby_stations、get_stations_of_type、list_stations
  • 観測・予報: get_current_weather、get_weather_by_location、get_forecast、list_prefectures
  • 過去・時系列: get_historical_weather、get_weather_time_series

過去データは気象庁側で提供される直近約1〜2週間、時系列は最大168時間を対象とします。

Sitesでの実行

sites/ に認証付き POST /mcp Worker ESM adapterとbuild設定があります。 全11 toolsは既存Python backendで実行します。Sitesとは別にHTTPS接続可能なPython hostが必要です。 stdio・CLI・Python libraryはそのまま利用できます。設定、secret名、再現手順、検証範囲は上記手順を参照してください。

データ出典・利用条件

出典: 気象庁ホームページ

同梱する観測所表は気象庁公開データを本ソフトウェア用に加工しています。取得データを利用・再配布する際は、気象庁の利用規約と気象業務法上の制約を確認してください。本ソフトウェアは独自の予報を生成しません。

開発

uv sync --frozen
uv run ruff check .
uv run mypy jma_data_mcp
uv run pytest -m "not integration"
uv run python scripts/check_amedas_snapshot.py
uv build
npm --prefix sites test
npm --prefix sites run build
npm --prefix sites run validate

Sites契約検証にはNode 22+も必要です。テストではJMA取得をfixtureで置き換え、使用したloopbackサーバーを停止します。

観測所スナップショットの差分チェックは週次でも実行されます。

License

Windows EXE: release security checks and outstanding distribution work.

MIT