NHC MCP Server

平台与服务

by mansurjisan

提供 NHC 风暴路径、预报通告、监视/警报及 HURDAT2 数据的 MCP 服务器。

什么是 NHC MCP Server

提供 NHC 风暴路径、预报通告、监视/警报及 HURDAT2 数据的 MCP 服务器。

README

OceanMCP

A monorepo of independently installable MCP servers for ocean and coastal data workflows.

PyPI CI MCP Registry License: MIT

Servers

ServerPyPIDescription
coops-mcpPyPINOAA CO-OPS tides, water levels, currents, meteorological data
erddap-mcpPyPIUniversal ERDDAP data access across 80+ public servers
nhc-mcpPyPINHC storm tracks, advisories, HURDAT2 best track data
recon-mcpPyPIHurricane reconnaissance data (HDOB, Vortex Data Messages, ATCF fixes)
stofs-mcpPyPINOAA STOFS storm surge forecasts and observation validation
ofs-mcpPyPINOAA OFS regional ocean model forecasts (water level, temperature, salinity)
rtofs-mcpPyPINOAA RTOFS global ocean forecasts (SST, salinity, currents, SSH) via HYCOM THREDDS
ww3-mcpPyPIGFS-Wave (WAVEWATCH III) forecasts and NDBC buoy wave observations
ndbc-mcpPyPINOAA NDBC buoy observations — waves, SST, wind, pressure (1,300+ stations)
winds-mcpPyPINWS surface wind observations from ASOS / AWOS stations
usgs-mcpPyPIUSGS Water Services — streamflow, NWS/NWPS flood status, peak events
goes-mcpPyPINOAA GOES-18/19 satellite imagery — visible, infrared, water vapor
adcirc-mcpPyPIADCIRC model setup debugging, parameter lookup, config validation
schism-mcpPyPISCHISM model setup debugging, parameter lookup, config validation

No API keys required for the data servers — all servers above use free, publicly available datasets. The exceptions are hpc-system-mcp and ufs-runner-mcp (below), which require actual NOAA RDHPCS cluster access and, in ufs-runner-mcp's case, submit real Slurm jobs.

Additional servers live in this repo but are not yet published to PyPI (install from source): vdatum-mcp (vertical datum conversion), hpc-system-mcp and ufs-runner-mcp (NOAA RDHPCS / UFS-Coastal HPC workflows — require cluster access), and alert-mcp (CO-OPS threshold alerting).

There is also a 19th server in this repo, nos-workflow-mcp, which is experimental and still a work in progress (its full implementation lives on an unmerged branch — main carries only a minimal subset). It's intentionally left out of the table above and not yet ready for general use.

Quick Start

Install from PyPI

bash
# 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

Replace coops-mcp with any published server: 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.

Install from source

bash
git clone https://github.com/mansurjisan/ocean-mcp.git
cd ocean-mcp/servers/coops-mcp  # or any other server directory under servers/
uv sync

Configure your MCP client

Add to your MCP settings (e.g., project .mcp.json):

Using PyPI packages (recommended):

json
{
  "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"]
    }
  }
}
<details> <summary>Using local source checkout</summary>
json
{
  "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"]
    }
  }
}
</details>

Example Queries

With servers configured, you can ask your AI assistant naturally:

CO-OPS queries:

  • "Get current water levels at The Battery, NY"
  • "Find tide stations near Miami Beach"
  • "What are the flood statistics for Charleston, SC?"
  • "Show me the sea level trend at San Francisco"

ERDDAP queries:

  • "Search for sea surface temperature datasets on CoastWatch"
  • "Get chlorophyll data off the California coast for January 2024"
  • "What ERDDAP servers cover the US East Coast?"
  • "List all glider datasets on IOOS Gliders ERDDAP"

NHC queries:

  • "Are there any active tropical cyclones right now?"
  • "Show me Hurricane Katrina's track"
  • "Search for Category 5 hurricanes in the Atlantic"
  • "What is the forecast track for the active storm?"

Recon queries:

  • "List HDOB reconnaissance flights for the 2024 Atlantic season"
  • "Get HDOB flight-level observations from October 7, 2024"
  • "Show me the Vortex Data Messages for Hurricane Milton"
  • "Get ATCF aircraft fix data for storm AL14 2024"

STOFS queries:

  • "Get the STOFS water level forecast for The Battery, NY"
  • "Compare STOFS forecast vs observations at Boston for the past 24 hours"
  • "What are the top stations with highest predicted water levels?"
  • "Find STOFS stations within 50 km of New Orleans"

OFS queries:

  • "What OFS models cover the Chesapeake Bay?"
  • "Get the water level forecast at lat 38.98, lon -76.48 from CBOFS"
  • "Compare CBOFS water level with CO-OPS observations at station 8571892"
  • "List available NGOFS2 forecast cycles for today"

