Skip to main content
Glama

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

A4.2/5.0

Scored across 7 tools

Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count5/5

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.

Completeness4/5

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 tools
add_containerA
Idempotent
Inspect

Start tracking a new container or Bill of Lading. Returns confirmation once tracking is set up. First status update arrives within 15 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoOptional tags for organisation (e.g. ["client-acme", "vessel-gulsun"])
identifierYesContainer number (e.g. MRKU5004867) or B/L number
identifier_typeYesWhether the identifier is a container number or B/L number

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesFalse never appears here — failures arrive as tool errors.
codeNoOn an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed).
dataNo
resultYes"empty" means the query succeeded and there is nothing to report.
messageNoOn an empty result: what the emptiness means.

TDQS

A4/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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_detailA
Idempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
container_idYesContainer number (e.g. MRKU5004867) or B/L number (e.g. SEGU3103001)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesFalse never appears here — failures arrive as tool errors.
codeNoOn an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed).
dataNo
resultYes"empty" means the query succeeded and there is nothing to report.
messageNoOn an empty result: what the emptiness means.

TDQS

A3.8/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines4/5

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_timeA
Read-only
Inspect

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 '.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNodemurrage (in-port), detention (out-of-port), combined_dd, or free_time_storagedemurrage
directionNoimport
carrier_codeNoSCAC, e.g. CMDU (CMA CGM), MAEU (Maersk), HLCU (Hapag), ZIMU (ZIM). Omit to get the indicative cross-carrier average directly.
country_iso2NoISO-3166 alpha-2, e.g. FR. Used when no port is given, or as fallback grain.
port_unlocodeNo5-char UN/LOCODE, e.g. FRMRS (Marseille). Provide this or country_iso2.
container_typeNoe.g. 20GP, 40GP, 40HC, 20RF40GP

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesFalse never appears here — failures arrive as tool errors.
codeNoOn an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed).
dataNo
resultYes"empty" means the query succeeded and there is nothing to report.
messageNoOn an empty result: what the emptiness means.

TDQS

A4.3/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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_reportA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
container_idNoOptional: scope to a single container ID. Omit for portfolio-wide report.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesFalse never appears here — failures arrive as tool errors.
codeNoOn an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed).
dataNo
resultYes"empty" means the query succeeded and there is nothing to report.
messageNoOn an empty result: what the emptiness means.

TDQS

A4.6/5.0
Behavior5/5

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.

Conciseness4/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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_congestionA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
port_codesYesUN/LOCODE port codes (e.g. ["NLRTM", "GBFXT"]). Get them from container details if unsure.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesFalse never appears here — failures arrive as tool errors.
codeNoOn an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed).
dataNo
resultYes"empty" means the query succeeded and there is nothing to report.
messageNoOn an empty result: what the emptiness means.

TDQS

A3.6/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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_summaryA
Read-only
Inspect

Overview of your entire container portfolio: total active, exceptions, arriving soon, demurrage risk. Use this as the starting point for any shipment question.

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNoFocus on a specific subset: all (default), exceptions, arriving_soon, demurrage_riskall

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesFalse never appears here — failures arrive as tool errors.
codeNoOn an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed).
dataNo
resultYes"empty" means the query succeeded and there is nothing to report.
messageNoOn an empty result: what the emptiness means.

TDQS

A4/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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_positionA
Read-only
Inspect

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?".

ParametersJSON Schema
NameRequiredDescriptionDefault
imoYesIMO number of the vessel (e.g. 9463297)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesFalse never appears here — failures arrive as tool errors.
codeNoOn an empty result: NOT_FOUND (no record after asking) or NO_EVENTS (record, nothing filed).
dataNo
resultYes"empty" means the query succeeded and there is nothing to report.
messageNoOn an empty result: what the emptiness means.

TDQS

A4.8/5.0
Behavior5/5

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.

Conciseness4/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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.

  1. 7 tool updates
    • First observedadd_container
    • First observedget_container_detail
    • First observedget_demurrage_free_time
    • First observedget_demurrage_report
    • First observedget_port_congestion
    • First observedget_shipment_summary
    • First observedget_vessel_position

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Ocean 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
  • A
    license
    A
    quality
    B
    maintenance
    It 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.
    10
    Apache 2.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides 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.
    -
  • A
    license
    A
    quality
    D
    maintenance
    Ocean and multimodal freight intelligence suite providing cross-validated rates, total landed cost, transit reliability, customs, risk, emissions, and unified ship decisions through 47 tools.
    47
    13 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.