Open Waters AIS
Server Details
Live AIS vessel positions by MMSI, name, area, or radius, plus coverage. No sign-in, no key.
- Status
- Healthy
- Uptime
- 100.0% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- openwatersio/aiscast
- GitHub Stars
- 7
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: spatial bounding-box search, radius search, coverage stats, identifier lookup, historical track, and name search. The only potential overlap (find_vessels_in_area vs find_vessels_near) is cleanly separated by bounding box vs radius, and the name-to-MMSI workflow is explicitly chained across search_vessels_by_name and get_vessels.
All tools follow a consistent snake_case verb_noun pattern (find_vessels_*, get_vessels/get_vessel_track/get_coverage, search_vessels_by_name). Verbs are used consistently for their intent: find for spatial queries, get for direct retrieval, search for text lookup.
Six tools is well-scoped for an AIS vessel-tracking domain, covering lookup, spatial search, tracking, and coverage without redundancy. Every tool earns its place with no filler operations.
Coverage is strong: identification (name/MMSI/IMO), spatial discovery (area/radius), history (track), and network coverage are all present with no obvious dead ends. Minor gaps exist around port-call/arrival events and bulk/area subscriptions, but core workflows are fully supported.
Available Tools
6 toolsfind_vessels_in_areaVessels in an areaARead-onlyIdempotentInspect
Vessels currently inside a latitude/longitude bounding box, newest report first, with optional kind and ship-type filters. Use for what is in a port, a strait, or a stretch of coast. Anonymous calls may cover 100 square degrees per call.
| Name | Required | Description | Default |
|---|---|---|---|
| bbox | Yes | ||
| flag | No | only vessels flying this flag: ISO 3166-1 alpha-2, e.g. NO, FI, MH | |
| kind | No | only this kind: vessel, aton (aid to navigation), base (base station), or sar (search and rescue aircraft) | |
| limit | No | rows to return: default 50, maximum 200 | |
| types | No | only these ITU ship type codes, e.g. 30 fishing, 36 sailing, 37 pleasure craft, 52 tug, 60 passenger, 70 cargo, 80 tanker; a code ending in 0 matches its decade, so 70 matches 70 to 79 |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | vessels matched before the limit was applied |
| vessels | Yes | |
| truncated | Yes | true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it |
| attribution | Yes | credit line per source kind in the rows, to show with the data |
| unknown_imo | No | requested IMO numbers matching no vessel the network has heard |
| unknown_mmsi | No | requested MMSIs matching no vessel the network has heard |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint, idempotentHint) and closed-world scope, so the bar is lower. The description adds genuinely new behavior beyond them: result ordering (newest report first) and a quota constraint ("Anonymous calls may cover 100 square degrees per call"), which is exactly the kind of operational context an agent needs before calling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, with the spatial scope and ordering front-loaded before the filters and the quota caveat. Every clause carries information an agent would otherwise lack.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need no explanation, and the description covers scope, ordering, filters, and the anonymous area quota. It does not mention that result sets are capped by limit or point to get_coverage for areas lacking coverage, which leaves minor gaps for a nested-parameter, 5-param tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 80% and the schema itself documents bbox edges, flag codes, kind values, limit default/max, and ITU ship-type code semantics in depth. The description only restates "optional kind and ship-type filters" without adding format or interpretation the schema lacks; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and spatial scope: "Vessels currently inside a latitude/longitude bounding box", plus result ordering ("newest report first") and the optional filters. The area-bbox framing inherently separates it from find_vessels_near, but no sibling is named explicitly, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Use for what is in a port, a strait, or a stretch of coast" gives concrete usage contexts for an area query. It offers no when-not guidance and never names find_vessels_near as the proximity alternative, so the agent must infer the boundary itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_vessels_nearVessels near a point or vesselRead-onlyIdempotentInspect
Vessels within a radius (default 10 NM, maximum 50) of a point or of another vessel's last known position, nearest first, each with distance and bearing from the centre. Use for what is near this position or what is around vessel X.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | No | centre latitude, degrees; give lat and lon, or mmsi | |
| lon | No | centre longitude, degrees | |
| flag | No | only vessels flying this flag: ISO 3166-1 alpha-2, e.g. NO, FI, MH | |
| kind | No | only this kind: vessel, aton, base, or sar | |
| mmsi | No | centre on this vessel's last position instead of lat and lon; the vessel itself is left out of the results | |
| limit | No | rows to return: default 50, maximum 200 | |
| types | No | only these ITU ship type codes; a code ending in 0 matches its decade | |
| radius_nm | No | search radius in nautical miles: default 10, maximum 50 |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | vessels matched before the limit was applied |
| vessels | Yes | |
| truncated | Yes | true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it |
| attribution | Yes | credit line per source kind in the rows, to show with the data |
| unknown_imo | No | requested IMO numbers matching no vessel the network has heard |
| unknown_mmsi | No | requested MMSIs matching no vessel the network has heard |
get_coverageCoverage and sourcesRead-onlyIdempotentInspect
Where Open Waters AIS is hearing AIS right now: sources with their current delay, stations, freshness, and vessel counts. Pass a bounding box to learn which stations cover it and how many vessels are in it, or a station id for that station's numbers. Vessel counts cover the last 30 minutes; max_age widens them, to 7d for the last week or all for every vessel the network has heard. Call this before saying a region has no traffic.
| Name | Required | Description | Default |
|---|---|---|---|
| bbox | No | report the stations covering this box and the vessels currently in it | |
| max_age | No | count vessels heard within this long, network-wide and in bbox, instead of the last 30 minutes: a duration such as 6h, 24h, or 7d, or all for every vessel the network has heard | |
| station | No | a station id from an earlier result, for that station's numbers |
Output Schema
| Name | Required | Description |
|---|---|---|
| area | No | |
| note | No | |
| time | Yes | |
| sources | Yes | |
| station | No | |
| summary | Yes | |
| vessels | Yes | |
| stations | Yes | |
| events_per_second | Yes |
get_vesselsVessels by MMSIARead-onlyIdempotentInspect
Last known position and particulars of specific vessels by MMSI (Maritime Mobile Service Identity), or by IMO number with a feeder or partner token: the last report heard for each, however long ago, with destination, ETA, draught, and dimensions once its static data has been heard, and which identifiers match no vessel the network has heard. A vessel whose IMO number has a Wikidata item also carries its type, builder, year built, tonnage, registered dimensions, registry, home port, owner, operator, former names, and Wikipedia and Commons links from there, and a documented US vessel its service type, status, official number, registered dimensions, and tonnage from the US Coast Guard. Use search_vessels_by_name first when you only have a name.
| Name | Required | Description | Default |
|---|---|---|---|
| imo | No | IMO numbers to look up, counted with mmsi against the same cap; needs a feeder or partner token. Each returns up to 10 vessels that reported it, most recently heard first, and a vessel is found by IMO only once its static data has been heard | |
| mmsi | No | MMSIs to look up; anonymous calls may pass 10 identifiers per call, a personal token 50 |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | vessels matched before the limit was applied |
| vessels | Yes | |
| truncated | Yes | true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it |
| attribution | Yes | credit line per source kind in the rows, to show with the data |
| unknown_imo | No | requested IMO numbers matching no vessel the network has heard |
| unknown_mmsi | No | requested MMSIs matching no vessel the network has heard |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent safety, so the bar is lower, yet the description adds real behavioral context: reports are the last heard however long ago, static-data-dependent fields only appear once heard, and enrichment varies by Wikidata presence or US registry. It also notes the feeder/partner token requirement for IMO lookups. It stops short of pagination or truncation behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The whole description is one sprawling run-on sentence that enumerates Wikidata and US Coast Guard fields in detail even though an output schema already exists. The most actionable routing advice ('use search_vessels_by_name first') is buried at the very end rather than front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the return-field detail is redundant but not harmful; the description still covers identifier types, token prerequisites, unmatched-identifier behavior, and the name-search fallback. An agent has enough to invoke it correctly, though scope relative to the area/track siblings is unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters and their token limits are already documented in structured form. The description gestures at the same constraints (IMO needs a feeder/partner token, per-call identifier caps) without adding format or semantics beyond the schema; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (last known position and particulars of specific vessels) and names the two identifiers it accepts (MMSI, IMO). It also distinguishes itself from the name-based sibling by telling the agent to use search_vessels_by_name when only a name is available.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes the agent to search_vessels_by_name when only a name is known, and implies identifier-based lookup otherwise. It gives no guidance against the other siblings (find_vessels_near, find_vessels_in_area, get_vessel_track), so the alternative coverage is partial rather than complete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_vessel_trackWhere a vessel has beenRead-onlyIdempotentInspect
The positions heard from one vessel over a time range, oldest first, with speed, course, and navigational status. Positions implying an impossible speed for the vessel are left out. Use for where a ship was yesterday, when it left port, or its route today. Give the vessel's mmsi, or its imo with a feeder or partner token. A call covers up to a year. By default the track is simplified by shape: the positions that hold its path, with breaks where the vessel went unheard; interval_minutes asks for even spacing instead.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | end, RFC 3339 UTC; default now | |
| imo | No | the vessel's IMO number, instead of mmsi; needs a feeder or partner token. Follows the one vessel the IMO names: its only MMSI, or the only one heard in the last 30 days | |
| from | No | start, RFC 3339 UTC; default 24 hours before to. A call covers up to 366 days | |
| mmsi | No | the vessel's MMSI; give mmsi or imo. Use search_vessels_by_name first when you only have a name | |
| limit | No | positions to return: default 50, maximum 200; when more match, the newest are kept | |
| interval_minutes | No | at most one position per this many minutes, evenly spaced; by default the track is simplified by shape instead, keeping the positions that hold its path. Anonymous and personal calls reaching past 48 hours are rounded up to whole minutes |
Output Schema
| Name | Required | Description |
|---|---|---|
| to | Yes | |
| from | Yes | start of the range covered |
| mmsi | Yes | |
| name | No | |
| breaks | No | simplified, always present and empty when the vessel was heard throughout: indexes of positions that start a stretch after it went unheard; draw no line into them |
| positions | Yes | oldest first |
| truncated | Yes | true when positions were left out: simplified, the tolerance rose past 15 m to fit the limit, or the range held more than 50,000 positions and the oldest were not read; by interval, the newest were kept, so set from later or raise interval_minutes |
| interval_s | Yes | at most one position per this many seconds; 0 is every position heard. Simplified, the resolution the positions were read at |
| simplified | Yes | true when the track was simplified by shape: the positions that hold its path, not evenly spaced |
| attribution | Yes | credit line per source kind in the positions, to show with the data |
| tolerance_m | No | simplified: every position left out lay within this many meters of the line through the ones kept |
search_vessels_by_nameSearch vessels by nameARead-onlyIdempotentInspect
Vessels whose name contains the text, case-insensitive, among every vessel the network has heard, each with its last known position. Use to turn a name into an MMSI, then get_vessels or find_vessels_near for detail. An optional bounding box narrows the search. With a feeder or partner token, text of the form IMO 9241061 finds the vessels reporting that IMO number, and a bare seven-digit number finds them ahead of the name matches.
| Name | Required | Description | Default |
|---|---|---|---|
| bbox | No | only vessels whose last position is inside this box | |
| flag | No | only vessels flying this flag: ISO 3166-1 alpha-2, e.g. NO, FI, MH | |
| name | Yes | text to find in the vessel name, at least 2 characters, case-insensitive; with a feeder or partner token, IMO followed by an IMO number finds that IMO | |
| limit | No | rows to return: default 50, maximum 200 |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | vessels matched before the limit was applied |
| vessels | Yes | |
| truncated | Yes | true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it |
| attribution | Yes | credit line per source kind in the rows, to show with the data |
| unknown_imo | No | requested IMO numbers matching no vessel the network has heard |
| unknown_mmsi | No | requested MMSIs matching no vessel the network has heard |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/openWorldHint, so the safety profile is covered; the description adds real behavioral context beyond that: results are last-known-position snapshots, coverage is network-wide rather than live, bbox restricts by last position, and token level changes matching semantics (IMO-prefix and bare-number precedence). It doesn't discuss ordering of mixed matches or pagination beyond the limit field, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four tight sentences, front-loaded with the definition and return shape, then usage, then the two parameter refinements. No filler or restated name/title, though the opening sentence is dense enough that 'last known position' is easy to miss on a fast read.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return format needn't be explained; between the description, the fully documented schema, and the annotations, an agent has everything needed to decide to call this tool and how to shape the arguments. The token-dependent IMO behavior closes the one gap a caller could otherwise stumble into.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline would be 3, but the description adds semantics the schema doesn't: the bbox filters on last known position specifically, and a bare seven-digit name value is matched as an IMO ahead of name matches. That precedence rule is genuinely new information an agent can't get from the schema text alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific operation (name-substring search, case-insensitive) over a specific resource (vessels) and states scope ('among every vessel the network has heard') plus what each result carries ('its last known position'). It also distinguishes itself from siblings by pointing to get_vessels and find_vessels_near for detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the use case ('turn a name into an MMSI') and names the downstream alternatives (get_vessels, find_vessels_near) for follow-up detail. It further clarifies the narrower high-precision modes (IMO 9241061, bare seven-digit number with a feeder/partner token), so the agent knows both when to reach for this tool and when to expect exact vs. fuzzy matches.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
get_coverage3 fields changed- changed
Output schema / properties / area / properties / stations / items / properties / vessels / descriptionPrevious value: -"distinct vessels heard in the last 30 minutes"New value: +"distinct vessels whose positions the station heard in the last 30 minutes, its own left out, up to about 7 minutes behind" - changed
Output schema / properties / sources / items / properties / vessels / descriptionPrevious value: -"distinct vessels heard from this source in the last 30 minutes"New value: +"distinct vessels whose positions this source's stations heard in the last 30 minutes, up to about 7 minutes behind" - changed
Output schema / properties / station / properties / vessels / descriptionPrevious value: -"distinct vessels heard in the last 30 minutes"New value: +"distinct vessels whose positions the station heard in the last 30 minutes, its own left out, up to about 7 minutes behind"
5 tool updates
- Changed
find_vessels_in_area1 field changed- changed
Output schema / properties / truncated / descriptionPrevious value: -"true when total exceeds the rows returned; narrow the query or raise limit"New value: +"true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it"
- Changed
find_vessels_near1 field changed- changed
Output schema / properties / truncated / descriptionPrevious value: -"true when total exceeds the rows returned; narrow the query or raise limit"New value: +"true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it"
- Changed
get_vessel_track3 fields changed- added
Input schema / properties / imoAdded value: +{ + "description": "the vessel's IMO number, instead of mmsi; needs a feeder or partner token. Follows the one vessel the IMO names: its only MMSI, or the only one heard in the last 30 days", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" +} - changed
Input schema / properties / mmsi / descriptionPrevious value: -"the vessel's MMSI; use search_vessels_by_name first when you only have a name"New value: +"the vessel's MMSI; give mmsi or imo. Use search_vessels_by_name first when you only have a name" - removed
Input schema / requiredRemoved value: -[ - "mmsi" -]
- Changed
get_vessels2 fields changed- changed
Input schema / properties / imo / descriptionPrevious value: -"IMO numbers to look up, counted with mmsi against the same cap; a vessel is found by IMO only once its static data has been heard"New value: +"IMO numbers to look up, counted with mmsi against the same cap; needs a feeder or partner token. Each returns up to 10 vessels that reported it, most recently heard first, and a vessel is found by IMO only once its static data has been heard" - changed
Output schema / properties / truncated / descriptionPrevious value: -"true when total exceeds the rows returned; narrow the query or raise limit"New value: +"true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it"
- Changed
search_vessels_by_name2 fields changed- changed
Input schema / properties / name / descriptionPrevious value: -"text to find in the vessel name, at least 2 characters, case-insensitive"New value: +"text to find in the vessel name, at least 2 characters, case-insensitive; with a feeder or partner token, IMO followed by an IMO number finds that IMO" - changed
Output schema / properties / truncated / descriptionPrevious value: -"true when total exceeds the rows returned; narrow the query or raise limit"New value: +"true when rows were left out: total exceeds the rows returned, so narrow the query or raise limit, or an IMO number is reported by more than the 10 vessels returned for it"
1 tool update
- Changed
get_vessel_track7 fields changed- changed
Input schema / properties / interval_minutes / descriptionPrevious value: -"at most one position per this many minutes; by default the limit is spread over the range at a round spacing, reported as interval_s. Anonymous and personal calls reaching past 48 hours are rounded up to whole minutes"New value: +"at most one position per this many minutes, evenly spaced; by default the track is simplified by shape instead, keeping the positions that hold its path. Anonymous and personal calls reaching past 48 hours are rounded up to whole minutes" - added
Output schema / properties / breaksAdded value: +{ + "description": "simplified, always present and empty when the vessel was heard throughout: indexes of positions that start a stretch after it went unheard; draw no line into them", + "items": { + "type": "integer" + }, + "type": [ + "null", + "array" + ] +} - changed
Output schema / properties / interval_s / descriptionPrevious value: -"at most one position per this many seconds; 0 is every position heard"New value: +"at most one position per this many seconds; 0 is every position heard. Simplified, the resolution the positions were read at" - added
Output schema / properties / simplifiedAdded value: +{ + "description": "true when the track was simplified by shape: the positions that hold its path, not evenly spaced", + "type": "boolean" +} - added
Output schema / properties / tolerance_mAdded value: +{ + "description": "simplified: every position left out lay within this many meters of the line through the ones kept", + "type": [ + "null", + "number" + ] +} - changed
Output schema / properties / truncated / descriptionPrevious value: -"true when more positions matched than were returned; the newest were kept, so set from later or raise interval_minutes"New value: +"true when positions were left out: simplified, the tolerance rose past 15 m to fit the limit, or the range held more than 50,000 positions and the oldest were not read; by interval, the newest were kept, so set from later or raise interval_minutes" - changed
Output schema / requiredPrevious value: -[ - "mmsi", - "from", - "to", - "interval_s", - "positions", - "truncated", - "attribution" -]New value: +[ + "mmsi", + "from", + "to", + "interval_s", + "simplified", + "positions", + "truncated", + "attribution" +]
1 tool update
- Changed
get_vessel_track3 fields changed- changed
Input schema / properties / from / descriptionPrevious value: -"start, RFC 3339 UTC; default 24 hours before to. Anonymous and personal calls reach back 48 hours; feeder and commercial tokens reach the archive, up to 366 days per call"New value: +"start, RFC 3339 UTC; default 24 hours before to. A call covers up to 366 days" - changed
Input schema / properties / interval_minutes / descriptionPrevious value: -"at most one position per this many minutes; by default the limit is spread over the range at a round spacing, reported as interval_s"New value: +"at most one position per this many minutes; by default the limit is spread over the range at a round spacing, reported as interval_s. Anonymous and personal calls reaching past 48 hours are rounded up to whole minutes" - changed
Output schema / properties / from / descriptionPrevious value: -"start of the range covered, after clamping to what the caller can reach: the last 48 hours, or the archive for feeder and commercial tokens"New value: +"start of the range covered"
1 tool update
- Changed
get_vessel_track1 field changed- changed
Input schema / properties / from / descriptionPrevious value: -"start, RFC 3339 UTC; default 24 hours before to. Anonymous and personal calls reach back 48 hours; feeder and commercial tokens reach the archive, up to 7 days per call"New value: +"start, RFC 3339 UTC; default 24 hours before to. Anonymous and personal calls reach back 48 hours; feeder and commercial tokens reach the archive, up to 366 days per call"
4 tool updates
- Changed
find_vessels_in_area1 field changed- changed
Output schema / properties / vessels / items / properties / sources / additionalProperties / properties / url / descriptionPrevious value: -"the source's own page for this vessel"New value: +"the source's page for this vessel, or its public search when the source keeps no per-vessel pages"
- Changed
find_vessels_near1 field changed- changed
Output schema / properties / vessels / items / properties / sources / additionalProperties / properties / url / descriptionPrevious value: -"the source's own page for this vessel"New value: +"the source's page for this vessel, or its public search when the source keeps no per-vessel pages"
- Changed
get_vessels1 field changed- changed
Output schema / properties / vessels / items / properties / sources / additionalProperties / properties / url / descriptionPrevious value: -"the source's own page for this vessel"New value: +"the source's page for this vessel, or its public search when the source keeps no per-vessel pages"
- Changed
search_vessels_by_name1 field changed- changed
Output schema / properties / vessels / items / properties / sources / additionalProperties / properties / url / descriptionPrevious value: -"the source's own page for this vessel"New value: +"the source's page for this vessel, or its public search when the source keeps no per-vessel pages"
4 tool updates
- Changed
find_vessels_in_area1 field changed- added
Output schema / properties / vessels / items / properties / particulars / properties / callsignAdded value: +{ + "description": "call sign as registered; the callsign in the vessel's own properties is the one AIS reports", + "type": "string" +}
- Changed
find_vessels_near1 field changed- added
Output schema / properties / vessels / items / properties / particulars / properties / callsignAdded value: +{ + "description": "call sign as registered; the callsign in the vessel's own properties is the one AIS reports", + "type": "string" +}
- Changed
get_vessels1 field changed- added
Output schema / properties / vessels / items / properties / particulars / properties / callsignAdded value: +{ + "description": "call sign as registered; the callsign in the vessel's own properties is the one AIS reports", + "type": "string" +}
- Changed
search_vessels_by_name1 field changed- added
Output schema / properties / vessels / items / properties / particulars / properties / callsignAdded value: +{ + "description": "call sign as registered; the callsign in the vessel's own properties is the one AIS reports", + "type": "string" +}
4 tool updates
- Changed
find_vessels_in_area5 fields changed- added
Output schema / properties / vessels / items / properties / particularsAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, merged from the enrichment sources into one vocabulary (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "identification": { + "description": "the flag state's number for the vessel: a documented vessel's official number, else its state registration", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "net_tonnage": { + "type": "integer" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registered_name": { + "description": "name as documented with the flag state, when it differs from what AIS reports", + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "service": { + "description": "flag-state service type, e.g. Towing Vessel, Passenger (Inspected), Recreational", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, ferry", + "type": "string" + }, + "status": { + "description": "flag-state status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how a tonnage from the flag state was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / provenanceAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "description": "the source of each particulars field, by the field's name; values are keys of sources (get_vessels)", + "type": "object" +} - added
Output schema / properties / vessels / items / properties / sourcesAdded value: +{ + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "description": "display credit for the source", + "type": "string" + }, + "license": { + "type": "string" + }, + "url": { + "description": "the source's own page for this vessel", + "type": "string" + } + }, + "required": [ + "credit", + "license" + ], + "type": "object" + }, + "description": "each contributing source's credit, license, and its own page for this vessel (get_vessels)", + "type": "object" +} - removed
Output schema / properties / vessels / items / properties / uscgRemoved value: -{ - "additionalProperties": false, - "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", - "properties": { - "beam": { - "description": "registered breadth, metres", - "type": "number" - }, - "depth": { - "description": "registered depth, metres", - "type": "number" - }, - "gross_tonnage": { - "type": "integer" - }, - "id": { - "description": "the vessel's ID in PSIX", - "type": "integer" - }, - "identification": { - "description": "the official number of a documented vessel, else its state registration", - "type": "string" - }, - "length": { - "description": "registered length, metres", - "type": "number" - }, - "license": { - "description": "public domain (U.S. government work), no credit required", - "type": "string" - }, - "name": { - "description": "name as documented with the Coast Guard", - "type": "string" - }, - "net_tonnage": { - "type": "integer" - }, - "service": { - "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", - "type": "string" - }, - "status": { - "description": "Coast Guard status, e.g. Active, Laid Up", - "type": "string" - }, - "tonnage_measure": { - "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", - "type": "string" - }, - "year_built": { - "type": "integer" - } - }, - "required": [ - "id", - "license", - "name" - ], - "type": [ - "null", - "object" - ] -} - removed
Output schema / properties / vessels / items / properties / wikidataRemoved value: -{ - "additionalProperties": false, - "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", - "properties": { - "beam": { - "description": "beam as registered, metres", - "type": "number" - }, - "builder": { - "description": "shipyard or builder", - "type": "string" - }, - "commons_category": { - "description": "the category of the ship's photos on Wikimedia Commons", - "type": "string" - }, - "deadweight": { - "description": "deadweight, tonnes", - "type": "integer" - }, - "draught": { - "description": "design draught, metres; AIS reports the draught on the current voyage", - "type": "number" - }, - "former_names": { - "description": "names the vessel has carried before, oldest first", - "items": { - "type": "string" - }, - "type": [ - "null", - "array" - ] - }, - "gross_tonnage": { - "type": "integer" - }, - "home_port": { - "description": "port of registry", - "type": "string" - }, - "id": { - "description": "Wikidata item ID", - "type": "string" - }, - "image": { - "description": "the Commons page of a photo of the ship, which shows its license and credit", - "type": "string" - }, - "length": { - "description": "length as registered, metres; may differ from the AIS length", - "type": "number" - }, - "license": { - "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", - "type": "string" - }, - "operator": { - "type": "string" - }, - "owner": { - "type": "string" - }, - "registry": { - "description": "country of registry, in English", - "type": "string" - }, - "ship_type": { - "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", - "type": "string" - }, - "url": { - "description": "the item's page on Wikidata", - "type": "string" - }, - "wikipedia": { - "description": "the ship's English Wikipedia article", - "type": "string" - }, - "yard_number": { - "description": "the builder's hull number", - "type": "string" - }, - "year_built": { - "description": "year the vessel entered service", - "type": "integer" - } - }, - "required": [ - "id", - "url", - "license" - ], - "type": [ - "null", - "object" - ] -}
- Changed
find_vessels_near5 fields changed- added
Output schema / properties / vessels / items / properties / particularsAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, merged from the enrichment sources into one vocabulary (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "identification": { + "description": "the flag state's number for the vessel: a documented vessel's official number, else its state registration", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "net_tonnage": { + "type": "integer" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registered_name": { + "description": "name as documented with the flag state, when it differs from what AIS reports", + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "service": { + "description": "flag-state service type, e.g. Towing Vessel, Passenger (Inspected), Recreational", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, ferry", + "type": "string" + }, + "status": { + "description": "flag-state status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how a tonnage from the flag state was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / provenanceAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "description": "the source of each particulars field, by the field's name; values are keys of sources (get_vessels)", + "type": "object" +} - added
Output schema / properties / vessels / items / properties / sourcesAdded value: +{ + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "description": "display credit for the source", + "type": "string" + }, + "license": { + "type": "string" + }, + "url": { + "description": "the source's own page for this vessel", + "type": "string" + } + }, + "required": [ + "credit", + "license" + ], + "type": "object" + }, + "description": "each contributing source's credit, license, and its own page for this vessel (get_vessels)", + "type": "object" +} - removed
Output schema / properties / vessels / items / properties / uscgRemoved value: -{ - "additionalProperties": false, - "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", - "properties": { - "beam": { - "description": "registered breadth, metres", - "type": "number" - }, - "depth": { - "description": "registered depth, metres", - "type": "number" - }, - "gross_tonnage": { - "type": "integer" - }, - "id": { - "description": "the vessel's ID in PSIX", - "type": "integer" - }, - "identification": { - "description": "the official number of a documented vessel, else its state registration", - "type": "string" - }, - "length": { - "description": "registered length, metres", - "type": "number" - }, - "license": { - "description": "public domain (U.S. government work), no credit required", - "type": "string" - }, - "name": { - "description": "name as documented with the Coast Guard", - "type": "string" - }, - "net_tonnage": { - "type": "integer" - }, - "service": { - "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", - "type": "string" - }, - "status": { - "description": "Coast Guard status, e.g. Active, Laid Up", - "type": "string" - }, - "tonnage_measure": { - "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", - "type": "string" - }, - "year_built": { - "type": "integer" - } - }, - "required": [ - "id", - "license", - "name" - ], - "type": [ - "null", - "object" - ] -} - removed
Output schema / properties / vessels / items / properties / wikidataRemoved value: -{ - "additionalProperties": false, - "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", - "properties": { - "beam": { - "description": "beam as registered, metres", - "type": "number" - }, - "builder": { - "description": "shipyard or builder", - "type": "string" - }, - "commons_category": { - "description": "the category of the ship's photos on Wikimedia Commons", - "type": "string" - }, - "deadweight": { - "description": "deadweight, tonnes", - "type": "integer" - }, - "draught": { - "description": "design draught, metres; AIS reports the draught on the current voyage", - "type": "number" - }, - "former_names": { - "description": "names the vessel has carried before, oldest first", - "items": { - "type": "string" - }, - "type": [ - "null", - "array" - ] - }, - "gross_tonnage": { - "type": "integer" - }, - "home_port": { - "description": "port of registry", - "type": "string" - }, - "id": { - "description": "Wikidata item ID", - "type": "string" - }, - "image": { - "description": "the Commons page of a photo of the ship, which shows its license and credit", - "type": "string" - }, - "length": { - "description": "length as registered, metres; may differ from the AIS length", - "type": "number" - }, - "license": { - "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", - "type": "string" - }, - "operator": { - "type": "string" - }, - "owner": { - "type": "string" - }, - "registry": { - "description": "country of registry, in English", - "type": "string" - }, - "ship_type": { - "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", - "type": "string" - }, - "url": { - "description": "the item's page on Wikidata", - "type": "string" - }, - "wikipedia": { - "description": "the ship's English Wikipedia article", - "type": "string" - }, - "yard_number": { - "description": "the builder's hull number", - "type": "string" - }, - "year_built": { - "description": "year the vessel entered service", - "type": "integer" - } - }, - "required": [ - "id", - "url", - "license" - ], - "type": [ - "null", - "object" - ] -}
- Changed
get_vessels5 fields changed- added
Output schema / properties / vessels / items / properties / particularsAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, merged from the enrichment sources into one vocabulary (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "identification": { + "description": "the flag state's number for the vessel: a documented vessel's official number, else its state registration", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "net_tonnage": { + "type": "integer" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registered_name": { + "description": "name as documented with the flag state, when it differs from what AIS reports", + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "service": { + "description": "flag-state service type, e.g. Towing Vessel, Passenger (Inspected), Recreational", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, ferry", + "type": "string" + }, + "status": { + "description": "flag-state status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how a tonnage from the flag state was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / provenanceAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "description": "the source of each particulars field, by the field's name; values are keys of sources (get_vessels)", + "type": "object" +} - added
Output schema / properties / vessels / items / properties / sourcesAdded value: +{ + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "description": "display credit for the source", + "type": "string" + }, + "license": { + "type": "string" + }, + "url": { + "description": "the source's own page for this vessel", + "type": "string" + } + }, + "required": [ + "credit", + "license" + ], + "type": "object" + }, + "description": "each contributing source's credit, license, and its own page for this vessel (get_vessels)", + "type": "object" +} - removed
Output schema / properties / vessels / items / properties / uscgRemoved value: -{ - "additionalProperties": false, - "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", - "properties": { - "beam": { - "description": "registered breadth, metres", - "type": "number" - }, - "depth": { - "description": "registered depth, metres", - "type": "number" - }, - "gross_tonnage": { - "type": "integer" - }, - "id": { - "description": "the vessel's ID in PSIX", - "type": "integer" - }, - "identification": { - "description": "the official number of a documented vessel, else its state registration", - "type": "string" - }, - "length": { - "description": "registered length, metres", - "type": "number" - }, - "license": { - "description": "public domain (U.S. government work), no credit required", - "type": "string" - }, - "name": { - "description": "name as documented with the Coast Guard", - "type": "string" - }, - "net_tonnage": { - "type": "integer" - }, - "service": { - "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", - "type": "string" - }, - "status": { - "description": "Coast Guard status, e.g. Active, Laid Up", - "type": "string" - }, - "tonnage_measure": { - "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", - "type": "string" - }, - "year_built": { - "type": "integer" - } - }, - "required": [ - "id", - "license", - "name" - ], - "type": [ - "null", - "object" - ] -} - removed
Output schema / properties / vessels / items / properties / wikidataRemoved value: -{ - "additionalProperties": false, - "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", - "properties": { - "beam": { - "description": "beam as registered, metres", - "type": "number" - }, - "builder": { - "description": "shipyard or builder", - "type": "string" - }, - "commons_category": { - "description": "the category of the ship's photos on Wikimedia Commons", - "type": "string" - }, - "deadweight": { - "description": "deadweight, tonnes", - "type": "integer" - }, - "draught": { - "description": "design draught, metres; AIS reports the draught on the current voyage", - "type": "number" - }, - "former_names": { - "description": "names the vessel has carried before, oldest first", - "items": { - "type": "string" - }, - "type": [ - "null", - "array" - ] - }, - "gross_tonnage": { - "type": "integer" - }, - "home_port": { - "description": "port of registry", - "type": "string" - }, - "id": { - "description": "Wikidata item ID", - "type": "string" - }, - "image": { - "description": "the Commons page of a photo of the ship, which shows its license and credit", - "type": "string" - }, - "length": { - "description": "length as registered, metres; may differ from the AIS length", - "type": "number" - }, - "license": { - "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", - "type": "string" - }, - "operator": { - "type": "string" - }, - "owner": { - "type": "string" - }, - "registry": { - "description": "country of registry, in English", - "type": "string" - }, - "ship_type": { - "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", - "type": "string" - }, - "url": { - "description": "the item's page on Wikidata", - "type": "string" - }, - "wikipedia": { - "description": "the ship's English Wikipedia article", - "type": "string" - }, - "yard_number": { - "description": "the builder's hull number", - "type": "string" - }, - "year_built": { - "description": "year the vessel entered service", - "type": "integer" - } - }, - "required": [ - "id", - "url", - "license" - ], - "type": [ - "null", - "object" - ] -}
- Changed
search_vessels_by_name5 fields changed- added
Output schema / properties / vessels / items / properties / particularsAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, merged from the enrichment sources into one vocabulary (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "identification": { + "description": "the flag state's number for the vessel: a documented vessel's official number, else its state registration", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "net_tonnage": { + "type": "integer" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registered_name": { + "description": "name as documented with the flag state, when it differs from what AIS reports", + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "service": { + "description": "flag-state service type, e.g. Towing Vessel, Passenger (Inspected), Recreational", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, ferry", + "type": "string" + }, + "status": { + "description": "flag-state status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how a tonnage from the flag state was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / provenanceAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "description": "the source of each particulars field, by the field's name; values are keys of sources (get_vessels)", + "type": "object" +} - added
Output schema / properties / vessels / items / properties / sourcesAdded value: +{ + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "description": "display credit for the source", + "type": "string" + }, + "license": { + "type": "string" + }, + "url": { + "description": "the source's own page for this vessel", + "type": "string" + } + }, + "required": [ + "credit", + "license" + ], + "type": "object" + }, + "description": "each contributing source's credit, license, and its own page for this vessel (get_vessels)", + "type": "object" +} - removed
Output schema / properties / vessels / items / properties / uscgRemoved value: -{ - "additionalProperties": false, - "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", - "properties": { - "beam": { - "description": "registered breadth, metres", - "type": "number" - }, - "depth": { - "description": "registered depth, metres", - "type": "number" - }, - "gross_tonnage": { - "type": "integer" - }, - "id": { - "description": "the vessel's ID in PSIX", - "type": "integer" - }, - "identification": { - "description": "the official number of a documented vessel, else its state registration", - "type": "string" - }, - "length": { - "description": "registered length, metres", - "type": "number" - }, - "license": { - "description": "public domain (U.S. government work), no credit required", - "type": "string" - }, - "name": { - "description": "name as documented with the Coast Guard", - "type": "string" - }, - "net_tonnage": { - "type": "integer" - }, - "service": { - "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", - "type": "string" - }, - "status": { - "description": "Coast Guard status, e.g. Active, Laid Up", - "type": "string" - }, - "tonnage_measure": { - "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", - "type": "string" - }, - "year_built": { - "type": "integer" - } - }, - "required": [ - "id", - "license", - "name" - ], - "type": [ - "null", - "object" - ] -} - removed
Output schema / properties / vessels / items / properties / wikidataRemoved value: -{ - "additionalProperties": false, - "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", - "properties": { - "beam": { - "description": "beam as registered, metres", - "type": "number" - }, - "builder": { - "description": "shipyard or builder", - "type": "string" - }, - "commons_category": { - "description": "the category of the ship's photos on Wikimedia Commons", - "type": "string" - }, - "deadweight": { - "description": "deadweight, tonnes", - "type": "integer" - }, - "draught": { - "description": "design draught, metres; AIS reports the draught on the current voyage", - "type": "number" - }, - "former_names": { - "description": "names the vessel has carried before, oldest first", - "items": { - "type": "string" - }, - "type": [ - "null", - "array" - ] - }, - "gross_tonnage": { - "type": "integer" - }, - "home_port": { - "description": "port of registry", - "type": "string" - }, - "id": { - "description": "Wikidata item ID", - "type": "string" - }, - "image": { - "description": "the Commons page of a photo of the ship, which shows its license and credit", - "type": "string" - }, - "length": { - "description": "length as registered, metres; may differ from the AIS length", - "type": "number" - }, - "license": { - "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", - "type": "string" - }, - "operator": { - "type": "string" - }, - "owner": { - "type": "string" - }, - "registry": { - "description": "country of registry, in English", - "type": "string" - }, - "ship_type": { - "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", - "type": "string" - }, - "url": { - "description": "the item's page on Wikidata", - "type": "string" - }, - "wikipedia": { - "description": "the ship's English Wikipedia article", - "type": "string" - }, - "yard_number": { - "description": "the builder's hull number", - "type": "string" - }, - "year_built": { - "description": "year the vessel entered service", - "type": "integer" - } - }, - "required": [ - "id", - "url", - "license" - ], - "type": [ - "null", - "object" - ] -}
4 tool updates
- Changed
find_vessels_in_area2 fields changed- added
Output schema / properties / vessels / items / properties / uscgAdded value: +{ + "additionalProperties": false, + "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", + "properties": { + "beam": { + "description": "registered breadth, metres", + "type": "number" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "gross_tonnage": { + "type": "integer" + }, + "id": { + "description": "the vessel's ID in PSIX", + "type": "integer" + }, + "identification": { + "description": "the official number of a documented vessel, else its state registration", + "type": "string" + }, + "length": { + "description": "registered length, metres", + "type": "number" + }, + "license": { + "description": "public domain (U.S. government work), no credit required", + "type": "string" + }, + "name": { + "description": "name as documented with the Coast Guard", + "type": "string" + }, + "net_tonnage": { + "type": "integer" + }, + "service": { + "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", + "type": "string" + }, + "status": { + "description": "Coast Guard status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "required": [ + "id", + "license", + "name" + ], + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / wikidataAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "id": { + "description": "Wikidata item ID", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "license": { + "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", + "type": "string" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", + "type": "string" + }, + "url": { + "description": "the item's page on Wikidata", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "description": "year the vessel entered service", + "type": "integer" + } + }, + "required": [ + "id", + "url", + "license" + ], + "type": [ + "null", + "object" + ] +}
- Changed
find_vessels_near2 fields changed- added
Output schema / properties / vessels / items / properties / uscgAdded value: +{ + "additionalProperties": false, + "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", + "properties": { + "beam": { + "description": "registered breadth, metres", + "type": "number" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "gross_tonnage": { + "type": "integer" + }, + "id": { + "description": "the vessel's ID in PSIX", + "type": "integer" + }, + "identification": { + "description": "the official number of a documented vessel, else its state registration", + "type": "string" + }, + "length": { + "description": "registered length, metres", + "type": "number" + }, + "license": { + "description": "public domain (U.S. government work), no credit required", + "type": "string" + }, + "name": { + "description": "name as documented with the Coast Guard", + "type": "string" + }, + "net_tonnage": { + "type": "integer" + }, + "service": { + "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", + "type": "string" + }, + "status": { + "description": "Coast Guard status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "required": [ + "id", + "license", + "name" + ], + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / wikidataAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "id": { + "description": "Wikidata item ID", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "license": { + "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", + "type": "string" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", + "type": "string" + }, + "url": { + "description": "the item's page on Wikidata", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "description": "year the vessel entered service", + "type": "integer" + } + }, + "required": [ + "id", + "url", + "license" + ], + "type": [ + "null", + "object" + ] +}
- Changed
get_vessels2 fields changed- added
Output schema / properties / vessels / items / properties / uscgAdded value: +{ + "additionalProperties": false, + "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", + "properties": { + "beam": { + "description": "registered breadth, metres", + "type": "number" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "gross_tonnage": { + "type": "integer" + }, + "id": { + "description": "the vessel's ID in PSIX", + "type": "integer" + }, + "identification": { + "description": "the official number of a documented vessel, else its state registration", + "type": "string" + }, + "length": { + "description": "registered length, metres", + "type": "number" + }, + "license": { + "description": "public domain (U.S. government work), no credit required", + "type": "string" + }, + "name": { + "description": "name as documented with the Coast Guard", + "type": "string" + }, + "net_tonnage": { + "type": "integer" + }, + "service": { + "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", + "type": "string" + }, + "status": { + "description": "Coast Guard status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "required": [ + "id", + "license", + "name" + ], + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / wikidataAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "id": { + "description": "Wikidata item ID", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "license": { + "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", + "type": "string" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", + "type": "string" + }, + "url": { + "description": "the item's page on Wikidata", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "description": "year the vessel entered service", + "type": "integer" + } + }, + "required": [ + "id", + "url", + "license" + ], + "type": [ + "null", + "object" + ] +}
- Changed
search_vessels_by_name2 fields changed- added
Output schema / properties / vessels / items / properties / uscgAdded value: +{ + "additionalProperties": false, + "description": "particulars as documented with the US Coast Guard, for a US-flag vessel whose call sign and name match a vessel in its PSIX database (get_vessels)", + "properties": { + "beam": { + "description": "registered breadth, metres", + "type": "number" + }, + "depth": { + "description": "registered depth, metres", + "type": "number" + }, + "gross_tonnage": { + "type": "integer" + }, + "id": { + "description": "the vessel's ID in PSIX", + "type": "integer" + }, + "identification": { + "description": "the official number of a documented vessel, else its state registration", + "type": "string" + }, + "length": { + "description": "registered length, metres", + "type": "number" + }, + "license": { + "description": "public domain (U.S. government work), no credit required", + "type": "string" + }, + "name": { + "description": "name as documented with the Coast Guard", + "type": "string" + }, + "net_tonnage": { + "type": "integer" + }, + "service": { + "description": "service type, e.g. Towing Vessel, Passenger (Inspected), Commercial Fishing Vessel, Recreational", + "type": "string" + }, + "status": { + "description": "Coast Guard status, e.g. Active, Laid Up", + "type": "string" + }, + "tonnage_measure": { + "description": "how the tonnage was measured: Convention (the international system), Regulatory (the older US system, in register tons), or Simplified (small vessels)", + "type": "string" + }, + "year_built": { + "type": "integer" + } + }, + "required": [ + "id", + "license", + "name" + ], + "type": [ + "null", + "object" + ] +} - added
Output schema / properties / vessels / items / properties / wikidataAdded value: +{ + "additionalProperties": false, + "description": "particulars as registered, from the vessel's Wikidata item found by its IMO number (get_vessels)", + "properties": { + "beam": { + "description": "beam as registered, metres", + "type": "number" + }, + "builder": { + "description": "shipyard or builder", + "type": "string" + }, + "commons_category": { + "description": "the category of the ship's photos on Wikimedia Commons", + "type": "string" + }, + "deadweight": { + "description": "deadweight, tonnes", + "type": "integer" + }, + "draught": { + "description": "design draught, metres; AIS reports the draught on the current voyage", + "type": "number" + }, + "former_names": { + "description": "names the vessel has carried before, oldest first", + "items": { + "type": "string" + }, + "type": [ + "null", + "array" + ] + }, + "gross_tonnage": { + "type": "integer" + }, + "home_port": { + "description": "port of registry", + "type": "string" + }, + "id": { + "description": "Wikidata item ID", + "type": "string" + }, + "image": { + "description": "the Commons page of a photo of the ship, which shows its license and credit", + "type": "string" + }, + "length": { + "description": "length as registered, metres; may differ from the AIS length", + "type": "number" + }, + "license": { + "description": "CC0-1.0: public domain, no credit required; the photos image and commons_category lead to carry their own licenses", + "type": "string" + }, + "operator": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "registry": { + "description": "country of registry, in English", + "type": "string" + }, + "ship_type": { + "description": "kind of ship, e.g. bulk carrier, container ship, oil tanker, ferry", + "type": "string" + }, + "url": { + "description": "the item's page on Wikidata", + "type": "string" + }, + "wikipedia": { + "description": "the ship's English Wikipedia article", + "type": "string" + }, + "yard_number": { + "description": "the builder's hull number", + "type": "string" + }, + "year_built": { + "description": "year the vessel entered service", + "type": "integer" + } + }, + "required": [ + "id", + "url", + "license" + ], + "type": [ + "null", + "object" + ] +}
1 tool update
- Changed
get_coverage8 fields changed- added
Input schema / properties / max_ageAdded value: +{ + "description": "count vessels heard within this long, network-wide and in bbox, instead of the last 30 minutes: a duration such as 6h, 24h, or 7d, or all for every vessel the network has heard", + "type": "string" +} - changed
Output schema / properties / area / properties / vessels / descriptionPrevious value: -"vessels with a position inside the box"New value: +"vessels whose last known position is inside the box, heard in the last 30 minutes or within max_age" - added
Output schema / properties / vessels / properties / activeAdded value: +{ + "description": "vessels heard in the last 30 minutes", + "type": "integer" +} - added
Output schema / properties / vessels / properties / heardAdded value: +{ + "description": "vessels heard within max_age; present when max_age is given", + "type": [ + "null", + "integer" + ] +} - added
Output schema / properties / vessels / properties / newAdded value: +{ + "description": "vessels first heard within max_age; present when max_age is a duration", + "type": [ + "null", + "integer" + ] +} - changed
Output schema / properties / vessels / properties / total / descriptionPrevious value: -"vessels heard in the last 30 minutes"New value: +"every vessel the network has heard" - added
Output schema / properties / vessels / properties / with_position / descriptionAdded value: +"of the active vessels, those with a position" - changed
Output schema / properties / vessels / requiredPrevious value: -[ - "total", - "with_position" -]New value: +[ + "total", + "active", + "with_position" +]
1 tool update
- Changed
get_vessel_track5 fields changed- changed
Input schema / properties / from / descriptionPrevious value: -"start, RFC 3339 UTC; default 24 hours before to. Positions reach back 48 hours"New value: +"start, RFC 3339 UTC; default 24 hours before to. Anonymous and personal calls reach back 48 hours; feeder and commercial tokens reach the archive, up to 7 days per call" - changed
Input schema / properties / interval_minutes / descriptionPrevious value: -"at most one position per this many minutes; by default the positions are spread evenly over the range"New value: +"at most one position per this many minutes; by default the limit is spread over the range at a round spacing, reported as interval_s" - changed
Output schema / properties / from / descriptionPrevious value: -"start of the range covered, after clamping to the last 48 hours"New value: +"start of the range covered, after clamping to what the caller can reach: the last 48 hours, or the archive for feeder and commercial tokens" - added
Output schema / properties / interval_sAdded value: +{ + "description": "at most one position per this many seconds; 0 is every position heard", + "type": "integer" +} - changed
Output schema / requiredPrevious value: -[ - "mmsi", - "from", - "to", - "positions", - "truncated", - "attribution" -]New value: +[ + "mmsi", + "from", + "to", + "interval_s", + "positions", + "truncated", + "attribution" +]
1 tool update
- Added
get_vessel_track
4 tool updates
- Changed
find_vessels_in_area2 fields changed- changed
Output schema / properties / unknown_imo / descriptionPrevious value: -"requested IMO numbers matching no vessel heard in the last 30 minutes"New value: +"requested IMO numbers matching no vessel the network has heard" - changed
Output schema / properties / unknown_mmsi / descriptionPrevious value: -"requested MMSIs not heard in the last 30 minutes"New value: +"requested MMSIs matching no vessel the network has heard"
- Changed
find_vessels_near2 fields changed- changed
Output schema / properties / unknown_imo / descriptionPrevious value: -"requested IMO numbers matching no vessel heard in the last 30 minutes"New value: +"requested IMO numbers matching no vessel the network has heard" - changed
Output schema / properties / unknown_mmsi / descriptionPrevious value: -"requested MMSIs not heard in the last 30 minutes"New value: +"requested MMSIs matching no vessel the network has heard"
- Changed
get_vessels2 fields changed- changed
Output schema / properties / unknown_imo / descriptionPrevious value: -"requested IMO numbers matching no vessel heard in the last 30 minutes"New value: +"requested IMO numbers matching no vessel the network has heard" - changed
Output schema / properties / unknown_mmsi / descriptionPrevious value: -"requested MMSIs not heard in the last 30 minutes"New value: +"requested MMSIs matching no vessel the network has heard"
- Changed
search_vessels_by_name2 fields changed- changed
Output schema / properties / unknown_imo / descriptionPrevious value: -"requested IMO numbers matching no vessel heard in the last 30 minutes"New value: +"requested IMO numbers matching no vessel the network has heard" - changed
Output schema / properties / unknown_mmsi / descriptionPrevious value: -"requested MMSIs not heard in the last 30 minutes"New value: +"requested MMSIs matching no vessel the network has heard"
1 tool update
- Changed
get_coverage1 field changed- added
Output schema / properties / sources / items / properties / delayAdded value: +{ + "additionalProperties": false, + "description": "seconds from broadcast to arrival over the last position reports from this source", + "properties": { + "p50": { + "description": "median delay in seconds", + "type": "number" + }, + "p99": { + "description": "99th percentile delay in seconds", + "type": "number" + } + }, + "required": [ + "p50", + "p99" + ], + "type": [ + "null", + "object" + ] +}
4 tool updates
- Changed
find_vessels_in_area10 fields changed- added
Input schema / properties / flagAdded value: +{ + "description": "only vessels flying this flag: ISO 3166-1 alpha-2, e.g. NO, FI, MH", + "type": "string" +} - added
Output schema / properties / unknown_imoAdded value: +{ + "description": "requested IMO numbers matching no vessel heard in the last 30 minutes", + "items": { + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "type": [ + "null", + "array" + ] +} - added
Output schema / properties / vessels / items / properties / beamAdded value: +{ + "description": "beam, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +} - added
Output schema / properties / vessels / items / properties / callsignAdded value: +{ + "type": "string" +} - added
Output schema / properties / vessels / items / properties / destinationAdded value: +{ + "description": "destination as typed by the crew: a port name, a UN/LOCODE, or nothing useful", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / draughtAdded value: +{ + "description": "maximum static draught, metres", + "type": [ + "null", + "number" + ] +} - added
Output schema / properties / vessels / items / properties / etaAdded value: +{ + "description": "estimated arrival as sent, MM-DD HH:MM UTC or MM-DD; AIS carries no year, so read it as the next occurrence", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / flagAdded value: +{ + "description": "ISO 3166-1 alpha-2 code of the flag state, from the MMSI's maritime identification digits", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / imoAdded value: +{ + "description": "IMO number, once the vessel's static data has been heard", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" +} - added
Output schema / properties / vessels / items / properties / lengthAdded value: +{ + "description": "overall length, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +}
- Changed
find_vessels_near10 fields changed- added
Input schema / properties / flagAdded value: +{ + "description": "only vessels flying this flag: ISO 3166-1 alpha-2, e.g. NO, FI, MH", + "type": "string" +} - added
Output schema / properties / unknown_imoAdded value: +{ + "description": "requested IMO numbers matching no vessel heard in the last 30 minutes", + "items": { + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "type": [ + "null", + "array" + ] +} - added
Output schema / properties / vessels / items / properties / beamAdded value: +{ + "description": "beam, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +} - added
Output schema / properties / vessels / items / properties / callsignAdded value: +{ + "type": "string" +} - added
Output schema / properties / vessels / items / properties / destinationAdded value: +{ + "description": "destination as typed by the crew: a port name, a UN/LOCODE, or nothing useful", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / draughtAdded value: +{ + "description": "maximum static draught, metres", + "type": [ + "null", + "number" + ] +} - added
Output schema / properties / vessels / items / properties / etaAdded value: +{ + "description": "estimated arrival as sent, MM-DD HH:MM UTC or MM-DD; AIS carries no year, so read it as the next occurrence", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / flagAdded value: +{ + "description": "ISO 3166-1 alpha-2 code of the flag state, from the MMSI's maritime identification digits", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / imoAdded value: +{ + "description": "IMO number, once the vessel's static data has been heard", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" +} - added
Output schema / properties / vessels / items / properties / lengthAdded value: +{ + "description": "overall length, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +}
- Changed
get_vessels12 fields changed- added
Input schema / properties / imoAdded value: +{ + "description": "IMO numbers to look up, counted with mmsi against the same cap; a vessel is found by IMO only once its static data has been heard", + "items": { + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "type": [ + "null", + "array" + ] +} - changed
Input schema / properties / mmsi / descriptionPrevious value: -"MMSIs to look up; anonymous calls may pass 10, a personal token 50"New value: +"MMSIs to look up; anonymous calls may pass 10 identifiers per call, a personal token 50" - removed
Input schema / requiredRemoved value: -[ - "mmsi" -] - added
Output schema / properties / unknown_imoAdded value: +{ + "description": "requested IMO numbers matching no vessel heard in the last 30 minutes", + "items": { + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "type": [ + "null", + "array" + ] +} - added
Output schema / properties / vessels / items / properties / beamAdded value: +{ + "description": "beam, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +} - added
Output schema / properties / vessels / items / properties / callsignAdded value: +{ + "type": "string" +} - added
Output schema / properties / vessels / items / properties / destinationAdded value: +{ + "description": "destination as typed by the crew: a port name, a UN/LOCODE, or nothing useful", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / draughtAdded value: +{ + "description": "maximum static draught, metres", + "type": [ + "null", + "number" + ] +} - added
Output schema / properties / vessels / items / properties / etaAdded value: +{ + "description": "estimated arrival as sent, MM-DD HH:MM UTC or MM-DD; AIS carries no year, so read it as the next occurrence", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / flagAdded value: +{ + "description": "ISO 3166-1 alpha-2 code of the flag state, from the MMSI's maritime identification digits", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / imoAdded value: +{ + "description": "IMO number, once the vessel's static data has been heard", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" +} - added
Output schema / properties / vessels / items / properties / lengthAdded value: +{ + "description": "overall length, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +}
- Changed
search_vessels_by_name10 fields changed- added
Input schema / properties / flagAdded value: +{ + "description": "only vessels flying this flag: ISO 3166-1 alpha-2, e.g. NO, FI, MH", + "type": "string" +} - added
Output schema / properties / unknown_imoAdded value: +{ + "description": "requested IMO numbers matching no vessel heard in the last 30 minutes", + "items": { + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "type": [ + "null", + "array" + ] +} - added
Output schema / properties / vessels / items / properties / beamAdded value: +{ + "description": "beam, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +} - added
Output schema / properties / vessels / items / properties / callsignAdded value: +{ + "type": "string" +} - added
Output schema / properties / vessels / items / properties / destinationAdded value: +{ + "description": "destination as typed by the crew: a port name, a UN/LOCODE, or nothing useful", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / draughtAdded value: +{ + "description": "maximum static draught, metres", + "type": [ + "null", + "number" + ] +} - added
Output schema / properties / vessels / items / properties / etaAdded value: +{ + "description": "estimated arrival as sent, MM-DD HH:MM UTC or MM-DD; AIS carries no year, so read it as the next occurrence", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / flagAdded value: +{ + "description": "ISO 3166-1 alpha-2 code of the flag state, from the MMSI's maritime identification digits", + "type": "string" +} - added
Output schema / properties / vessels / items / properties / imoAdded value: +{ + "description": "IMO number, once the vessel's static data has been heard", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" +} - added
Output schema / properties / vessels / items / properties / lengthAdded value: +{ + "description": "overall length, metres", + "maximum": 65535, + "minimum": 0, + "type": [ + "null", + "integer" + ] +}
5 tool updates
- First observed
find_vessels_in_area - First observed
find_vessels_near - First observed
get_coverage - First observed
get_vessels - First observed
search_vessels_by_name
Related MCP Connectors
Vessel Tracking — live worldwide ship positions from AIS.
Vessel tracking for 750,000+ ships, with ownership, inspections, port records, routes, and more.
Live AIS vessel tracking for the Baltic Sea and Gulf of Finland via Fintraffic's open Digitraffic
Datalastic MCP — live AIS vessel positions (datalastic.com)
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceProvides live vessel positions from Fintraffic's AIS receivers in Finnish and Baltic waters, with tools to query vessels near a point, count vessels in an area, and get details by MMSI. No authentication required.77 npmMIT
- AlicenseNot gradedqualityBmaintenanceMCP server for live ship tracking via AIS data. Provides tools to get vessels in an area, live position by MMSI, and AIS coverage checks.392 npmMIT

Datalastic MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceEnables real-time vessel tracking, port data, maritime weather, and maritime intelligence through 25 tools, allowing AI clients to query live vessel positions, registry, port info, area searches, weather, and more.MIT- AlicenseNot gradedqualityBmaintenanceProvides live AIS vessel positions from datalastic.com, enabling querying of vessel data through natural language via the Pipeworx MCP gateway.250 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.