get_cities
Supported pickup/delivery cities for one country. Use these exact names as origin_city / destination_city in get_quote.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| country | Yes | ISO-3166 alpha-2, e.g. MA or FR |
Supported pickup/delivery cities for one country. Use these exact names as origin_city / destination_city in get_quote.
| Name | Required | Description | Default |
|---|---|---|---|
| country | Yes | ISO-3166 alpha-2, e.g. MA or FR |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It discloses that this is a read-only city lookup limited to one country and that output names are exact accepted values for get_quote. It does not detail invalid-country behavior or return structure, but the essential behavior is clear.
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 short sentences, both necessary. The first states what the tool returns; the second explains how to apply the output. No redundancy or 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?
For a simple one-parameter read-only tool, the description covers the tool's purpose, scope, and downstream usage. It does not specify the exact JSON return shape, but no output schema exists and the description implies the returned values are usable as city strings, which is sufficient for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the parameter country is already fully documented with its ISO-3166 alpha-2 format and examples. The description adds only the light context that cities are for one country, which does not significantly improve on 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 clearly identifies the tool as returning supported pickup/delivery cities for a country, which is a specific resource and scope. It stands apart from siblings like get_routes or get_quote, and it explicitly ties the returned names to their use in get_quote.
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 clear practical usage context: fetch these city names and use them as origin_city/destination_city in get_quote. It does not explicitly state when not to use the tool or compare it with alternatives, but the intended workflow is obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Each tool targets a distinct resource or action: reference data, pricing, customs, courier discovery, storefronts, and tracking. Even closely related tools like get_courier, get_storefront, and search_couriers are clearly separated by function.
All tool names follow a consistent imperative verb_noun snake_case pattern. The get_ prefix is used for lookups, while convert_, estimate_, search_, and track_ clearly signal different actions.
Twelve tools is well within the ideal range, and each tool covers a distinct operational need for the EuroCollis pre-booking and tracking workflow. There is no obvious redundancy or bloat.
The set covers routes, cities, services, prohibited items, quotes, customs estimates, currency conversion, courier discovery, storefronts, and tracking, so nearly all public user intents are supported. Minor gaps remain around explicit supported-country/currency lists and the final booking step, but agents can work around these via get_routes and get_eurocollis_info.