RTOFS queries:

  • "Get the RTOFS sea surface temperature forecast at 40°N, 74°W"
  • "Show me a temperature depth profile in the Gulf Stream"
  • "What RTOFS datasets are currently available on HYCOM THREDDS?"
  • "Get a vertical transect of salinity from Miami to Bermuda"
  • "Show the SST area forecast for the Gulf of Mexico"

WW3 queries:

  • "What GFS-Wave model grids are available?"
  • "Find NDBC buoys near Cape Hatteras"
  • "Get the latest wave observations from buoy 41025"
  • "Show me the GFS-Wave forecast at 35°N, 75°W for the next 48 hours"
  • "Compare the wave forecast against buoy 41025 observations"

Cross-server queries:

  • "Find CO-OPS stations near this ERDDAP buoy location"
  • "Compare tide station data with nearby ERDDAP satellite SST"
  • "Is there an active hurricane threatening the Gulf Coast? If so, show me the STOFS surge forecast for New Orleans"
  • "Get the CBOFS water level forecast at Chesapeake Bay and compare it with the CO-OPS tide prediction for the same station"
  • "Show me sea surface temperature from ERDDAP near The Battery and the current water level from CO-OPS"
  • "Which NHC storms have hit the Gulf Coast historically? Show the CO-OPS flood statistics for impacted stations"
  • "Get the STOFS gridded forecast and the OFS water level forecast at the same location and compare them"

Architecture

Each server is fully self-contained with its own pyproject.toml, dependencies, and tests. See docs/architecture.md for details on shared conventions.

Shared patterns across servers:

  • FastMCP for MCP server framework
  • httpx for async HTTP clients
  • Pydantic models, with Literal[...] types for constrained parameters
  • Read-only tools by default — the data-fetching servers only fetch, never modify, anything. ufs-runner-mcp (submits/cancels Slurm jobs) and alert-mcp (creates/pauses/deletes in-memory alert state) are the two exceptions, each with a small number of tools marked readOnlyHint=False
  • response_format output as markdown (default), json, geojson, or image, depending on the tool
  • Actionable error messages with suggestions

See CONVENTIONS.md for the full response/behavior contract (output caps, retrieved_at, error format, HTTP retries, dependency bounds).

Citation

If you use this project in your research or work, please cite:

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

License

Licensed under the MIT License. You may use, modify, and distribute this software under the MIT terms. See LICENSE for details.

常见问题

NHC MCP Server 是什么?

提供 NHC 风暴路径、预报通告、监视/警报及 HURDAT2 数据的 MCP 服务器。

相关 Skills

Slack动图

by anthropics

Universal
热门

面向Slack的动图制作Skill,内置emoji/消息GIF的尺寸、帧率和色彩约束、校验与优化流程,适合把创意或上传图片快速做成可直接发送的Slack动画。

帮你快速做出适配 Slack 的动图,内置约束规则和校验工具,少踩上传与播放坑,做表情包和演示都更省心。

平台与服务
未扫描165.3k

MCP构建

by anthropics

Universal
热门

聚焦高质量 MCP Server 开发,覆盖协议研究、工具设计、错误处理与传输选型,适合用 FastMCP 或 MCP SDK 对接外部 API、封装服务能力。

想让 LLM 稳定调用外部 API,就用 MCP构建:从 Python 到 Node 都有成熟指引,帮你更快做出高质量 MCP 服务器。

平台与服务
未扫描165.3k

接口测试套件

by alirezarezvani

Universal
热门

扫描 Next.js、Express、FastAPI、Django REST 的 API 路由,自动生成覆盖鉴权、参数校验、错误码、分页、上传与限流场景的 Vitest 或 Pytest 测试套件。

帮你把API与集成测试自动化跑顺,减少回归漏测;能力全面,尤其适合复杂接口场景的QA团队。

平台与服务
未扫描23.5k

相关 MCP Server

Slack 消息

编辑精选

by Anthropic

热门

Slack 是让 AI 助手直接读写你的 Slack 频道和消息的 MCP 服务器。

这个服务器解决了团队协作中需要 AI 实时获取 Slack 信息的痛点,特别适合开发团队让 Claude 帮忙汇总频道讨论或发送通知。不过,它目前只是参考实现,文档有限,不建议在生产环境直接使用——更适合开发者学习 MCP 如何集成第三方服务。

平台与服务
89.1k

by netdata

热门

io.github.netdata/mcp-server 是让 AI 助手实时监控服务器指标和日志的 MCP 服务器。

这个工具解决了运维人员需要手动检查系统状态的痛点,最适合 DevOps 团队让 Claude 自动分析性能数据。不过,它依赖 NetData 的现有部署,如果你没用过这个监控平台,得先花时间配置。

平台与服务
79.9k

by d4vinci

热门

Scrapling MCP Server 是专为现代网页设计的智能爬虫工具,支持绕过 Cloudflare 等反爬机制。

这个工具解决了爬取动态网页和反爬网站时的头疼问题,特别适合需要批量采集电商价格或新闻数据的开发者。不过,它依赖外部浏览器引擎,资源消耗较大,不适合轻量级任务。

平台与服务
71.9k

评论