Skip to main content
Glama

find_roadworks_ahead

Read-onlyIdempotent

Retrieve planned roadworks on one German motorway for a specified date window, showing restricted sections, directions, and start/end dates to plan your trip.

Instructions

Returns the roadworks PLANNED on one German motorway inside a date window: the section and direction as published, what is restricted, and the start and end. Use when a date or window is named, the question says geplant, or someone asks how long a site lasts ("Baustellen auf der A7 in den Sommerferien?"). ONE road per call. Do NOT use when more than one motorway is named, for the situation this minute, or for Baustellen with neither date nor geplant — all three are check_autobahn_traffic; whether a road is open — call check_road_status. ≤ 90 days, max 20 sites. Show the attribution line.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoLast day of the window, inclusive, as YYYY-MM-DD. Omit for 7 days after `from`, which is the right window for "am I going to hit roadworks on this drive". The window may span at most 90 days. For "how long will this last" / "wie lange dauert die Baustelle noch", leave both dates out: the default 7 days already returns the site's planned end date. Only widen — 28 days is the sensible step — when the person asked about a period that long.
fromNoFirst day of the window, as YYYY-MM-DD in German local time. Omit for today. Resolve relative wording ("next Friday", "in den Sommerferien", "nächsten Monat") into real dates yourself, counted from today's date; this argument never takes words, and it never takes a fixed example date — the window a person means moves with the calendar.
roadYesThe Autobahn to look at, one per call, e.g. "A7" or "A100" — "A7", "A 7" and "a7" are the same road. Bundesautobahnen only: this feed carries no Bundesstraßen and no city streets. Ask again for a second motorway.
limitNoMaximum sites to return (1–20, default 10), ordered by planned start. Every returned site is in the structured result; the readable text prints the first 10 and says how many more of them are in the structured half. The answer always names how many sites the window holds in total, so a small limit never hides the size of the problem.
languageNoSet this on every call to the language the person is writing in: "en" if they wrote English, "de" if they wrote German. Do not leave it out because it has a default — the default is only the fallback when the language is genuinely unclear, and an English question answered in German is a wrong answer. Place names, station names and road numbers are never translated in either language; in English the German term is kept in parentheses so the person recognises it on signs and in local apps.de

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.9

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already supply readOnlyHint, idempotentHint, destructiveHint, and openWorldHint. The description adds valuable behavioral context: the planned-not-current nature, the one-road-per-call constraint, ≤90-day and max-20-sites limits, and the requirement to show the attribution line. No contradiction with annotations.

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?

Every sentence carries distinct value: return contents, usage triggers, exclusions with alternatives, hard constraints, and attribution. It is front-loaded with purpose and contains no filler or redundancy despite being longer than a typical description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters and no output schema, this description covers selection criteria, exclusion rules, constraints, return contents, and attribution. An agent has enough to choose the tool correctly and invoke it with appropriate parameters, especially with the rich parameter descriptions already in the schema.

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 baseline is 3. The description mentions high-level constraints (one road per call, ≤90 days, max 20 sites) but does not add per-parameter explanation beyond what the schema already provides for from/to/road/limit/language.

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 the exact verb-resource pair: 'Returns the roadworks PLANNED on one German motorway inside a date window', and enumerates the specific result fields (section, direction, restriction, start/end). It also explicitly contrasts with sibling tools check_autobahn_traffic and check_road_status, so an agent can distinguish it without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

Provides explicit when-to-use conditions ('when a date or window is named, the question says geplant, or someone asks how long a site lasts') and when-not-to-use conditions with named alternatives ('all three are check_autobahn_traffic; whether a road is open — call check_road_status'). This is textbook routing guidance.

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