Skip to main content
Glama

Taiwan Railway train today

tra_train
Read-only

Get one TRA train's stops with times plus its current position and delay, using a train number such as "123".

Instructions

One TRA train today: its stops with times, and where it is now and how late it runs. Example: trainNo "123".

Input Schema

NameRequiredDescriptionDefault
trainNoYesTrain number, e.g. "123".

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 and openWorldHint, and the description adds that the response includes live position and delay, which is genuinely useful context. It does not cover staleness, missing delay data, or behavior for out-of-service train numbers, so the addition is modest.

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 tight sentences, front-loaded with the resource and payload. The trailing example duplicates the schema's own example, which is the only wasted clause.

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 one required parameter, no output schema, and annotations covering the read-only safety profile, the description gives enough about the return contents (stops, times, live position, delay) for an agent to call it correctly. Edge-case behavior is the only omission.

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 coverage is 100% and the single parameter already carries a pattern and an example, so the description's "Example: trainNo \"123\"" largely restates structured data. Baseline 3 applies since the schema does the semantic work.

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 (one TRA train, today) and enumerates the payload: stops with times, live position, delay. That clearly separates it from tra_timetable and tra_live_board in spirit, 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Today" implies this is the real-time lookup rather than the schedule lookup, so the usage window is inferable. But there is no explicit statement of when to prefer it over tra_timetable or tra_live_board, and no note about what happens for trains not running today.

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