Skip to main content
Glama

Angling Lines

List Channel Crossings

list_crossings
Read-onlyIdempotent

List the Channel crossing choices for one trip — venue, Saturday arrival date (YYYY-MM-DD) and party — cheapest first. Each option gives the route, operator, ferry/tunnel type, crossing time, an overnight flag and the TOTAL holiday price with that crossing, plus the outbound/inbound route ids to pass to prepare_booking when the customer picks one. The cheapest option matches the get_quote price. Crossing choice is subject to sailing availability at checkout.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
carsNoNumber of cars travelling. Use the same confirmed count as get_quote; crossing costs are per vehicle. Pass 0 for a van-only party. Defaults to 1 for older callers.
dateYesThe Saturday arrival date of the 7-day week, as YYYY-MM-DD.
vansNoNumber of vans travelling. Use the same confirmed count as get_quote. Defaults to 0.
swimsNoChosen swim numbers from list_swims; omit for suitable available defaults. Requote after changing swims.
venueYesThe venue being booked, by name or slug, e.g. "Beaurepaire".
anglersYesActual number of fishing guests supplied by the customer, never a package or swim capacity. Keep 2 guests as 2 even for a package with capacity 5.
exclusiveNoWhether the venue is being booked exclusively.
non_anglersNoNumber of non-fishing guests. Defaults to 0.
booking_optionNoGolden Carp Lake whole package explicitly chosen by the customer after seeing available list_swims options: 1 cabin & swim 1; 2 all of swims 2,3,4; 3 exclusive without cabin; 4 exclusive with cabin. Never infer a package from a single swim preference such as swim 4. Required for GCL.
include_crossingNoTrue when the customer wants a crossing, including cheapest crossing at a crossing-optional venue. False for venue-only. Omit to use the venue default.
accommodation_idsNoSelected accommodation IDs returned by list_swims for this date. GCL booking_option includes the matching cabin automatically.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds useful behavioral context: results are ordered cheapest first, the price is the TOTAL holiday price with that crossing, the cheapest option matches get_quote, and availability is subject to sailing availability at checkout. It does not detail pagination or result limits, but for a list tool with read-only/idempotent annotations this is solid.

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?

Three sentences with no waste. The first sentence states the core purpose and ordering, the second lists the return fields and downstream usage, and the third adds the two most important caveats (price match and availability). Every sentence earns its place.

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?

For a read-only list tool with 100% schema coverage and no output schema, the description is nearly complete. It explains the return fields, the ordering, the price semantics, the downstream consumer (prepare_booking), and the availability caveat. The only minor gap is that it does not describe the exact structure of the route ids or how many options are typically returned, but that is not essential for selecting and invoking the tool.

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%, so the schema already documents all 11 parameters thoroughly. The description adds the relationship between the returned route ids and prepare_booking, and clarifies that the price is the total holiday price, but it does not need to repeat parameter details. Baseline 3 is appropriate when the schema carries the heavy lifting.

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 states a specific verb ('List'), a precise resource ('Channel crossing choices for one trip'), and the key dimensions (venue, Saturday arrival date, party) with an ordering ('cheapest first'). It also distinguishes itself from siblings by naming prepare_booking as the downstream consumer of the route ids, so an agent can tell it apart from get_quote and list_swims.

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?

The description gives clear context: it is for one trip, cheapest first, and the route ids are to pass to prepare_booking when the customer picks one. It also notes the cheapest option matches get_quote and that crossing choice is subject to sailing availability. It does not explicitly say when NOT to use it versus get_quote or list_swims, but the context is strong enough to route an agent.

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.

Resources