mcpField
N
NOAA RTOFS MCP Server

NOAA RTOFS MCP Server

ローカル
github.com/mansurjisan科学・教育101 週間前に更新

NOAA RTOFS MCP Server について

NOAA RTOFS MCP Serverは、海洋研究者や分析担当者向けに全球海洋予報データを提供します。CoastWatch ERDDAPを通じて、海面水温、塩分、海流、深度プロファイルを扱います。

主な機能

  1. 01全球RTOFS予報データ
  2. 02海面水温
  3. 03塩分と海流
  4. 04水温・塩分プロファイル

活用シーン

  1. 01指定地点のSST予報確認
  2. 02海洋の深度プロファイル調査
  3. 03測線に沿った状況の比較

MCP 対応

MCPクライアントがRTOFS海洋予報データを照会できるツールを公開します。

設定

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

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

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

パッケージ
pypirtofs-mcp0.1.2

ツール

8

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

パラメーター型必須説明
timeanyいいえ
lat_endnumberはい
lon_endnumberはい
n_pointsintegerいいえ
variablestringいいえ
lat_startnumberはい
lon_startnumberはい
response_formatenumいいえmarkdown | json

詳細

OceanMCP

海洋・沿岸データのワークフロー向けに、個別にインストールできる MCP サーバーをまとめたモノレポです。

PyPI CI MCP Registry License: MIT

サーバー

サーバーPyPI説明
coops-mcpPyPINOAA CO-OPS の潮汐、水位、海流、気象データ
erddap-mcpPyPI80 以上の公開サーバーに対応する、汎用的な ERDDAP データアクセス
nhc-mcpPyPINHC の暴風雨経路、注意報、HURDAT2 のベストトラックデータ
recon-mcpPyPIハリケーン偵察データ(HDOB、Vortex Data Messages、ATCF の位置情報)
stofs-mcpPyPINOAA STOFS の高潮予測と観測データの検証
ofs-mcpPyPINOAA OFS の地域海洋モデル予測(水位、気温、塩分濃度)
rtofs-mcpPyPIHYCOM THREDDS 経由の NOAA RTOFS 全球海洋予測(SST、塩分濃度、海流、SSH)
ww3-mcpPyPIGFS-Wave(WAVEWATCH III)予測と NDBC ブイの波浪観測
ndbc-mcpPyPINOAA NDBC ブイの観測データ — 波浪、SST、風、気圧(1,300 以上の観測所)
winds-mcpPyPIASOS / AWOS 観測所の NWS 地上風観測データ
usgs-mcpPyPIUSGS Water Services — 河川流量、NWS/NWPS の洪水状況、ピークイベント
goes-mcpPyPINOAA GOES-18/19 の衛星画像 — 可視光、赤外線、水蒸気
adcirc-mcpPyPIADCIRC モデルのセットアップのデバッグ、パラメーター検索、設定の検証
schism-mcpPyPISCHISM モデルのセットアップのデバッグ、パラメーター検索、設定の検証

データサーバーに API キーは不要です — 上記のすべてのサーバーは、無料で公開されているデータセットを使用します。例外は hpc-system-mcp と ufs-runner-mcp(下記)で、実際の NOAA RDHPCS クラスターへのアクセスが必要です。また、ufs-runner-mcp は実際の Slurm ジョブを投入します。

このリポジトリには、PyPI にはまだ公開されていない追加のサーバーもあります(ソースからインストールしてください)。vdatum-mcp(鉛直基準面の変換)、hpc-system-mcp と ufs-runner-mcp(NOAA RDHPCS / UFS-Coastal HPC ワークフロー — クラスターへのアクセスが必要)、alert-mcp(CO-OPS のしきい値アラート機能)です。

このリポジトリには 19 番目のサーバー nos-workflow-mcp もありますが、実験段階で、現在も開発中です(完全な実装はまだマージされていないブランチにあり、main に含まれているのは最小限のサブセットのみです)。意図的に上の表から除外しており、一般利用の準備はまだ整っていません。

クイックスタート

PyPI からインストール
# uvx (recommended) — runs without permanent install, like npx for Python
uvx coops-mcp

