list_areas
List all areas within a specific city.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| city_id | No | City ID to list areas for (optional) | |
| city_slug | No | City slug to list areas for (alternative to city_id) |
List all areas within a specific city.
| Name | Required | Description | Default |
|---|---|---|---|
| city_id | No | City ID to list areas for (optional) | |
| city_slug | No | City slug to list areas for (alternative to city_id) |
Changes observed during successful MCP inspections.
Input schema / additionalPropertiesAdded value: +falseInput schema / requiredAdded value: +[]Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description adds nothing beyond that — no note on result size, ordering, or behavior when city_id/city_slug are omitted — which is notable given the schema marks both as optional.
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 efficient sentence with the scoping condition front-loaded and no filler. It is short enough that the missing detail is more of a gap than bloat.
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 list tool with full schema coverage and annotations, the essentials are present. The omission of default behavior when no city is passed is the main remaining 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%, with both parameters individually documented, so the baseline is 3. The description's 'a specific city' slightly implies a required city filter even though both params are optional, adding no real meaning 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 states a specific verb and resource ('List all areas'), so the agent knows exactly what it returns. However, it does not distinguish itself from the close siblings list_nearby_areas and list_cities, leaving the agent to guess which listing tool fits.
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?
'within a specific city' implies the city-scoped use case, but there is no explicit when-to-use vs list_nearby_areas or list_cities, and no guidance on what happens when neither optional city parameter is supplied.
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.