Skip to main content
Glama

Public holidays

pz_holidays
Read-onlyIdempotent

Fetch official Iranian public holidays and occasions between two Gregorian dates with Persian and Hijri names, so you can avoid suggesting unavailable appointment days. Fridays are excluded.

Instructions

Official Iranian public holidays and occasions between two dates (Persian name, Hijri date).

Fridays are not listed. Use before suggesting appointment days.

Input Schema

NameRequiredDescriptionDefault
date_toYesLast day, Gregorian YYYY-MM-DD, at most a year later, e.g. '2026-12-31'.
date_fromYesFirst day, Gregorian YYYY-MM-DD, e.g. '2026-10-01'.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.3.0
    • removedInput schema / properties / date_from / title
      Removed value: -"Date From"
    • removedInput schema / properties / date_to / title
      Removed value: -"Date To"
    • removedInput schema / title
      Removed value: -"pz_holidaysArguments"
    • changedOutput schema / (root)
      Previous value: -{
      -  "additionalProperties": true,
      -  "title": "pz_holidaysDictOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, so the safety profile is covered. The description still adds non-obvious behavioral context: that Fridays are deliberately omitted and that results carry Persian/Hijri naming, which an agent must know before treating the list as complete.

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 short lines: purpose, scope/return, caveat, usage trigger. Nothing is redundant and the resource is stated in the first clause, so the agent can act on the opening sentence alone.

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 two-parameter lookup with no output schema, the description supplies the return fields (Persian name, Hijri date) and the Friday caveat, which is enough to interpret results. It stops short of describing ordering or response shape, but nothing critical for correct invocation is missing.

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%, with both date parameters documented including format and the one-year span limit, so the schema carries the semantics. The description only restates 'between two dates' and adds no format or boundary detail beyond it, which is the baseline 3.

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?

Names a specific resource (official Iranian public holidays and occasions) with an explicit scope (between two dates) and return payload (Persian name, Hijri date), so an agent knows exactly what it gets. It does not name or differentiate itself from the closest sibling (pz_free_days), which is the only thing keeping it off a 5.

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?

Gives an actionable workflow trigger: 'Use before suggesting appointment days,' which tells the agent where this fits relative to scheduling siblings. It states one exclusion ('Fridays are not listed') but offers no explicit when-not or named alternative tool, so it falls short of a 5.

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