MCP server exposing 3 tools for vessel-tracking.
This URL is a JSON-RPC 2.0 endpoint over HTTP. Issue POST requests with a JSON-RPC body. Browsers and search crawlers land here on GET.
POST https://gateway.pipeworx.io/vessel-tracking/mcp
Content-Type: application/json
{"jsonrpc":"2.0","id":1,"method":"tools/list"}
live_ships_in_area — Live ship positions right now in a geographic area, from AIS radio broadcasts — what vessels are sailing near a port, coastline, strait or set of coordinates at this moment. Returns each vessel heard with its position, speed, course, navigational status, type, destination and IMO where broadcast, plus a breakdown by vessel type (cargo, tanker, passenger, fishing, tug). Give either a centre point (latitude + longitude + radius_km) or a bounding box. COVERAGE IS PARTIAL AND TERRESTRIAL — there is no receiver coverage in the Persian Gulf, Strait of Hormuz, Gulf of Oman or Red Sea, so this tool cannot answer questions about those waters (use chokepoint_status for Hormuz/Suez/Bab el-Mandeb transit counts instead). Counts are vessels heard during a listening window of a few seconds, not a complete count of vessels present.live_ship_position — Where is a specific ship right now — live AIS position for one or more vessels by MMSI number. Returns position, speed, course, navigational status and destination as currently broadcast. BEST EFFORT BY NATURE: this listens for a live broadcast rather than reading a stored position, and many vessels transmit less than once a minute, so a single call frequently hears nothing even for a ship that is definitely sailing. Measured behaviour, not a caveat for form. Improve the odds with a longer window_seconds, or use live_ships_in_area if you know roughly where the ship is. For a guaranteed last-known position rather than a live catch, use vesselfinder_vessel (paid key). COVERAGE IS PARTIAL AND TERRESTRIAL — there is no receiver coverage in the Persian Gulf, Strait of Hormuz, Gulf of Oman or Red Sea, so this tool cannot answer questions about those waters (use chokepoint_status for Hormuz/Suez/Bab el-Mandeb transit counts instead). Counts are vessels heard during a listening window of a few seconds, not a complete count of vessels present.ais_coverage_check — Does live AIS tracking actually work at this location? Listens at a point and reports whether any community receiver covers it, so you can tell the difference between "no ships here" and "no receivers here" before trusting a zero. Use this whenever a vessel search comes back empty, and always before treating an empty result as evidence that shipping has stopped.Code samples (curl / TypeScript / one-click client install), schemas, and the live playground are on the pack page:
https://pipeworx.io/packs/vessel-tracking/
Pipeworx is an open MCP gateway connecting AI agents to live data. pipeworx.io