Datalastic Vessel Tracking & Maritime Intelligence
REMOTE · MCP.DATALASTIC.COM · SCANNED AUG 3
Vessel tracking for 750,000+ ships, with ownership, inspections, port records, routes, and more.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security89
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
- The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents. View diagnostics → Partial
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability61
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 5872 tokens (~234/item across 25 items; 25 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · mcp.datalastic.com
claude mcp add --transport http com-datalastic-vessel-tracking https://mcp.datalastic.com/mcp
[mcp_servers.com-datalastic-vessel-tracking] url = "https://mcp.datalastic.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-datalastic-vessel-tracking": {
"type": "remote",
"url": "https://mcp.datalastic.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-datalastic-vessel-tracking --url https://mcp.datalastic.com/mcp --transport streamable-http
mcp_servers:
com-datalastic-vessel-tracking:
url: "https://mcp.datalastic.com/mcp" {
"mcpServers": {
"com-datalastic-vessel-tracking": {
"type": "http",
"url": "https://mcp.datalastic.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 +5
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 29 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 68
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://mcp.datalastic.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.datalastic.com | CN=YR1,O=Let's Encrypt,C=US | 4 Jun 2026 | 2 Sept 2026 | RSA 2048 | SHA256-RSA | 532d40d9d2b5186322672f9279b430b76e2 |
| SANs: mcp.datalastic.com | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
DNSSEC insecure
Validation of mcp.datalastic.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| datalastic.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer resource_metadata="https://mcp.datalastic.com/.well-known/oauth-protected-resource"
Bearer resource_metadata="https://mcp.datalastic.com/.well-known/oauth-protected-resource" Protected resource metadata
| Document | https://mcp.datalastic.com/.well-known/oauth-protected-resource |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.datalastic.com/mcp |
| Authorisation server | https://auth.datalastic.com/ |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.datalastic.com/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.datalastic.com/mcp | HTTPS enforced | 301 | https://mcp.datalastic.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
estimated_vessel_position Estimate a vessel's current position (SAT-E) ~340
Estimate where a vessel is right now when its last AIS position is stale — Datalastic uses terrestrial AIS only, so a ship in open ocean can be many hours old. The position is calculated from the last known fix, the recognized destination port, and the route-based ETA. It is an ESTIMATE, not an observed position. Tool selection — use this LAST: prefer get_vessel for a live position (cheapest); prefer get_vessel_pro when the user wants the ETA or recognized destination. Only reach for this tool when BOTH hold: (1) a prior get_vessel/get_vessel_pro lookup shows the last known position is old, and (2) the vessel has a destination and an ETA. It is the heaviest call (it builds a route) and adds nothing when get_vessel already returns a recent position. Because it is an estimate, OFFER it to the user first rather than calling it silently, and when you present the result make clear it is an estimated position, not a real fix. If estimated_position equals the last known lat/lon, the system could not extrapolate (the position is recent, or the ETA is missing/outdated) — say so instead of implying movement.
| Name | Type | Req | Description |
|---|---|---|---|
| imo | string | — | Vessel IMO number, exactly 7 digits. Provide exactly one of mmsi, imo, or uuid. |
| mmsi | string | — | Vessel MMSI identifier, exactly 9 digits. Provide exactly one of mmsi, imo, or uuid. |
| uuid | string | — | Datalastic internal vessel UUID. Provide exactly one of mmsi, imo, or uuid. |
| Name | Type | Req | Description |
|---|---|---|---|
| atd_UTC | null|string | yes | — |
| atd_epoch | null|integer | yes | — |
| country_iso | null|string | yes | — |
| course | null|number | yes | — |
| current_draught | null|number | yes | — |
| dep_port | null|string | yes | — |
| dep_port_unlocode | null|string | yes | — |
| dep_port_uuid | null|string | yes | — |
| dest_port | null|string | yes | — |
| dest_port_unlocode | null|string | yes | — |
| dest_port_uuid | null|string | yes | — |
| destination | null|string | yes | — |
| eni | null|string | yes | — |
| estimated_position | null|object | yes | — |
| eta_UTC | null|string | yes | — |
| eta_epoch | null|integer | yes | — |
| heading | null|integer | yes | — |
| imo | null|string | yes | — |
| last_position_UTC | null|string | yes | — |
| last_position_epoch | null|integer | yes | — |
| lat | null|number | yes | — |
| lon | null|number | yes | — |
| mmsi | null|string | yes | — |
| name | null|string | yes | — |
| navigation_status | null|string | yes | — |
| speed | null|number | yes | — |
| timezone | null|string | yes | — |
| timezone_offset_sec | null|integer | yes | — |
| type | null|string | yes | — |
| type_specific | null|string | yes | — |
| uuid | string | yes | — |
No examples provided.
find_ports Search for ports ~290
Search the port registry and return matching ports (identity, country, UN/LOCODE, classification, coordinates, maritime area). Search by name (optionally fuzzy), UN/LOCODE, classification, country, or geographically (lat + lon + radius in nautical miles). Always returns a list, even for a single match. Use this to discover ports or resolve a name to a UN/LOCODE/uuid; for full detail on one known port (including terminals) use get_port.
| Name | Type | Req | Description |
|---|---|---|---|
| country_iso | string | — | 2-letter ISO country code (e.g. GB). |
| fuzzy | boolean | — | Match the name approximately instead of exactly. |
| lat | null|number | — | Center latitude for a geographic search (use with lon and radius). |
| lon | null|number | — | Center longitude for a geographic search (use with lat and radius). |
| name | string | — | Port name to search for (set fuzzy for approximate matching). |
| port_type | string | — | Filter by classification. One of: Port, Anchorage, Marina, Offshore Terminal, Shelter, Demolition Yard, Canal, Fishing Harbour. |
| radius | number | — | Search radius in nautical miles (max 50); requires lat and lon. |
| unlocode | string | — | Port UN/LOCODE: 5 alphanumeric characters (case-insensitive). |
| uuid | string | — | Datalastic port UUID. |
| Name | Type | Req | Description |
|---|---|---|---|
| ports | null|array | yes | — |
No examples provided.
find_vessels Find vessels (registry search) ~460
Search the vessel registry by any combination of name (optionally fuzzy), type, flag country, dimensions, tonnage, or year built — no MMSI or IMO needed. Returns up to 500 static specification records per page (tonnage, dimensions, year built, home port, callsign, etc.) — this is reference data, NOT live position. Provide at least one search criterion; use the response's next token via the next argument to page. Credits: 1 per vessel found. For a vessel's live position use get_vessel; for vessels currently in an area use get_vessels_in_radius.
| Name | Type | Req | Description |
|---|---|---|---|
| breadth_max | null|number | — | Maximum breadth (meters). |
| breadth_min | null|number | — | Minimum breadth (meters). |
| country_iso | string | — | Filter by flag country, 2-letter ISO code (e.g. MT). |
| deadweight_max | null|integer | — | Maximum deadweight (tonnes). |
| deadweight_min | null|integer | — | Minimum deadweight (tonnes). |
| fuzzy | boolean | — | If true, match similar/approximate names; if false (default) the name must match exactly. Only meaningful together with name. |
| gross_tonnage_max | null|integer | — | Maximum gross tonnage. |
| gross_tonnage_min | null|integer | — | Minimum gross tonnage. |
| include_unknown_type | null|boolean | — | Include vessels with no/unknown type. Maps to the API's _empty_. |
| length_max | null|number | — | Maximum length (meters). |
| length_min | null|number | — | Minimum length (meters). |
| name | string | — | Vessel name to search for. Combine with fuzzy for similar-name matching. |
| next | string | — | Pagination token from a previous response's next field, to fetch the next page (up to 500 results per page). |
| type | string | — | Filter by vessel type (e.g. Cargo, Tanker). |
| type_specific | string | — | Filter by vessel subtype (e.g. Bulk Carrier). |
| year_built_max | null|integer | — | Latest year built. |
| year_built_min | null|integer | — | Earliest year built. |
| Name | Type | Req | Description |
|---|---|---|---|
| next | null|string | yes | — |
| vessels | null|array | yes | — |
No examples provided.
get_port Get one port with its terminals ~157
Return detailed information for a single port — identity, country, UN/LOCODE, classification, coordinates, maritime area, and the list of terminals (name, operating company, coordinates, address, website). Look up the port by its Datalastic uuid or its UN/LOCODE (exactly one). To search for a port by name or location, or when you don't have an exact identifier, use find_ports first.
| Name | Type | Req | Description |
|---|---|---|---|
| unlocode | string | — | Port UN/LOCODE: 5 alphanumeric characters, e.g. ESMPG (case-insensitive). Provide exactly one of uuid or unlocode. |
| uuid | string | — | Datalastic port UUID. Provide exactly one of uuid or unlocode. |
| Name | Type | Req | Description |
|---|---|---|---|
| area_lvl1 | null|string | yes | — |
| area_lvl2 | null|string | yes | — |
| country_iso | null|string | yes | — |
| country_name | null|string | yes | — |
| lat | null|number | yes | — |
| lon | null|number | yes | — |
| port_name | null|string | yes | — |
| port_type | null|string | yes | — |
| terminals | null|array | yes | — |
| unlocode | null|string | yes | — |
| uuid | string | yes | — |
No examples provided.
get_vessel Get vessel position ~215
Return the current position and basic information for a single vessel, identified by exactly one of: MMSI (9 digits), IMO (7 digits), or Datalastic UUID. Includes live coordinates, speed, course, heading, navigation status and the raw AIS destination text. This is the default tool for vessel lookups. For the recognized destination or origin port (name + UNLOCODE), actual departure time (ATD), a reliable estimated time of arrival (ETA), or draught, use get_vessel_pro instead.
| Name | Type | Req | Description |
|---|---|---|---|
| imo | string | — | Vessel IMO number, exactly 7 digits (e.g. 9839179). Provide exactly one of mmsi, imo, or uuid. |
| mmsi | string | — | Vessel MMSI identifier, exactly 9 digits (e.g. 477553000). Provide exactly one of mmsi, imo, or uuid. |
| uuid | string | — | Datalastic internal vessel UUID. Provide exactly one of mmsi, imo, or uuid. |
| Name | Type | Req | Description |
|---|---|---|---|
| country_iso | null|string | yes | — |
| course | null|number | yes | — |
| destination | null|string | yes | — |
| eni | null|string | yes | — |
| eta_UTC | null|string | yes | — |
| eta_epoch | null|integer | yes | — |
| heading | null|integer | yes | — |
| imo | null|string | yes | — |
| last_position_UTC | null|string | yes | — |
| last_position_epoch | null|integer | yes | — |
| lat | null|number | yes | — |
| lon | null|number | yes | — |
| mmsi | null|string | yes | — |
| name | null|string | yes | — |
| navigation_status | null|string | yes | — |
| speed | null|number | yes | — |
| type | null|string | yes | — |
| type_specific | null|string | yes | — |
| uuid | string | yes | — |
No examples provided.
get_vessel_history Get vessel history ~292
Return the historical track (ordered position records) for a single vessel, identified by exactly one of: MMSI (9 digits), IMO (7 digits), or Datalastic UUID. Specify the time range with either 'days' (last N days) or 'from'/'to' dates (YYYY-MM-DD, 'to' at most 30 days after 'from'). Data is available since 2021-08-10; only position changes are stored, so stationary periods may have gaps.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | — | Number of past days from today to include (e.g. 3). Use either days OR from/to, not both. |
| from | string | — | Start date YYYY-MM-DD. Data is available since 2021-08-10. Use either from/to OR days, not both. |
| imo | string | — | Vessel IMO number, exactly 7 digits. Provide exactly one of mmsi, imo, or uuid. |
| mmsi | string | — | Vessel MMSI identifier, exactly 9 digits. Provide exactly one of mmsi, imo, or uuid. |
| to | string | — | End date YYYY-MM-DD (at most 30 days after 'from'). Requires 'from'. Defaults to now if omitted. |
| uuid | string | — | Datalastic internal vessel UUID. Provide exactly one of mmsi, imo, or uuid. |
| Name | Type | Req | Description |
|---|---|---|---|
| country_iso | null|string | yes | — |
| eni | null|string | yes | — |
| imo | null|string | yes | — |
| mmsi | null|string | yes | — |
| name | null|string | yes | — |
| positions | null|array | yes | — |
| type | null|string | yes | — |
| type_specific | null|string | yes | — |
| uuid | string | yes | — |
No examples provided.
get_vessel_info Get vessel specifications ~217
Return static specifications for a single vessel, identified by exactly one of: MMSI (9 digits), IMO (7 digits), or Datalastic UUID. Includes physical dimensions (length, breadth, draught), tonnage and cargo capacity (gross tonnage, deadweight, TEU, liquid gas), speed characteristics, year built, flag country, callsign and home port. This is reference data, NOT live position — use get_vessel for the current position, or find_vessels to search the registry by attributes.
| Name | Type | Req | Description |
|---|---|---|---|
| imo | string | — | Vessel IMO number, exactly 7 digits (e.g. 9525338). Provide exactly one of mmsi, imo, or uuid. |
| mmsi | string | — | Vessel MMSI identifier, exactly 9 digits (e.g. 566093000). Provide exactly one of mmsi, imo, or uuid. |
| uuid | string | — | Datalastic internal vessel UUID. Provide exactly one of mmsi, imo, or uuid. |
| Name | Type | Req | Description |
|---|---|---|---|
| breadth | null|number | yes | — |
| callsign | null|string | yes | — |
| country_iso | null|string | yes | — |
| country_name | null|string | yes | — |
| deadweight | null|integer | yes | — |
| draught_avg | null|number | yes | — |
| draught_max | null|number | yes | — |
| eni | null|string | yes | — |
| gross_tonnage | null|integer | yes | — |
| home_port | null|string | yes | — |
| imo | null|string | yes | — |
| is_navaid | null|boolean | yes | — |
| length | null|number | yes | — |
| liquid_gas | null|string | yes | — |
| mmsi | null|string | yes | — |
| name | null|string | yes | — |
| name_ais | null|string | yes | — |
| speed_avg | null|number | yes | — |
| speed_max | null|number | yes | — |
| teu | null|string | yes | — |
| type | null|string | yes | — |
| type_specific | null|string | yes | — |
| uuid | string | yes | — |
| year_built | null|string | yes | — |
No examples provided.
get_vessel_pro Get vessel position (enriched) ~284
Richer, heavier variant of get_vessel for a single vessel, identified by exactly one of: MMSI (9 digits), IMO (7 digits), or Datalastic UUID. In addition to the basic position and identity, it returns the recognized destination port and origin port (name + UNLOCODE), the actual time of departure (ATD), a reliable estimated time of arrival (ETA), and current draught. Prefer get_vessel for ordinary position or identity lookups; use get_vessel_pro only when the user asks about the destination or origin port, departure time, arrival time or ETA, or draught, as it is heavier on the backend. If the last known position is stale (the vessel may be out of terrestrial AIS range) and it has a destination and ETA, consider offering estimated_vessel_position to estimate where it is now.
| Name | Type | Req | Description |
|---|---|---|---|
| imo | string | — | Vessel IMO number, exactly 7 digits (e.g. 9839179). Provide exactly one of mmsi, imo, or uuid. |
| mmsi | string | — | Vessel MMSI identifier, exactly 9 digits (e.g. 477553000). Provide exactly one of mmsi, imo, or uuid. |
| uuid | string | — | Datalastic internal vessel UUID. Provide exactly one of mmsi, imo, or uuid. |
| Name | Type | Req | Description |
|---|---|---|---|
| atd_UTC | null|string | yes | — |
| atd_epoch | null|integer | yes | — |
| country_iso | null|string | yes | — |
| course | null|number | yes | — |
| current_draught | null|number | yes | — |
| dep_port | null|string | yes | — |
| dep_port_unlocode | null|string | yes | — |
| dep_port_uuid | null|string | yes | — |
| dest_port | null|string | yes | — |
| dest_port_unlocode | null|string | yes | — |
| dest_port_uuid | null|string | yes | — |
| destination | null|string | yes | — |
| eni | null|string | yes | — |
| eta_UTC | null|string | yes | — |
| eta_epoch | null|integer | yes | — |
| heading | null|integer | yes | — |
| imo | null|string | yes | — |
| last_position_UTC | null|string | yes | — |
| last_position_epoch | null|integer | yes | — |
| lat | null|number | yes | — |
| lon | null|number | yes | — |
| mmsi | null|string | yes | — |
| name | null|string | yes | — |
| navigation_status | null|string | yes | — |
| speed | null|number | yes | — |
| timezone | null|string | yes | — |
| timezone_offset_sec | null|integer | yes | — |
| type | null|string | yes | — |
| type_specific | null|string | yes | — |
| uuid | string | yes | — |
No examples provided.
get_vessels_bulk Get many vessels at once (bulk position) ~159
Return the current position and basic information for many vessels in a single call — supply any mix of MMSI, IMO and UUID lists, up to 100 identifiers in total. Each result has the same fields as get_vessel. Only successfully found vessels are returned (the response includes how many were found). Use this instead of many get_vessel calls when looking up a known set of vessels; for a single vessel use get_vessel.
| Name | Type | Req | Description |
|---|---|---|---|
| imo | null|array | — | List of vessel IMO numbers (each exactly 7 digits). |
| mmsi | null|array | — | List of vessel MMSI identifiers (each exactly 9 digits). |
| uuid | null|array | — | List of Datalastic vessel UUIDs. |
| Name | Type | Req | Description |
|---|---|---|---|
| total | null|integer | yes | — |
| vessels | null|array | yes | — |
No examples provided.
get_vessels_in_radius Get vessels in radius (area scan) ~507
Scan a circular area and return all vessels currently within a given radius (nautical miles, greater than 0 and at most 50). Specify the center in exactly one way: lat+lon coordinates, a port (port_unlocode or port_uuid), or a vessel to center on (mmsi/imo/uuid). Optional filters: type, type_specific, exclude, nav_status, and include_unknown_type. Returns up to 500 vessels per page, each with its distance (nautical miles) from the center; if more remain, pass the response's 'next' token via the 'next' argument to page through them. Credits are charged per vessel found.
| Name | Type | Req | Description |
|---|---|---|---|
| exclude | string | — | Optional: exclude vessels of this type. |
| imo | string | — | Center the scan on a vessel, by IMO (exactly 7 digits). |
| include_unknown_type | null|boolean | — | Optional: include vessels that have no/unknown type. Defaults to the API default when omitted. |
| lat | null|number | — | Center latitude (-90..90). Must be used together with lon. Provide exactly one center: lat+lon, a port, or a vessel identifier. |
| lon | null|number | — | Center longitude (-180..180). Must be used together with lat. |
| mmsi | string | — | Center the scan on a vessel, by MMSI (exactly 9 digits). |
| nav_status | null|integer | — | Optional: filter by AIS navigational status number (e.g. 0 = under way using engine). |
| next | string | — | Optional: pagination token from a previous response's 'next' field, to fetch the next page (up to 500 vessels per page). |
| port_unlocode | string | — | Center the scan on a port, by UN/LOCODE (e.g. ESVLC). |
| port_uuid | string | — | Center the scan on a port, by Datalastic port UUID. |
| radius | number | yes | Required. Scan radius in nautical miles, greater than 0 and at most 50. |
| type | string | — | Optional: only include vessels of this type (e.g. Tanker, Cargo). |
| type_specific | string | — | Optional: only include vessels of this specific subtype (e.g. LPG Tanker). |
| uuid | string | — | Center the scan on a vessel, by Datalastic vessel UUID. |
| Name | Type | Req | Description |
|---|---|---|---|
| next | null|string | yes | — |
| point | null|object | yes | — |
| total | null|integer | yes | — |
| vessels | null|array | yes | — |
No examples provided.
get_weather Get weather for a location ~333
Return weather for one location: marine conditions (wave height/direction/period, swell, sea-surface temperature, ocean currents, sea level, …) plus general atmospheric conditions (air temperature, precipitation, wind speed/direction/gusts, humidity, cloud cover, visibility, pressure, weather code, …). Specify the location as exactly one of: coordinates (lat+lon), a vessel (mmsi/imo/uuid — weather near its last known position), or a port (port_unlocode/port_uuid). Use mode to choose current conditions (default), a 7-day daily forecast, a 7-day hourly forecast, or any combination. Each weather field has a matching entry in the corresponding *_units object.
| Name | Type | Req | Description |
|---|---|---|---|
| imo | string | — | Weather near this vessel by IMO (7 digits). |
| lat | null|number | — | Latitude of the location (use together with lon). |
| lon | null|number | — | Longitude of the location (use together with lat). |
| mmsi | string | — | Weather near this vessel by MMSI (9 digits). |
| mode | null|array | — | Forecast mode(s); omit for current. One or more of: current (now), daily (7-day daily forecast), hourly (7-day hourly forecast). Combine for several at once. |
| port_unlocode | string | — | Weather near this port by UN/LOCODE (5 alphanumeric, case-insensitive). |
| port_uuid | string | — | Weather near this port by Datalastic port UUID. |
| uuid | string | — | Weather near this vessel by Datalastic UUID. |
| Name | Type | Req | Description |
|---|---|---|---|
| location | null|object | yes | — |
| weather | object | yes | — |
No examples provided.
intel_casualties Vessel casualty & incident history ~157
Retrieve a vessel's recorded maritime incidents — groundings, collisions, fires, machinery breakdowns, detentions and similar events — each with a date, category and a narrative description. Useful for risk and condition assessment. Identify the vessel by imo or name, and optionally bound the period with from / to. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | — | Only include incidents on or after this date (YYYY-MM-DD). |
| imo | string | — | Vessel IMO number (exactly 7 digits) to look up. |
| name | string | — | Vessel name to look up (use when the IMO is unknown). |
| to | string | — | Only include incidents on or before this date (YYYY-MM-DD). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
intel_class Vessel classification & technical particulars ~225
Return a vessel's classification society together with its principal technical particulars: gross and net tonnage, deadweight, length overall, length between perpendiculars, beam, depth, design draft, propulsion and engine maker, plus owner/manager and next survey dates. Identify the vessel by imo or name (set fuzzy for loose name matching), or filter by owner/manager. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| beneficial_owner | string | — | Filter by beneficial owner company name. |
| beneficial_owner_imo | string | — | Filter by beneficial owner company IMO number. |
| fuzzy | boolean | — | Match the name loosely instead of exactly. |
| imo | string | — | Vessel IMO number (exactly 7 digits) to look up. |
| name | string | — | Vessel name to look up (use when the IMO is unknown). |
| technical_manager | string | — | Filter by technical manager company name. |
| technical_manager_imo | string | — | Filter by technical manager company IMO number. |
| updated_from | string | — | Only include records updated on or after this date (YYYY-MM-DD). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
intel_companies Maritime company profile ~168
Look up a maritime company profile — owners, operators, managers and charterers — returning its full and short name, company type, registration country, operating status, contact details, and parent company. Search by the company's own IMO number (company_imo) or by name. This is a company directory, so company_imo refers to the company (not a vessel); to find the companies behind a specific ship use intel_ownership. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| company_imo | string | — | Company IMO number (exactly 7 digits). Note this is the company's own IMO, not a vessel IMO. |
| name | string | — | Company name to search for. |
| updated_from | string | — | Only include records updated on or after this date (YYYY-MM-DD). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
intel_drydock Vessel drydock & survey schedule ~191
Look up planned and past dry-dock dates, special-survey dates, and IOPP (oil-pollution) certificate dates for a vessel, along with its technical manager's contact details. Target a single vessel by imo or name, or scan a forward window across the fleet with dry_dock_from / dry_dock_to to find vessels due for drydocking in a date range. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| dry_dock_from | string | — | Only include vessels whose next dry dock falls on or after this date (YYYY-MM-DD). |
| dry_dock_to | string | — | Only include vessels whose next dry dock falls on or before this date (YYYY-MM-DD). |
| imo | string | — | Vessel IMO number (exactly 7 digits) to look up. |
| name | string | — | Vessel name to look up (use when the IMO is unknown). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
intel_engine Vessel main-engine specifications ~140
Return the main-engine specification for a vessel: engine designation (model), builder and designer, propulsion type, and maximum continuous output (MCO) with its unit and rpm. Identify the vessel by imo or name (set fuzzy for loose name matching). Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| fuzzy | boolean | — | Match the name loosely instead of exactly. |
| imo | string | — | Vessel IMO number (exactly 7 digits) to look up. |
| name | string | — | Vessel name to look up (use when the IMO is unknown). |
| updated_from | string | — | Only include records updated on or after this date (YYYY-MM-DD). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
intel_info Maritime Reports add-on status ~119
Check whether the Maritime Reports add-on is active on the connected Datalastic account, and what it offers: vessel ownership/management, classification, engine specs, Port State Control inspections, casualties, drydock schedules, sale & purchase records, company profiles, sea routes, estimated out-of-AIS positions, and bulk dataset exports. Use this when the user asks whether they have (or what is included in) the add-on, when an intel_* tool reports the add-on is missing, or after the user says they have purchased or updated their subscription.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| addon_active | boolean | yes | — |
| capabilities | null|array | yes | — |
| message | string | yes | — |
No examples provided.
intel_inspections Vessel Port State Control inspections ~153
Retrieve a vessel's Port State Control (PSC) inspection record: the inspecting authority and port, the inspection type and date, whether the vessel was detained, and the number and description of any deficiencies found. Identify the vessel by imo or name, and optionally bound the period with from / to. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | — | Only include inspections on or after this date (YYYY-MM-DD). |
| imo | string | — | Vessel IMO number (exactly 7 digits) to look up. |
| name | string | — | Vessel name to look up (use when the IMO is unknown). |
| to | string | — | Only include inspections on or before this date (YYYY-MM-DD). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
intel_ownership Vessel ownership & management chain ~234
Reveal the commercial control behind a vessel: beneficial owner, operator, technical manager and commercial manager — each with its company IMO and country — plus the P&I club and flag. Look up one vessel by imo or name, or turn the question around and pass a company name (beneficial_owner, operator, technical_manager or commercial_manager) to list every vessel that company controls. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| beneficial_owner | string | — | Company name of the beneficial owner; returns every vessel under that owner. |
| commercial_manager | string | — | Company name of the commercial manager; returns every vessel under that manager. |
| imo | string | — | Vessel IMO number (exactly 7 digits) to look up. |
| name | string | — | Vessel name to look up (use when the IMO is unknown). |
| operator | string | — | Company name of the operator; returns every vessel under that operator. |
| technical_manager | string | — | Company name of the technical manager; returns every vessel under that manager. |
| updated_from | string | — | Only include records updated on or after this date (YYYY-MM-DD). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
intel_report_request Request a bulk intelligence report (async) ~199
Submit an async job to export a FULL bulk dataset for one of the Maritime Reports add-on datasets (dry_dock_dates, casualty, inspections, sales_purchase_demolitions, ownership, class_society, engine, companies). This returns the ENTIRE dataset (all records), not one vessel — for a single vessel use the matching lookup tool instead (e.g. intel_ownership, intel_inspections). Like all reports it is asynchronous: this returns a report_id and a _PENDING_ status without waiting; submit ONCE, then poll report_status with that report_id until _DONE_, which yields a result_url to hand to the user to download. The server never downloads the file itself. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| report_type | string | yes | Which bulk dataset report to generate. One of: dry_dock_dates, casualty, inspections, sales_purchase_demolitions, ownership, class_society, engine, companies. |
| Name | Type | Req | Description |
|---|---|---|---|
| created_at | null|string | yes | — |
| report_id | string | yes | — |
| report_type | null|string | yes | — |
| result_url | null|string | yes | — |
| status | null|string | yes | — |
| updated_at | null|string | yes | — |
No examples provided.
intel_spd Ship sale & purchase / demolition records ~165
Retrieve ship sale-and-purchase transactions for a vessel: second-hand sales, newbuilding deliveries and demolition (scrap) sales, including seller, buyer, reported price, price per lightweight ton, and demolition destination. Useful for asset valuation and market tracking. Identify the vessel by imo or name, and optionally bound the period with from / to. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | — | Only include transactions reported on or after this date (YYYY-MM-DD). |
| imo | string | — | Vessel IMO number (exactly 7 digits) to look up. |
| name | string | — | Vessel name to look up (use when the IMO is unknown). |
| to | string | — | Only include transactions reported on or before this date (YYYY-MM-DD). |
| Name | Type | Req | Description |
|---|---|---|---|
| records | null|array | yes | — |
No examples provided.
report_list List async reports ~56
List the caller's recent async report jobs with their statuses (and result_url once _DONE_). Use this to recover a report_id or see which reports have finished — for example if a report was submitted earlier and its id was lost.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| reports | null|array | yes | — |
No examples provided.
report_request Request an async report ~402
Submit an async report job. Reports are generated in the background and can take a while (seconds to many minutes), so this returns a report_id and an initial status (_PENDING_) — it does NOT wait. Submit ONCE, then poll report_status with the returned report_id until _DONE_, which yields a result_url. Do not resubmit while a job is running. When done, give the user the result_url to download; the server never downloads report files itself. Supported report_type values: - request_usage: a FREE log of your account's API usage (endpoint, credits, timestamp); optional from/to (<=31 days), default last month. - vessel_list: the full vessel database (no other parameters). - port_list: the full ports database (no other parameters). - inradius_history: all vessels that passed through an area in a time window; REQUIRES lat, lon, radius (<=50 NM), from and to (<=7 days apart). Note: vessel_list, port_list and inradius_history consume API credits (vessel_list and inradius_history can be substantial) — it's good to tell the user before submitting. For the add-on bulk datasets (ownership, inspections, etc.) use intel_report_request instead.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | — | Start date YYYY-MM-DD. Optional for request_usage; required for inradius_history. |
| lat | null|number | — | Center latitude. Required for inradius_history. |
| lon | null|number | — | Center longitude. Required for inradius_history. |
| radius | null|number | — | Radius in nautical miles, max 50. Required for inradius_history. |
| report_type | string | yes | Which report to generate: request_usage, vessel_list, port_list, or inradius_history. |
| to | string | — | End date YYYY-MM-DD. Optional for request_usage (<=31 days after from); required for inradius_history (<=7 days after from). |
| Name | Type | Req | Description |
|---|---|---|---|
| created_at | null|string | yes | — |
| report_id | string | yes | — |
| report_type | null|string | yes | — |
| result_url | null|string | yes | — |
| status | null|string | yes | — |
| updated_at | null|string | yes | — |
No examples provided.
report_status Check an async report ~122
Check an async report job by report_id (from report_request or report_list). Returns its status: _PENDING_ or _IN_PROGRESS_ (still generating — wait a bit and check again) or _DONE_. When _DONE_, result_url is a download link for the result ZIP; hand it to the user. Links are time-limited — if one has expired, run report_status again for a fresh link. The server never downloads the file itself.
| Name | Type | Req | Description |
|---|---|---|---|
| report_id | string | yes | The report_id returned by report_request (or seen in report_list). |
| Name | Type | Req | Description |
|---|---|---|---|
| created_at | null|string | yes | — |
| report_id | string | yes | — |
| report_type | null|string | yes | — |
| result_url | null|string | yes | — |
| status | null|string | yes | — |
| updated_at | null|string | yes | — |
No examples provided.
sea_route Schematic sea route between two points ~287
Calculate a schematic sea route between two points and return it as GeoJSON (a LineString of waypoints) with the total distance in kilometres and nautical miles. Specify the origin and destination each as either coordinates (lat+lon), a port UUID, or a port UN/LOCODE. ⚠️ This is a SCHEMATIC sea route, not a navigable one. It does not account for actual navigation, hazards, traffic separation, drafts or local rules — do NOT use it for real-world sailing. Use it for estimating distance and travel time, visualizing the approximate path/shape, and similar analysis. Part of the Maritime Reports add-on.
| Name | Type | Req | Description |
|---|---|---|---|
| lat_from | null|number | — | Origin latitude (use together with lon_from). |
| lat_to | null|number | — | Destination latitude (use together with lon_to). |
| lon_from | null|number | — | Origin longitude (use together with lat_from). |
| lon_to | null|number | — | Destination longitude (use together with lat_to). |
| port_unlocode_from | string | — | Origin port UN/LOCODE (5 alphanumeric, case-insensitive). |
| port_unlocode_to | string | — | Destination port UN/LOCODE (5 alphanumeric, case-insensitive). |
| port_uuid_from | string | — | Origin port UUID. |
| port_uuid_to | string | — | Destination port UUID. |
| Name | Type | Req | Description |
|---|---|---|---|
| from | null|object | yes | — |
| route | null|object | yes | — |
| to | null|object | yes | — |
No examples provided.