ocean-schedules
Server Details
Compare ocean carrier schedules, transit times and reliability: 60+ carriers, 72,000+ sailings.
- Status
- Healthy
- Uptime
- 100.0% over 61 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- lxxmng/schedulesmcp-mcp
- GitHub Stars
- 0
- Server Listing
- SchedulesMCP
TDQS
Scored across 12 tools
Each tool targets a distinct aspect of ocean shipping: storms, carrier performance, lane schedules, port conditions, and alerts. Even overlapping areas like carrier reliability and lane comparisons are clearly differentiated by scope and purpose.
All tools use consistent snake_case naming. Most follow a verb_noun or noun_noun pattern, though some start with verbs (e.g., compare_lanes, find_sailings) and others with nouns (e.g., carrier_league, port_congestion). This is predictable but not perfectly uniform.
With 12 tools, the server is well-scoped for the domain of ocean scheduling. Each tool provides meaningful functionality without redundancy, covering storms, carriers, lanes, ports, and alerts.
The tool surface covers core information needs: storms, carrier reliability, lane schedules, port congestion, transit times, and alerts. Minor gaps exist, such as lacking detailed vessel info or carrier-specific data beyond reliability, but the overall coverage is strong for an informational service.
Available Tools
12 toolsactive_cyclonesAInspect
Live tropical cyclones (typhoons/hurricanes) currently active on ocean trade lanes — name, basin, category, center position, max wind, pressure and movement, from CMA (NW-Pacific) + NHC (Atlantic/E-Pacific) + JTWC (Indian/Southern Hemisphere) + GDACS (global). Use this to see which storms are at sea right now.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses data sources (CMA, NHC, JTWC, GDACS) and output fields (name, basin, category, etc.), giving a clear picture of what to expect. It could enhance transparency by mentioning update frequency or behavior when no storms are active, but the current level is strong.
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 description is two sentences with zero waste. The first sentence immediately states the tool's purpose and key attributes, and the second sentence reinforces the use case. Every word serves a purpose.
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 no output schema, the description must convey return format. It lists specific fields (name, basin, category, etc.) and sources, providing enough context for the agent to understand the response structure. However, it does not mention potential error states or performance considerations.
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?
The tool has no parameters, so the description need not explain parameter meaning. The baseline score is 4, and the description adds value by detailing the output structure, which compensates for the lack of an output schema.
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?
The description uses a specific verb ('active') and resource ('cyclones'), clearly indicating it returns live tropical cyclones with attributes like name, basin, category, and position. It distinguishes from sibling tools like 'lane_storm_exposure' which focus on lane-specific exposure, not general cyclone status.
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?
The description states the tool is for seeing 'which storms are at sea right now,' implying a current snapshot use case. However, it does not explicitly mention when not to use it or provide alternatives among siblings (e.g., for historical data or lane-specific analysis), leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
carrier_leagueAInspect
Carrier league table — ocean carriers ranked by overall on-time reliability across all tracked lanes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full weight. It discloses the tool ranks carriers by on-time reliability across all lanes, but does not describe output format, data freshness, or limitations. For a read-only tool with zero parameters, this is adequate but not deeply transparent.
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?
A single, front-loaded sentence with zero waste. Every word carries meaning.
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?
Given zero parameters and no output schema, the description is nearly complete. It could mention whether the data is real-time or periodic, but overall it suffices for a simple lookup 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?
The tool has no parameters and schema coverage is 100%. The description adds no parameter information, but none is needed. Baseline 4 is appropriate.
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?
The description clearly states the tool provides a league table ranking ocean carriers by overall on-time reliability across all tracked lanes. It specifies the verb (ranked) and the resource (carriers), distinguishing it from siblings like carrier_reliability which likely focuses on per-lane reliability.
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?
The description gives no guidance on when to use this tool versus alternatives such as carrier_reliability or find_best_sailings. No context on prerequisites or exclusions is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
carrier_reliabilityCInspect
On-time performance and delay distribution for a specific carrier (by SCAC), optionally on a given lane.
| Name | Required | Description | Default |
|---|---|---|---|
| carrier_code | Yes | Carrier SCAC, e.g. MAEU |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description lacks behavioral details such as return format, pagination, or authentication requirements. It only vaguely mentions 'on-time performance and delay distribution'.
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 description is a single sentence, but it includes inaccurate information (optional lane) that wastes space. It could be concise if corrected.
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?
Given no output schema, the description should explain return values. It does not. The tool is incomplete for an agent to understand what data it will receive.
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?
The single parameter 'carrier_code' has 100% schema coverage with a description. The tool description adds no extra meaning beyond the schema, but the misleading reference to an optional lane degrades clarity. Baseline 3 is appropriate.
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?
The description states on-time performance and delay distribution for a specific carrier, but the mention of an optional lane is misleading because the input schema does not include a lane parameter. This inaccuracy undermines clarity.
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?
No guidance is provided on when to use this tool versus sibling tools like 'carrier_league' or 'compare_lanes'. The description does not explain context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_lanesAInspect
Compare ocean carriers serving an origin→destination port pair, ranked by on-time reliability and transit time. Use this to decide which line to book.
| Name | Required | Description | Default |
|---|---|---|---|
| origin | Yes | Origin port UN/LOCODE, e.g. CNSHA | |
| destination | Yes | Destination port UN/LOCODE, e.g. NLRTM |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as data freshness, permissions needed, side effects, or how the ranking is computed. This lack of detail is a significant gap for a decision-making tool.
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 with zero waste, clearly stating purpose and usage. Efficient and to the point.
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?
Given the tool's simplicity (2 required params, no output schema), the description is adequate for basic understanding. However, the lack of behavioral transparency and output details reduces completeness. It suffices but could be better.
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% with both parameters described. The description adds no new meaning beyond the schema (e.g., UN/LOCODE format is already in schema). Baseline 3 is appropriate.
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?
The description clearly states it compares ocean carriers for a specific origin-destination pair, ranked by on-time reliability and transit time. This distinguishes it from siblings like carrier_reliability (single carrier) and find_sailings (list sailings).
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?
It provides explicit guidance: 'Use this to decide which line to book.' While it doesn't explicitly list when not to use, the context of deciding between carriers is clear and differentiates from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_best_sailingsInspect
Decision query: the best upcoming sailings on a lane, ONE per carrier (next bookable departure), ranked. Filter by date window, max transit days, min on-time reliability, cut-off still open, and direct-vs-transshipment. Use this to answer "what should I book?". etd, eta, cutoff.at and the from/to window are port-local times with no timezone offset (2026-10-01T13:00:00): quote the digits, do not convert; only retrieved_at is UTC.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Latest departure date YYYY-MM-DD (default: +60 days) | |
| from | No | Earliest departure date YYYY-MM-DD (default: today) | |
| sort | No | Ranking (default recommended = reliability blended with transit) | |
| cutoff | No | Only sailings whose booking cut-off has not passed. Sailings where no cut-off is held are kept by default; each option carries cutoff_status saying which case it is. | |
| origin | Yes | Origin port UN/LOCODE or name resolves upstream, e.g. CNSHA | |
| destination | Yes | Destination port UN/LOCODE, e.g. NLRTM | |
| transshipment | No | true keeps only sailings that change ship, false only sailings proven direct. Omit it for both: a sailing whose routing we do not hold is returned by neither side, because we will not call a sailing direct without evidence. | |
| max_transit_days | No | Maximum transit time in days | |
| reliability_floor | No | Minimum 90-day on-time %, 0-100 | |
| cutoff_include_unknown | No | Default true. false narrows to sailings where a deadline is actually held and still ahead. |
find_sailingsAInspect
Observed and derived upcoming departures on an origin→destination lane, with carrier and frequency.
| Name | Required | Description | Default |
|---|---|---|---|
| origin | Yes | Origin port UN/LOCODE | |
| destination | Yes | Destination port UN/LOCODE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for behavioral disclosure. It implies a read-only operation by describing 'upcoming departures' and does not indicate any destructive or side effects. The phrase 'observed and derived' hints at data provenance but does not contradict any annotations. While it could explicitly state that it is a safe read operation, the implication is clear enough.
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 description is a single sentence of 12 words, front-loading the core purpose. Every word is necessary; there is no redundancy or filler. It is optimally concise for its content.
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?
Given no output schema and only two simple parameters, the description partially covers return values by mentioning 'carrier and frequency.' However, it omits other relevant details like time, date, vessel, or pagination, leaving the agent with an incomplete picture of the tool's output. The description is minimally adequate but not comprehensive.
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?
The input schema has 100% coverage with clear descriptions for both parameters ('Origin port UN/LOCODE' and 'Destination port UN/LOCODE'), so the baseline is 3. The description adds context about the return values ('carrier and frequency') but does not enhance the meaning of the parameters themselves beyond what the schema already provides.
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?
The description clearly states the tool finds 'observed and derived upcoming departures on an origin→destination lane, with carrier and frequency.' It specifies the verb ('find'), the resource ('sailings'), and the scope ('origin→destination lane'), making the purpose unambiguous. Additionally, it distinguishes itself from siblings like 'find_best_sailings' and 'get_schedules' by focusing on basic observed and derived departures.
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?
The description provides no guidance on when to use this tool versus alternatives such as 'find_best_sailings' or 'get_schedules.' It neither states prerequisites nor mentions scenarios where this tool should be avoided, leaving the agent to infer usage context without explicit instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_schedulesInspect
Published forward sailing schedules on an origin→destination lane: carrier, vessel, voyage, ETD/ETA, cut-offs and routing (leg count, transshipment ports, distance, CO2 per TEU and the port-by-port route_legs where the carrier publishes them; null where they do not), soonest first, from each carrier's own published schedules. Use this to find concrete upcoming departures to book. Every schedule time (published_departure, published_arrival, cut-offs, route_legs times, the from window) is the local time of its own port as the line publishes it, written without a timezone offset (2026-10-01T13:00:00): quote the digits and do not convert them; departure_precision/arrival_precision say minute (a time) or day (a date only); only retrieved_at is UTC and carries an offset; use transit_days for voyage length. The answer also carries carriers: one entry per line with carrier_code, carrier_name and count (its sailings in this answer; the counts add up to count), most first. An entry has error only when that line was asked live for this lane in this request and gave no answer: timeout (no answer in time), failed (error or unreachable), or paused (not asked; it timed out twice in a row here, retried after 6 h). A line that answered it has no sailings carries no error, and a line in error is listed even at count 0.
| Name | Required | Description | Default |
|---|---|---|---|
| from | No | Earliest departure date as YYYY-MM-DD, with no time and no timezone offset. Must be today or later. Sailings are returned from 00:00 of that date, read in each port's local time, onward. Omit for today. | |
| origin | Yes | Origin port UN/LOCODE, e.g. CNSHA | |
| destination | Yes | Destination port UN/LOCODE, e.g. NLRTM |
lane_storm_exposureAInspect
Whether an origin→destination ocean lane currently passes through an active cyclone's forecast gale field (a "storm-exposed" sailing at risk of weather delay). Omit ports to list every exposed lane.
| Name | Required | Description | Default |
|---|---|---|---|
| origin | No | Origin port UN/LOCODE, e.g. CNSHA | |
| destination | No | Destination port UN/LOCODE, e.g. USLAX |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It indicates the check is for 'currently' with 'forecast gale field', but does not explain edge cases like no cyclones or invalid ports.
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 concise sentences with no wasted words. First sentence defines purpose, second provides key usage note.
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?
Covers main use and parameter behavior but lacks details on output format or precise definition of 'storm-exposed'. With no output schema, more context on return values would improve completeness.
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% with descriptions for both parameters. The description adds value by explaining that omitting both ports lists every exposed lane, which is not in schema 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?
The description clearly states the tool's function: check if an ocean lane passes through a cyclone's forecast gale field. It distinguishes from siblings like active_cyclones by focusing on lane exposure rather than cyclone info.
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?
The description implies use for storm-exposure checks and mentions omitting ports to list all exposed lanes, but does not explicitly state when to use this vs alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
port_congestionInspect
Fused port-congestion signal for a port (UN/LOCODE): effective level (mild/moderate/severe), expected added wait in days (for ETA-band widening), a 0–1 confidence, and the independent readings behind it — measured vessel waiting times, port-call throughput and AIS wait/density.
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | Port UN/LOCODE, e.g. NLRTM |
port_reliabilityBInspect
Congestion and dwell signals for a port (UN/LOCODE) — average wait and vessels at anchor.
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | Port UN/LOCODE, e.g. NLRTM |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It mentions output data (congestion, dwell signals) but does not disclose behavioral traits such as data freshness, authorization needs, or rate limits.
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?
Single sentence that is concise and front-loaded with key terms. No unnecessary words.
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?
Given the tool has only one parameter and no output schema, the description is minimally adequate but could be improved by mentioning output format or typical data ranges.
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% for the single parameter 'port' with description. The description only repeats the schema's example and does not add formatting or additional meaning.
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?
Description clearly states the tool provides congestion and dwell signals for a port, specifying average wait and vessels at anchor. However, it does not differentiate from the sibling tool 'port_congestion'.
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?
No guidance on when to use this tool versus alternatives like port_congestion. The description lacks context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transit_timeAInspect
Observed transit-time distribution (median / p90, in days) for a carrier on an origin→destination lane.
| Name | Required | Description | Default |
|---|---|---|---|
| origin | Yes | Origin port UN/LOCODE | |
| destination | Yes | Destination port UN/LOCODE | |
| carrier_code | No | Optional carrier SCAC to filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that data is observed (likely historical) and provides median/p90 in days, but omits details on data freshness, authentication, rate limits, or any constraints beyond the schema.
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 description is a single sentence of 15 words, front-loaded with the key verb and resource. It contains no redundant or unnecessary information, making it highly concise and efficient.
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?
Given no output schema, the description should explain return values. It mentions median/p90 and days but does not specify the structure (e.g., object with keys), error handling, pagination, or time period. Lacks completeness for a tool with parameters.
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?
The input schema has 100% coverage for all three parameters (origin, destination, carrier_code). The description adds no additional meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.
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?
The description clearly states the tool provides 'observed transit-time distribution (median / p90, in days)' for 'a carrier on an origin→destination lane', specifying the verb, resource, statistics, units, and scope, which distinguishes it from siblings.
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?
The description implies usage when needing transit-time statistics but does not explicitly state when to use this tool over alternatives like 'carrier_reliability' or 'find_sailings', nor does it provide exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
watch_laneAInspect
Watch a lane for schedule alerts (PAID): get emailed when a sailing on it is blanked, a booking cut-off is about to close, or a sailing slips. Also alerts on reliability drops. Returns the created watch.
| Name | Required | Description | Default |
|---|---|---|---|
| origin | Yes | Origin port UN/LOCODE, e.g. CNNGB | |
| alert_slip | No | Alert when a sailing slips vs schedule (default true) | |
| alert_blank | No | Alert on suspected blank sailings (default true) | |
| destination | Yes | Destination port UN/LOCODE, e.g. NLRTM | |
| alert_cutoff | No | Alert when a booking cut-off is closing (default true) | |
| carrier_code | No | Optional SCAC to scope the watch to one carrier | |
| cutoff_lead_hours | No | Hours before cut-off to alert (default 48) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses key behaviors: email alerts for four events and returns the created watch. It does not mention any destructive side effects, which matches the read/create nature of watching.
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 with no fluff. First sentence defines the action, second sentence mentions output. Information is front-loaded and every sentence adds value.
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?
Given 7 parameters and no output schema, the description covers the main behavior and output type ('Returns the created watch'). It notes the paid nature. Could be slightly more detailed about the return format but is still fairly complete.
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 baseline is 3. The description does not add extra meaning to parameters beyond what the schema provides (e.g., origins, destinations, alert toggles). It focuses on high-level function, which is acceptable but not additive.
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?
The description clearly states the verb 'Watch a lane' and specifies the exact alerts (blanked, cut-off closing, slip, reliability drops). It distinguishes itself from sibling tools like 'find_sailings' or 'get_schedules' which are listing tools, while this is for monitoring.
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?
The description mentions '(PAID)' indicating it's a paid feature but provides no explicit guidance on when to use this tool versus siblings. No alternatives or when-not-to-use hints are given.
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.
2 tool updates
- Changed
find_best_sailings5 fields changed- added
Input schema / properties / cutoffAdded value: +{ + "const": "open", + "description": "Only sailings whose booking cut-off has not passed. Sailings where no cut-off is held are kept by default; each option carries cutoff_status saying which case it is.", + "type": "string" +} - added
Input schema / properties / cutoff_include_unknownAdded value: +{ + "description": "Default true. false narrows to sailings where a deadline is actually held and still ahead.", + "type": "boolean" +} - removed
Input schema / properties / cutoff_openRemoved value: -{ - "description": "Only sailings whose booking cut-off has not passed", - "type": "boolean" -} - removed
Input schema / properties / direct_onlyRemoved value: -{ - "description": "Exclude transshipment routings", - "type": "boolean" -} - added
Input schema / properties / transshipmentAdded value: +{ + "description": "true keeps only sailings that change ship, false only sailings proven direct. Omit it for both: a sailing whose routing we do not hold is returned by neither side, because we will not call a sailing direct without evidence.", + "type": "boolean" +}
- Changed
get_schedules1 field changed- added
Input schema / properties / fromAdded value: +{ + "description": "Earliest departure date as YYYY-MM-DD, with no time and no timezone offset. Must be today or later. Sailings are returned from 00:00 of that date, read in each port's local time, onward. Omit for today.", + "type": "string" +}
3 tool updates
- Added
active_cyclones - Added
lane_storm_exposure - Added
port_congestion
9 tool updates
- First observed
carrier_league - First observed
carrier_reliability - First observed
compare_lanes - First observed
find_best_sailings - First observed
find_sailings - First observed
get_schedules - First observed
port_reliability - First observed
transit_time - First observed
watch_lane
Related MCP Connectors
Ocean shipping intelligence: D&D, freight rates, vessel schedules, port data. 24 tools, 6 carriers.
Ocean & multimodal freight intelligence: rates, landed cost, transit, customs, risk, ship decisions
DCSA container tracking across 228 ocean carriers: live vessel positions, ETAs, demurrage alerts.
Vessel tracking for 750,000+ ships, with ownership, inspections, port records, routes, and more.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceTrack ocean containers across 200+ shipping lines by container, bill of lading, or booking number — live milestones, vessel positions, ETAs, and demurrage & detention free time.10 npmMIT
- AlicenseAqualityDmaintenanceOcean and multimodal freight intelligence suite providing cross-validated rates, total landed cost, transit reliability, customs, risk, emissions, and unified ship decisions through 47 tools.4713 npmMIT
- AlicenseNot gradedqualityDmaintenanceOcean container shipping intelligence for AI agents — D\&D tariffs, freight rates, vessel schedules, port congestion, inland haulage across 6 major carriers. 24 MCP tools.MIT
- AlicenseBqualityDmaintenanceCompare parcel and letter delivery prices across 60+ carriers in 27 European countries.1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.