Clairwave

io.github.clairwavev0.4.0更新於 Oct 8, 2026

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

已驗證Streamable HTTP可網頁執行Data & AnalyticsMedia & DesignLocation & Lifestyle

概覽

AI 產生的概覽

讓助理執行海洋聲學模型、取得水深與聲速剖面,並查詢即時 AIS 船舶。

功能
Clairwave 提供經過驗證的水下聲學工具:水深點值或沿方位角的水深剖面、含海床參數的季節性聲速剖面、RAM 拋物線方程傳播損失、聲納方程偵測距離,以及三維 Bellhop 傳播損失體資料。它也提供船舶輻射噪音源級、即時 AIS 船舶搜尋與位置(含三維船體模型與照片)、地名轉水域座標的解析,以及棲地接收級快照。結果帶有來源資訊(模型、資料來源、run id)與可重現資料包。
適用情境
當助理需要以物理為基礎的海洋答案而非猜測時使用:聲納或偵測距離問題、沿方位角的傳播損失計算、聲速與水深查詢,或查看某位置附近的船舶。適用於研究、教學與海洋規劃等可接受氣候態模擬的場景。
執行需求
使用平台 URL 的遠端 Streamable HTTP 端點;未宣告需要驗證、金鑰或帳號。也可用 Python、MCP CLI 與 httpx 在本機執行,使用環境變數 CLAIRWAVE_API、CLAIRWAVE_FLEET、CLAIRWAVE_SITE 與 MCP_PORT。即時 AIS 與地名查詢需要網路存取。
安裝前請注意
運算呼叫共用平台層級約每分鐘 20 次的額度,頻繁使用可能被限流。模擬以氣候態為基礎,不能取代現場實測。地名與座標會傳送至 OpenStreetMap Nominatim,船舶照片來自 Wikimedia Commons 並需標示出處。此伺服器為無狀態且不需要憑證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Clairwave,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "clairwave": {
      "type": "http",
      "url": "https://www.clairwave.com/mcp"
    }
  }
}

README

clairwave-mcp

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: Plugins → search Clairwave → + (a listed plugin: no URL, no developer mode)
  • 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

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

Environment: CLAIRWAVE_API, CLAIRWAVE_FLEET, CLAIRWAVE_SITE, MCP_PORT.

Where to find it

  • Official MCP Registry: io.github.clairwave/clairwave (https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.clairwave/clairwave)
  • Claude: Settings > Connectors > Add custom connector, URL https://www.clairwave.com/mcp, no auth.
  • ChatGPT: listed in the Plugins directory as "Clairwave — Ocean acoustics & live ships"; search Clairwave and click +.
  • Grok (grok.com/connectors > New > Custom): paste the same URL.
  • xAI / OpenAI APIs: {"type": "mcp", "server_url": "https://www.clairwave.com/mcp", "server_label": "clairwave"}.

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.

來源:README.md,提交 53e9f17

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v0.4.0最新Sep 16, 2026