clairwave-mcp

MCP serverAI & models

Ocean acoustics: propagation models, bathymetry, sound speed, vessel noise, live AIS. Open.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use clairwave-mcp to resolve place

From the project's README

As published by clairwave/clairwave-mcp in README.md.

An open MCP server that gives AI assistants physically grounded ocean acoustics.

Clairwave runs validated propagation models (Bellhop, RAM/parabolic equation) on global bathymetry and seasonal sound-speed profiles, tracks live AIS vessels, and serves 3D hull models for them (shipshape). This server exposes that to Claude, ChatGPT, Gemini and any other MCP client — so an assistant reasoning about the ocean can run the physics instead of guessing.

Every result carries provenance (model, data source, run_id) and an open_url that opens the exact result in the platform. Simulation results include the bathymetry, sound-speed profile and bottom parameters that were used, so a researcher can replicate the run in MATLAB, Python or anything else.

Endpoint (no auth, no key): https://www.clairwave.com/mcp — Streamable HTTP.

Connect

  • Claude Code: claude mcp add --transport http clairwave https://www.clairwave.com/mcp
  • Claude.ai / Claude Desktop: Settings → Connectors → Add custom connector → the URL above
  • ChatGPT: Settings → Connectors → Create (developer mode) → the URL above
  • Any MCP client: point it at the URL; the server is stateless and JSON-response capable

Tools

ToolWhat it does
get_bathymetryDepth at a point, or a transect profile along a bearing
get_sound_speed_profileSeasonal c(z) for a month + seabed parameters (cp, cs, density, attenuation, sediment)
run_transmission_lossRAM parabolic-equation TL along a bearing; bathymetry/SSP/seabed fetched automatically; replication bundle included
estimate_detection_rangeSonar equation on a RAM run: continuous and furthest detection range, signal excess vs range
run_bellhop_volume3D Bellhop TL volume stored under a run id (uint8 cube + JSON sidecar links)
vessel_source_levelShip radiated noise: broadband + third-octave spectrum + mechanism breakdown
search_vessels / vessels_nearLive AIS by name/MMSI, or within a radius of a point
get_vesselLive position/track, particulars, and the 3D model (GLB, bow=+Z) with platform links
get_vessel_photoWikimedia Commons photo with attribution
resolve_placePlace name (port, strait, sea, 'off Halifax') → water coordinates; gazetteer + OpenStreetMap, snapped seaward off land
habitat_received_levelPower-summed vessel noise at a fixed site (fish farm, reef, hydrophone): live snapshot or 10-minute history series; top contributors
aboutModels, data sources, limits

Typical latency against the live platform: bathymetry 0.5 s, SSP 6 s first time per 0.1° cell then cached, RAM transmission loss 1–3 s, detection range 1–3 s.

Run locally

pip install "mcp[cli]<2" httpx
python server.py            # streamable HTTP on :8890 (/mcp)
python server.py --stdio    # stdio for local clients
python tests/smoke_client.py

Environment: CLAIRWAVE_API, CLAIRWAVE_FLEET, CLAIRWAVE_SITE, MCP_PORT.

Where to find it

Place names

Every location tool takes either lat/lon or a place string. Names go through a maritime gazetteer first (ports resolve to their approaches, straits and seas to a representative water point; ~120 entries in gazetteer.py), then OpenStreetMap Nominatim. If the point is on land or shallower than 10 m it is walked seaward until it is deep enough, and the response's location block reports the original point, the snap distance and bearing, and the depth used. resolve_place exposes the same logic directly, with offshore_km to push a point further out.

Example prompts

  • "What is the sound speed profile 50 km west of Gibraltar in March, and where is the sonic layer depth?"
  • "How far could a 150 Hz, 170 dB source at 20 m depth be detected by a receiver at 100 m near 36N 5.5W, along bearing 090?"
  • "Show transmission loss versus range at 200 Hz out to 30 km north of Halifax in winter."
  • "What ships are within 15 km of the Strait of Hormuz right now, and how loud is the largest one?"
  • "Run a 3D Bellhop volume at 400 Hz around 49.2N 123.3W and give me the link to open it."

Limits and support

License

MIT. Data: AIS via the AISHub peer network (Clairwave contributes receivers); vessel photos CC-licensed with attribution; bathymetry and SSP sources cited in each response.

Tools it offers (13)

What this server listed when ahel dialed its public endpoint in Sep 2026, with no key and no account of yours. The names are the server’s own.

  • resolve_place
  • get_bathymetry
  • get_sound_speed_profile
  • run_transmission_loss
  • estimate_detection_range
  • run_bellhop_volume
  • search_vessels
  • vessels_near
  • get_vessel
  • vessel_source_level
  • get_vessel_photo
  • habitat_received_level
  • about

Signals

Last commit
Sep 2026
Advanced
Delivery
clairwave MCP server → your ahel gateway (mcp.ahel.ai) → every connected AI client.
Catalog kind
mcp-server
Gateway key
io-github-clairwave-clairwave
Source
github.com/clairwave/clairwave-mcp
Hosted endpoint
https://www.clairwave.com/mcp