Skip to main content

CO-OPS MCP Server

MCP server providing AI assistants with access to NOAA CO-OPS water levels, tides, currents, and coastal oceanographic data.

No API key required — all CO-OPS APIs are free and public.

Features

  • Station Discovery — List, search, and find nearest CO-OPS stations by type, state, or coordinates
  • Water Levels — Real-time and historical observed water levels with multiple datum references
  • Tide Predictions — Harmonic tide predictions (6-min, hourly, or high/low)
  • Meteorological Data — Wind, air/water temperature, pressure, humidity, visibility, and more
  • Currents — Current observations and predictions from PORTS stations
  • Derived Products — Extreme water levels, flood statistics, sea level trends, storm events, tidal datums

Quick Start

Install with uv

git clone https://github.com/oceanmodeling/ocean-mcp.git
cd ocean-mcp/servers/coops-mcp
uv sync

Configure your MCP client

Add to your MCP settings:

{
  "mcpServers": {
    "coops": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ocean-mcp/servers/coops-mcp", "python", "-m", "coops_mcp"]
    }
  }
}

Or if installed as a package:

{
  "mcpServers": {
    "coops": {
      "command": "uvx",
      "args": ["coops-mcp"]
    }
  }
}

Available Tools

Tool Description Key Parameters
coops_list_stations List CO-OPS stations by type/state station_type, state, limit
coops_get_station Get detailed station metadata station_id, expand (sensors, datums, etc.)
coops_find_nearest_stations Find stations near coordinates latitude, longitude, radius_km
coops_get_water_levels Observed water level data station_id, begin_date, end_date, datum
coops_get_tide_predictions Tide predictions station_id, begin_date, end_date, interval
coops_get_meteorological Met observations (wind, temp, etc.) station_id, product, date
coops_get_currents Current observations/predictions station_id, product, bin_num
coops_get_extreme_water_levels Record water levels station_id, datum
coops_get_flood_stats Flood day counts & HTF outlook station_id, year
coops_get_sea_level_trends Sea level trend data station_id
coops_get_peak_storm_events Peak storm surge events station_id, year
coops_get_datums Tidal datum values station_id, units

Usage Examples

Ask naturally — the right tool will be selected automatically:

  • "Get current water levels at The Battery, NY"coops_get_water_levels(station_id="8518750", date="latest")
  • "Find tide stations near Miami Beach"coops_find_nearest_stations(latitude=25.77, longitude=-80.13, station_type="waterlevels")
  • "What were the highest water levels ever recorded at San Francisco?"coops_get_extreme_water_levels(station_id="9414290")
  • "Show me wind data for Key West today"coops_get_meteorological(station_id="8724580", product="wind", date="today")
  • "What are the flood statistics for The Battery?"coops_get_flood_stats(station_id="8518750")
  • "Get tide predictions for Charleston, SC for next week"coops_get_tide_predictions(station_id="8665530", begin_date="...", end_date="...")

API Reference

This server wraps three NOAA CO-OPS APIs:

Development

# Install dev dependencies
uv sync

# Run unit tests
uv run pytest tests/test_models.py tests/test_utils.py tests/test_client.py -v

# Run live integration tests (makes real API calls)
uv run pytest tests/test_live.py -v -s

# Start the server
uv run python -m coops_mcp

License

MIT

Release files for coops-mcp 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for coops-mcp 0.1.1
File Size Uploaded
coops_mcp-0.1.1.tar.gz 50.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for coops-mcp 0.1.1
File Interpreter ABI Platform
coops_mcp-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 73.7 kB

Release files / coops_mcp-0.1.1.tar.gz

Download URL coops_mcp-0.1.1.tar.gz
Size 50.6 kB
Tags Source
SHA-256 checksum
How to use checksums
dfb6bd5d6687df6b9f0f335bdad8ccb3340dddc4e94bf47ffc780ca568865a9b
BLAKE2b-256 checksum
How to use checksums
33e4f9ce429f2751ee370834faffb2ebb0ea3c896d28719372730e03d0e8e0d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / coops_mcp-0.1.1-py3-none-any.whl

Download URL coops_mcp-0.1.1-py3-none-any.whl
Size 23.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f9630bc8bf7e024aff0ade1ec2e9a696487e3fdccc1e2b9860a6c5e64846f210
BLAKE2b-256 checksum
How to use checksums
943ee7214785a3134f6c032946a9ad0e420b20742ac9d3d1db4dd7de6dbf5dc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page