# pip — install into current environment
pip install coops-mcp

# pipx — install in isolated environment with CLI entry point
pipx install coops-mcp

coops-mcp を、公開済みの任意のサーバーに置き換えてください:erddap-mcp、nhc-mcp、recon-mcp、stofs-mcp、ofs-mcp、rtofs-mcp、ww3-mcp、ndbc-mcp、winds-mcp、usgs-mcp、goes-mcp、adcirc-mcp、schism-mcp。

ソースからインストール
git clone https://github.com/oceanmodeling/ocean-mcp.git
cd ocean-mcp/servers/coops-mcp  # or any other server directory under servers/
uv sync
MCP クライアントを設定する

MCP 設定に追加します(例:プロジェクトの .mcp.json)。

PyPI パッケージを使用する場合(推奨):

{
  "mcpServers": {
    "coops": {
      "command": "uvx",
      "args": ["coops-mcp"]
    },
    "erddap": {
      "command": "uvx",
      "args": ["erddap-mcp"]
    },
    "nhc": {
      "command": "uvx",
      "args": ["nhc-mcp"]
    },
    "recon": {
      "command": "uvx",
      "args": ["recon-mcp"]
    },
    "stofs": {
      "command": "uvx",
      "args": ["stofs-mcp"]
    },
    "ofs": {
      "command": "uvx",
      "args": ["ofs-mcp"]
    },
    "rtofs": {
      "command": "uvx",
      "args": ["rtofs-mcp"]
    },
    "ww3": {
      "command": "uvx",
      "args": ["ww3-mcp"]
    }
  }
}
ローカルのソースチェックアウトを使用する場合
{
  "mcpServers": {
    "coops": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/coops-mcp", "python", "-m", "coops_mcp"]
    },
    "erddap": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/erddap-mcp", "python", "-m", "erddap_mcp"]
    },
    "nhc": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/nhc-mcp", "python", "-m", "nhc_mcp"]
    },
    "recon": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/recon-mcp", "python", "-m", "recon_mcp"]
    },
    "stofs": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/stofs-mcp", "python", "-m", "stofs_mcp"]
    },
    "ofs": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/ofs-mcp", "python", "-m", "ofs_mcp"]
    },
    "rtofs": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/rtofs-mcp", "python", "-m", "rtofs_mcp"]
    },
    "ww3": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/ww3-mcp", "python", "-m", "ww3_mcp"]
    }
  }
}

クエリの例

サーバーを設定すると、AI アシスタントに自然な言葉で質問できます。

CO-OPS のクエリ:

  • 「ニューヨーク州バッテリーの現在の水位を取得して」
  • 「マイアミビーチ付近の潮位観測所を探して」
  • 「サウスカロライナ州チャールストンの洪水統計は?」
  • 「サンフランシスコの海面水位の傾向を見せて」

ERDDAP のクエリ:

  • 「CoastWatch の海面水温データセットを検索して」
  • 「2024 年 1 月のカリフォルニア沿岸沖のクロロフィルデータを取得して」
  • 「米国東海岸を対象とする ERDDAP サーバーは?」
  • 「IOOS Gliders ERDDAP のグライダーデータセットをすべて一覧表示して」

NHC のクエリ:

  • 「現在、活動中の熱帯低気圧はある?」
  • 「ハリケーン・カトリーナの進路を見せて」
  • 「大西洋のカテゴリー 5 のハリケーンを検索して」
  • 「活動中の嵐の予報進路は?」

Recon のクエリ:

  • 「2024 年の大西洋シーズンの HDOB 偵察飛行を一覧表示して」
  • 「2024 年 10 月 7 日の HDOB 飛行高度観測データを取得して」
  • 「ハリケーン・ミルトンの Vortex Data Messages を見せて」
  • 「嵐 AL14 2024 の ATCF 航空機観測点データを取得して」

STOFS のクエリ:

  • 「ニューヨーク州バッテリーの STOFS 水位予報を取得して」
  • 「過去 24 時間のボストンにおける STOFS 予報と観測値を比較して」
  • 「予測水位が最も高い上位の観測所は?」
  • 「ニューオーリンズから 50 km 以内の STOFS 観測所を探して」

