Skip to main content
Glama

Get seminar dates

seminar_dates
Read-onlyIdempotent

Lists the scheduled dates of a seminar, soonest first.

Past dates are never returned. Without from the window starts today. from and to are calendar days in German time, and both are included. An empty result means nothing is currently scheduled -- it does not mean the seminar does not exist.

Each date carries the cities it runs in; a city of type virtual is an online delivery, place is on site. Dates that are cancelled, postponed or already over are never returned.

status is what to lead with when suggesting a date:

guaranteed this seminar runs, whatever else happens -- recommend these first, and say so, because it is the customer's strongest reason to pick one date over another planned scheduled and open for enrolment, not yet confirmed to run

direct_booking appears only on dates that can be booked straight through the portal, with direct_booking_until as the last day for it. Its absence says nothing about availability. Every date listed here can be enquired about and enrolled in; direct booking is a shortcut, not a condition. Never tell a customer a date is unavailable because this field is missing.

seminar names the course the dates belong to -- name, duration and its url -- so the list can be presented under that heading. It is left out only when the lookup failed; the dates still stand.

begin and finish, per date and per day in days, are UTC. The seminars run in local time (Europe/Berlin; Vienna and Zurich are the same zone): convert before quoting a time, so 07:00Z is 09:00 in summer and 08:00 in winter, never "7 Uhr".

Input Schema

NameRequiredDescriptionDefault
toNoLatest start date, "YYYY-MM-DD", included
cityNoPlace name such as "München", or "online" for virtual delivery
fromNoEarliest start date, "YYYY-MM-DD". Defaults to today
pageNoPage number, starting at 1
limitNoRecords per page, 1-50, default 20
seminar_guidYesSeminar identifier from `seminars_search`

Output Schema

NameRequiredDescriptionDefault
noteNo
pageYes
itemsYes
totalNo
seminarNo
has_moreYes
returnedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Despite annotations already declaring a safe read operation, the description adds substantial behavior: cancelled/postponed/expired dates are filtered out, city type distinguishes virtual vs on-site, and the `seminar` field can be absent on lookup failure while dates still stand. It also warns explicitly that a missing `direct_booking` does NOT imply unavailability, preventing a real misinterpretation.

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?

Front-loaded with the core behavior, then layered with interpretation rules. The status and timezone paragraphs are long but each carries non-obvious guidance (lead with 'guaranteed', convert UTC to Europe/Berlin before quoting). Some bullets could be tightened, but there is little true filler.

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 6-parameter read tool with an output schema, everything an agent needs is present: filtering rules, timezone conversion instruction, how to interpret `status`, `direct_booking`, and missing `seminar`. No ambiguity remains about how to call or how to present results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description goes further: `from`/`to` are German calendar days with both bounds inclusive, and `from` defaults to today. That clarifies timezone semantics the schema leaves implicit, though `city`, `page`, and `limit` get no extra explanation.

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 first sentence gives a specific verb and resource ('Lists the scheduled dates of a seminar') plus ordering ('soonest first'), which is far beyond the title restatement. It doesn't explicitly contrast with siblings like seminar_get, but the resource scope is unambiguous.

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?

It states concrete operating conditions: past dates are never returned, an omitted `from` starts today, and an empty result means 'nothing scheduled' rather than 'seminar doesn't exist'. It is missing an explicit 'use this instead of X' alternative, but the usage context is otherwise clear.

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