Skip to main content
Glama

Metro first and last trains

metro_first_last_train
Read-only

Retrieve first and last train times at a Taiwan metro station for every line and direction to plan trips around daily service start and end.

Instructions

First and last train times at a metro station for each line and direction. Example: system "TRTC", station "台北車站".

Input Schema

NameRequiredDescriptionDefault
systemYesMetro system: TRTC 臺北捷運 Taipei Metro, NTMC 新北捷運 (環狀線) New Taipei Metro, TYMC 桃園機場捷運 Taoyuan Airport MRT, TMRT 臺中捷運 Taichung MRT, KRTC 高雄捷運 Kaohsiung MRT, KLRT 高雄輕軌 Kaohsiung LRT, TRTCMG 貓空纜車 Maokong Gondola.
stationYesThe metro station: name (台北車站, Ximen, 美麗島) or station ID (BL12).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that results are grouped per line and direction, which helps interpret the response, but says nothing about schedule coverage (weekday/weekend/holiday) or data freshness.

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?

Two sentences, purpose first, example second. Nothing is wasted and the key scope (per line and direction) is front-loaded. The example earns its place by showing accepted argument formats.

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?

With only two fully documented parameters, read-only annotations, and no output schema, the definition is largely sufficient for correct invocation. The only material gap is not stating whether 'first and last' covers weekdays, weekends, or holidays — minor for a schedule lookup.

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%: the enum lists all seven systems and the station field documents name-or-ID forms. The description's example (system "TRTC", station "台北車站") only restates what the schema already provides, so 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?

The description uses a specific verb+resource plus scope: first and last train times at a station, broken out per line and direction. This is clearly distinguishable from metro_live_board (current departures) and metro_fare, though it never names those siblings explicitly.

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?

The intended use (looking up the first/last departure at a station) is implied by the purpose statement and illustrated by the example. However, there is no explicit when-to-use/when-not guidance, and no pointer that live departures belong to metro_live_board instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.