OFS のクエリ:

  • 「チェサピーク湾を対象とする OFS モデルは?」
  • 「CBOFS から緯度 38.98、経度 -76.48 の水位予報を取得して」
  • 「観測所 8571892 の CBOFS 水位と CO-OPS の観測値を比較して」
  • 「今日利用可能な NGOFS2 の予報サイクルを一覧表示して」

RTOFS のクエリ:

  • 「北緯 40°、西経 74°の RTOFS 海面水温予報を取得して」
  • 「メキシコ湾流の水温深度プロファイルを見せて」
  • 「現在 HYCOM THREDDS で利用可能な RTOFS データセットは?」
  • 「マイアミからバミューダまでの塩分の鉛直断面を取得して」
  • 「メキシコ湾の SST 領域予報を見せて」

WW3 のクエリ:

  • 「利用可能な GFS-Wave モデルのグリッドは?」
  • 「ケープ・ハッテラス付近の NDBC ブイを探して」
  • 「ブイ 41025 の最新の波浪観測データを取得して」
  • 「北緯 35°、西経 75°の今後 48 時間の GFS-Wave 予報を見せて」
  • 「波浪予報とブイ 41025 の観測値を比較して」

サーバー横断クエリ:

  • 「この ERDDAP ブイの位置付近にある CO-OPS 観測所を探して」
  • 「潮位観測所のデータと近隣の ERDDAP 衛星 SST を比較して」
  • 「メキシコ湾岸を脅かす活動中のハリケーンはある?ある場合は、ニューオーリンズの STOFS 高潮予報を見せて」
  • 「チェサピーク湾の CBOFS 水位予報を取得し、同じ観測所の CO-OPS 潮位予測と比較して」
  • 「バッテリー付近の ERDDAP 海面水温と、CO-OPS の現在の水位を見せて」
  • 「過去にメキシコ湾岸に上陸した NHC の嵐は?影響を受けた観測所の CO-OPS 洪水統計を見せて」
  • 「同じ場所の STOFS 格子予報と OFS 水位予報を取得して、比較して」

アーキテクチャ

各サーバーは、独自の pyproject.toml、依存関係、テストを備えた完全に独立した構成です。共通の規約については、docs/architecture.md をご覧ください。

サーバー間で共通するパターン:

  • MCP サーバーのフレームワークには FastMCP を使用
  • 非同期 HTTP クライアントには httpx を使用
  • Pydantic モデルを使用し、制約付きパラメーターには Literal[...] 型を使用
  • デフォルトでは読み取り専用ツールです。データ取得サーバーはデータを取得するだけで、変更は一切行いません。例外は、Slurm ジョブを送信・キャンセルする ufs-runner-mcp と、メモリ内のアラート状態を作成・一時停止・削除する alert-mcp の 2 つです。どちらも readOnlyHint=False に設定されたツールは少数です
  • ツールに応じて、response_format の出力形式は Markdown(デフォルト)、JSON、GeoJSON、または画像
  • 次のアクションを提案するエラーメッセージ

応答と動作に関する完全な仕様(出力上限、retrieved_at、エラー形式、HTTP リトライ、依存関係のバージョン範囲)については、CONVENTIONS.md をご覧ください。

引用

このプロジェクトを研究や業務で使用する場合は、次の形式で引用してください。

@software{jisan2025oceanmcp,
  author    = {Jisan, Mansur Ali},
  title     = {Ocean MCP: Real-Time Marine Data, MCP-Native},
  year      = {2025},
  url       = {https://github.com/oceanmodeling/ocean-mcp},
  note      = {MCP servers for NOAA CO-OPS, ERDDAP, NHC, Recon, STOFS, OFS, RTOFS, WW3, NDBC, USGS, winds, GOES, ADCIRC, and SCHISM data}
}

ライセンス

MIT ライセンスのもとでライセンスされています。MIT ライセンスの条件に従い、このソフトウェアを使用、変更、配布できます。詳細は LICENSE をご覧ください。

コメント

MCP は初めてですか?

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

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