Container Tracking MCP
Server Details
DCSA container tracking across 228 ocean carriers: live vessel positions, ETAs, demurrage alerts.
Glama couldn't complete the latest health check. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.
If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.
- Status
- Unhealthy
- Uptime
- 21.2% over 58 days
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- lxxmng/container-tracking-mcp
- GitHub Stars
- 0
- Server Listing
- container-tracking-mcp
TDQS
Scored across 7 tools
Each tool targets a distinct purpose: adding tracking, single-container detail, portfolio summary, demurrage free-time lookup, demurrage risk report, port congestion, and vessel position. The two demurrage tools are explicitly differentiated by their descriptions (carrier free days vs. risk report), so an agent can reliably choose the right one.
All tool names use snake_case and follow a consistent verb_noun pattern (add_container, get_container_detail, get_demurrage_free_time, etc.). The single add_ prefix for the creation operation is appropriate and does not break the pattern.
Seven tools is well within the ideal 3-15 range for a container tracking server. Each tool serves a distinct, non-redundant need: tracking setup, status lookup, portfolio overview, demurrage assessment, port congestion, and vessel position.
The surface covers the core lifecycle: add tracking, get container details, portfolio summary, demurrage free time and risk report, port congestion, and vessel position. Minor gaps exist (no explicit list_containers or stop/update tracking operation), but agents can typically work around these by using the summary or user-provided container IDs.
Available Tools
7 toolsadd_containerAIdempotentInspect
Start tracking a new container or Bill of Lading. Returns confirmation once tracking is set up. First status update arrives within 15 minutes.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Optional tags for organisation (e.g. ["client-acme", "vessel-gulsun"]) | |
| identifier | Yes | Container number (e.g. MRKU5004867) or B/L number | |
| identifier_type | Yes | Whether the identifier is a container number or B/L number |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | False never appears here — failures arrive as tool errors. |
| code | No | On an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed). |
| data | No | |
| result | Yes | "empty" means the query succeeded and there is nothing to report. |
| message | No | On an empty result: what the emptiness means. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the write/idempotent/non-destructive/open-world profile, and the description adds genuinely new behavior: a confirmation is returned and the first status update arrives within 15 minutes. It stops short of noting auth requirements or duplicate-handling semantics.
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?
Three short sentences, front-loaded with the action, and each remaining sentence earns its place by conveying return confirmation and the 15-minute latency expectation.
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 structure needn't be explained, and the description covers the action plus asynchronous latency. For a 3-param write tool it is nearly complete; only permissions and duplicate-handling context are absent, and idempotency is already hinted in annotations.
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% (identifier, identifier_type enum, tags all documented), so the schema carries the parameter burden. The description only mentions container/B/L identifiers generically and adds no format or syntax detail beyond the 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 names a specific verb and resource ('Start tracking a new container or Bill of Lading'), and the only sibling action is this one add/write tool while every sibling is a read-only getter, so the agent can place it without opening schemas.
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?
Usage is only implied by 'Start tracking a new container' — it signals this is the entry point for new tracking, but there is no explicit when-to-use, no when-not-to-use (e.g. already-tracked containers), and no named alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_container_detailAIdempotentInspect
Full status for a single container: current status, route, ETA with confidence, carrier, vessel, all events, and AI-generated shipment narrative. Use this when asked about a specific container.
| Name | Required | Description | Default |
|---|---|---|---|
| container_id | Yes | Container number (e.g. MRKU5004867) or B/L number (e.g. SEGU3103001) |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | False never appears here — failures arrive as tool errors. |
| code | No | On an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed). |
| data | No | |
| result | Yes | "empty" means the query succeeded and there is nothing to report. |
| message | No | On an empty result: what the emptiness means. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations carry the safety profile (destructiveHint=false, idempotentHint=true, openWorldHint=true), so the description does not need to restate them. It adds useful content scope (ETA confidence, AI narrative) but nothing extra about behavior such as auth needs, rate limits, or freshness/caching of carrier data. Note the readOnlyHint=false annotation sits oddly with a pure retrieval tool, but the description itself makes no contradicting behavioral claim.
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, content scope front-loaded, and the usage cue placed last. No filler or repetition of the schema.
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 values need not be detailed, yet the description helpfully previews the payload fields. With full schema coverage on the single required parameter and annotations covering safety, the only minor gap is error/permission behavior.
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?
Only one parameter, and the schema already covers it at 100% with concrete format examples (MRKU5004867, SEGU3103001). The description adds no further semantics beyond identifying which container to query, so the 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?
Specific verb (fetch) plus resource (a single container) with an explicit enumeration of the returned content: status, route, ETA with confidence, carrier, vessel, events, and AI narrative. It is clearly distinguishable from a multi-container/summary sibling, though no sibling is named explicitly.
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 this when asked about a specific container" gives a clear selection trigger scoped to one container, which implicitly separates it from shipment-level siblings. It stops short of naming the alternative (e.g., get_shipment_summary) or stating 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.
get_demurrage_free_timeARead-onlyInspect
Free time (days) before demurrage, detention or storage charges start, for a carrier at a port or country. Returns the carrier's OWN published figure when available, otherwise an INDICATIVE cross-carrier average (flagged is_estimate, shown without prejudice). Use for 'how many free days does give at '.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | demurrage (in-port), detention (out-of-port), combined_dd, or free_time_storage | demurrage |
| direction | No | import | |
| carrier_code | No | SCAC, e.g. CMDU (CMA CGM), MAEU (Maersk), HLCU (Hapag), ZIMU (ZIM). Omit to get the indicative cross-carrier average directly. | |
| country_iso2 | No | ISO-3166 alpha-2, e.g. FR. Used when no port is given, or as fallback grain. | |
| port_unlocode | No | 5-char UN/LOCODE, e.g. FRMRS (Marseille). Provide this or country_iso2. | |
| container_type | No | e.g. 20GP, 40GP, 40HC, 20RF | 40GP |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | False never appears here — failures arrive as tool errors. |
| code | No | On an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed). |
| data | No | |
| result | Yes | "empty" means the query succeeded and there is nothing to report. |
| message | No | On an empty result: what the emptiness means. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds meaningful behavioral context beyond that: it returns the carrier's own published figure when available and otherwise an indicative cross-carrier average flagged is_estimate, 'shown without prejudice' – a real quality caveat about the returned value.
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?
Three tight clauses, front-loaded with the core definition, then the return-quality caveat, then the usage trigger. No filler sentences.
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 structure need not be explained, annotations carry the safety profile, and the description covers the one thing structured data cannot convey – whether the returned figure is authoritative or an estimate. Nothing needed to call it correctly is missing.
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 83%, so the schema already documents all six parameters including enums and default values. The description adds no syntax or format detail beyond what the schema provides, so the 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 (free time days before demurrage/detention/storage charges) and its scope (a carrier at a port or country). An agent can tell exactly what is being retrieved, and it is distinct from sibling tools like get_demurrage_report.
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?
Provides an explicit usage trigger ('how many free days does <carrier> give at <port>') and explains the fallback path for when a carrier figure is absent. It does not, however, contrast itself against the sibling get_demurrage_report, so routing between the two is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_demurrage_reportARead-onlyInspect
Demurrage and detention risk report: which containers are near or past their free days, the daily rates, and the projected cost. Call this when asked about demurrage risk or detention fees. Free days are resolved per shipment from the customer's own contract terms first, then the carrier's published tariff, then a cross-carrier benchmark — terms_source and confidence on each item say which was used, so an estimated tariff figure must be reported as estimated, not as their contract. Read the counters before drawing a conclusion: unassessable_containers are boxes whose free time could not be resolved at all (an empty item list alongside a non-zero count means "cannot assess", NEVER "no risk"), uncosted_containers are at risk with no daily rate on file (so total_at_risk_usd is a floor, not the exposure), and truncated: true means the fleet is larger than the report. Pass container_id to assess a single shipment: scope_container.verdict is one of at_risk / within_free_time / not_discharged / no_terms / no_destination / not_demurrage_eligible.
| Name | Required | Description | Default |
|---|---|---|---|
| container_id | No | Optional: scope to a single container ID. Omit for portfolio-wide report. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | False never appears here — failures arrive as tool errors. |
| code | No | On an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed). |
| data | No | |
| result | Yes | "empty" means the query succeeded and there is nothing to report. |
| message | No | On an empty result: what the emptiness means. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the read-only, non-destructive, open-world profile, so the bar is lower, yet the description adds substantial behavioral context: the precedence order for resolving free days (contract, then tariff, then benchmark), and how terms_source/confidence must be reported. It also flags cost-floor and truncation semantics that the annotations cannot convey.
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?
It is dense and long, but front-loaded and each clause carries operational weight — counters, precedence, and edge-case meanings. Minor verbosity from the repeated emphasis on the estimated-figure caveat, but nothing is filler.
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, yet the description supplies the interpretation rules an agent cannot infer from field names: empty item list plus non-zero unassessable count means 'cannot assess', total_at_risk_usd is a floor, and truncated signals a partial fleet. Both the no-arg and single-container paths are covered.
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?
Only one parameter with 100% schema coverage, so the baseline is 3. The description goes beyond the schema by explaining what scoping to a container yields (scope_container.verdict and its enum values), which the bare schema does not.
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 output artifact (demurrage and detention risk report) and enumerates exactly what it contains: containers near or past free days, daily rates, projected cost. This clearly distinguishes it from sibling read tools like get_demurrage_free_time and get_container_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 when to call it ('when asked about demurrage risk or detention fees') and when to narrow scope (pass container_id for a single shipment vs omit for portfolio-wide). It does not explicitly name or exclude the closely related get_demurrage_free_time sibling, which would have made routing unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_port_congestionARead-onlyInspect
Current congestion level at one or more ports: average wait hours, vessels at anchor, and congestion level (low/moderate/high/severe). Provide UN/LOCODE codes like NLRTM, GBFXT, DEHAM, CNSHA.
| Name | Required | Description | Default |
|---|---|---|---|
| port_codes | Yes | UN/LOCODE port codes (e.g. ["NLRTM", "GBFXT"]). Get them from container details if unsure. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | False never appears here — failures arrive as tool errors. |
| code | No | On an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed). |
| data | No | |
| result | Yes | "empty" means the query succeeded and there is nothing to report. |
| message | No | On an empty result: what the emptiness means. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds content context (wait hours, vessels at anchor, low/moderate/high/severe scale) but no additional behavioral detail such as pagination, latency, or failure modes for unknown codes.
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 tightly written sentences, front-loaded with what the tool returns and followed by the one input-format instruction. Every clause carries information; nothing is padding.
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?
For a simple read-only lookup with a full schema description, safety annotations, and an output schema, the definition covers what an agent needs to call it correctly. Only the lack of selection guidance against sibling tools leaves a small gap.
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% and there is a single required parameter, so the schema already documents the UN/LOCODE format. The description reinforces this with concrete examples (NLRTM, GBFXT, DEHAM, CNSHA), but that is largely a restatement of the schema baseline.
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 verb (get current congestion level) and enumerates the returned metrics and congestion scale, so the tool is clearly distinguishable in intent from data-retrieval siblings like get_vessel_position. It never explicitly contrasts itself with those siblings, which keeps it at 4 rather than 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?
Usage is only implied: the description tells the caller to supply UN/LOCODE codes but gives no when-to-use/when-not guidance, no prerequisites, and no routing to or away from alternative tools. Adequate but with a clear gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_shipment_summaryARead-onlyInspect
Overview of your entire container portfolio: total active, exceptions, arriving soon, demurrage risk. Use this as the starting point for any shipment question.
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Focus on a specific subset: all (default), exceptions, arriving_soon, demurrage_risk | all |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | False never appears here — failures arrive as tool errors. |
| code | No | On an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed). |
| data | No | |
| result | Yes | "empty" means the query succeeded and there is nothing to report. |
| message | No | On an empty result: what the emptiness means. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered by structured data. The description adds that this is a portfolio-wide aggregate rather than a filtered listing, but says nothing about data freshness, scope (account/workspace), or why open-world access matters. Adequate with annotations, but not rich.
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 what-it-returns content front-loaded before the routing advice. Every clause earns its place.
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-value structure needn't be explained, and annotations cover read-only safety. For a zero-required-parameter read tool this is nearly complete; only the scope of 'your portfolio' (account vs. workspace) and freshness expectations are left 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?
The single filter parameter has full schema description coverage including the enum values and the default, so the schema does the heavy lifting. The description's facet list mirrors the enum values without adding format or behavioral nuance beyond them. 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 (get) and resource (shipment/container portfolio summary) and enumerates the exact facets returned: total active, exceptions, arriving soon, demurrage risk. This distinguishes it from sibling detail tools like get_container_detail and the focused report tools such as get_demurrage_report.
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 this as the starting point for any shipment question" gives clear context for when to reach for this tool first. It stops short of naming alternatives or stating when-not to use it (e.g. when a single container's detail is needed, use get_container_detail), so it is clear but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_vessel_positionARead-onlyInspect
Last known AIS position for a vessel: lat/lng, speed, heading, navigation status, and how old the fix is. Use the vessel IMO from get_container_detail. IMPORTANT: an AIS position is a LAST KNOWN fix, not a live feed. Read position_age_hours and position_freshness (live <6h, recent <24h, stale <72h, outdated >=72h, unknown = no fix time recorded) and state the age when you report the location. Terrestrial AIS cannot see a ship mid-ocean, so an outdated fix is normal and is still useful evidence of where the vessel was — but never present it as where the vessel is now. position_updated_at is the time WE last wrote the row and is NOT the fix age; do not use it to answer "how current is this?".
| Name | Required | Description | Default |
|---|---|---|---|
| imo | Yes | IMO number of the vessel (e.g. 9463297) |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | False never appears here — failures arrive as tool errors. |
| code | No | On an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed). |
| data | No | |
| result | Yes | "empty" means the query succeeded and there is nothing to report. |
| message | No | On an empty result: what the emptiness means. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnly, openWorld, non-destructive), so the bar is lower, yet the description adds substantial context: AIS is a last-known fix not a live feed, terrestrial coverage gaps make outdated fixes normal, freshness bucket thresholds, and the trap that position_updated_at is not the fix age.
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?
Longer than typical, but front-loaded with purpose and every sentence guards against a specific misinterpretation (freshness semantics, coverage gaps, the updated_at trap). Dense but not padded; the impartial reading is that it earns its length.
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?
For a one-param read tool with an output schema, nothing needed is missing: the input source, the interpretation of freshness fields, and the caveat about what the position does and does not mean are all stated.
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% for the single `imo` parameter, so the baseline is 3. The description adds value by specifying where the IMO comes from (get_container_detail), though it doesn't add format detail beyond the schema's example.
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+resource (last known AIS position for a vessel) and enumerates the returned fields. It is clearly distinguishable from siblings like get_container_detail, which it cross-references for input.
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?
Gives the prerequisite input source (IMO from get_container_detail) and explicit when-to-use / how-not-to-use guidance: report the age, never present an outdated fix as current location. This routes behavior, not just retrieval.
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.
7 tool updates
- First observed
add_container - First observed
get_container_detail - First observed
get_demurrage_free_time - First observed
get_demurrage_report - First observed
get_port_congestion - First observed
get_shipment_summary - First observed
get_vessel_position
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
Find and monitor ocean shipments and containers, and create new tracking requests.
Vessel tracking for 750,000+ ships, with ownership, inspections, port records, routes, and more.
Related MCP Servers
- 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
- AlicenseAqualityBmaintenanceIt enables AI agents to propose and apply container shipment bookings, amendments, and cancellations via DCSA standards, with every write validated, authorized, and logged in a hash-chained ledger. It also provides tracking and schedule lookup tools.10Apache 2.0
- FlicenseNot gradedqualityDmaintenanceProvides container shipping intelligence for AI agents, enabling demurrage & detention calculations, local charges, inland haulage rates, and CFS tariffs across multiple shipping lines, with pay-per-request USDC payments via x402.-
- 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
Glama MCP Gateway
Add one secure layer between your agents and this server.