Skip to main content
Glama

Recurrence Expand

recurrence_expand
Read-onlyIdempotent

Expand a recurrence rule into a concrete list of ISO dates. FREE.

Set every_days for a fixed interval, or weekly_on for specific weekdays. Typical input {"start_date": "2026-01-05", "every_days": 14, "count": 3} returns {"dates": ["2026-01-05", "2026-01-19", "2026-02-02"]}.

Use when a recurrence rule has to become concrete dates. Not for counting working days in a span (business_days) and not for finding a slot across zones (meeting_overlap). Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (for example {"error": "start_date must be YYYY-MM-DD"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
countNoHow many dates to generate; values outside 1-60 are clamped into that range. Default 10.
weekly_onNoWeekday names to recur on, e.g. ["mon", "thu"]; full names like "monday" also work.
every_daysNoInterval in days between occurrences; use this OR weekly_on, not both.
start_dateYesFirst date of the series, ISO YYYY-MM-DD.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.9/5.0
Behavior5/5

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

The description goes beyond the annotations by detailing error handling behavior: it never raises protocol errors but returns an error object describing what is wrong and how to fix it. It also explicitly confirms the tool is read-only and idempotent, mirroring annotations but adding concrete user-facing details. The annotations already indicate readOnlyHint and idempotentHint, so this adds extra confidence.

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?

The description is extremely concise, using short sentences and a clear example. It front-loads the core purpose and a free keyword, then succinctly covers usage constraints, sibling disambiguation, error handling, and safety guarantees. Every sentence earns its place with no redundancy.

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?

Despite the tool's moderate complexity (4 parameters, output schema present), the description is fully complete. It covers purpose, parameters, error behavior, idempotency, and retry safety. The output schema would describe the return shape, so the description need not repeat that. The sibling list and annotations fill in remaining context, making this a well-rounded definition.

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?

The input schema has 100% description coverage, explaining each parameter clearly. The description adds value by showing a concrete example of using 'every_days' and 'count' together, and implicitly differentiating between 'every_days' and 'weekly_on'. However, it does not add much beyond what the schema already provides, so a small deduction is appropriate.

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 clearly states the tool expands a recurrence rule into concrete ISO dates, using specific parameters like 'every_days' or 'weekly_on'. It distinguishes itself from siblings like 'business_days' and 'meeting_overlap' by explicitly stating what it is not for, making its purpose unambiguous.

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?

The description provides explicit guidance on when to use the tool ('Use when a recurrence rule has to become concrete dates'), and when not to ('Not for counting working days... business_days and not for finding a slot... meeting_overlap'), naming specific sibling alternatives. It also gives a typical input example, setting clear expectations.

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.7/5.0
Disambiguation4/5

Each tool targets a distinct time-related operation: business day math, backward scheduling, timezone overlap, recurrence rules, and SLA due times. The descriptions include 'Use when ... Not for ...' sections that clearly differentiate them, though business_days and deadline_planner both involve business days and could be confused for near-simple tasks.

Naming Consistency5/5

All tool names use a consistent snake_case pattern with clear, descriptive verb+noun or noun_verb combinations (business_days, deadline_planner, meeting_overlap, recurrence_expand, sla_due). The naming is predictable and intuitive for the domain.

Tool Count5/5

Five tools is a well-scoped set for a time operations server, covering core scheduling needs without being too few or too many. Each tool addresses a distinct use case and the count is appropriate for the server's purpose.

Completeness4/5

The tool set covers major temporal operations: date arithmetic, backward planning, timezone coordination, recurrence, and SLA tracking. A minor gap is the lack of a plain calendar-day difference tool (as noted in business_days description), but the core domain is well covered and agents can work around this gap.

Resources