Skip to main content
Glama

Search Connections

search_connections
Read-onlyIdempotent

Find train connections between two Swiss stations. Accepts station names directly (e.g. "Zürich HB", "Bern") or UIC IDs — name resolution happens internally. Returns live schedules with departure/arrival times, duration, transfers, and trip IDs for downstream pricing/details/ticket calls. Live data: includes delays and cancellations for trains departing within 30 min.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toYesDestination station name or ID (e.g. "Bern" or "8507000")
dateNoTravel date in YYYY-MM-DD format (default: today)
fromYesOrigin station name or ID (e.g. "Zurich HB" or "8503000")
timeNoTime in HH:MM (Europe/Zurich local time, 24h). By default treated as DEPARTURE time. Default: now.
arrival_timeNoDefaults to false (treat `time` as departure). Only set true when the user EXPLICITLY says they want to ARRIVE by a specific time ("I need to be in Bern by 9am", "arriving at 14:00"). For loose phrases like "around 9am", "morning", or "tomorrow at 9", leave this false — those mean departure time.

TDQS

A4.2/5.0
Behavior4/5

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

Adds meaningful context beyond annotations: live schedules include delays/cancellations only for departures within 30 min, name resolution happens internally, and return fields are listed. This complements the readOnlyHint=true and idempotentHint=true annotations without contradiction.

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?

Four sentences, purpose first, no filler. Each sentence adds value: purpose, input handling, return contents, and live data caveat.

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?

No output schema exists, so the description appropriately details return values (departure/arrival, duration, transfers, trip IDs). It covers key behaviors like live data and internal name resolution. However, it does not mention how to get more connections or pagination limits, leaving a slight gap given the sibling get_more_connections.

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%, so baseline is 3. The description adds little beyond the schema: it mentions 'station names or UIC IDs' for from/to, but the schema already provides examples. No additional parameter meaning is given.

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 opens with a specific verb and resource: 'Find train connections between two Swiss stations.' It clearly differentiates from siblings by noting it returns trip IDs for downstream pricing/details/ticket calls, positioning it as the entry point for connection searches.

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 clear usage context: accepts station names or UIC IDs directly, so no prior station lookup is needed. Mentions that trip IDs feed downstream calls, implying a workflow, but does not explicitly name alternatives or exclusions like 'use search_stations for station lookup.'

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool serves a distinct purpose: station lookup, connection search, pagination, pricing, ticket link, and trip details. The boundaries are clear, and descriptions explicitly reference how tools relate to each other.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (search_*, get_*) in lowercase with underscores. The pattern is uniform across the entire set.

Tool Count5/5

With 6 tools, the server is well-scoped for its transportation purpose. Each tool covers a necessary step in the user journey without redundancy or bloat.

Completeness5/5

The tool set covers the full workflow: find stations, search connections, paginate results, get detailed trip info, retrieve prices, and obtain a purchase link. No obvious gaps for the stated domain.

Resources