Skip to main content
Glama

Server Details

Public holidays, business days and long weekends for about 250 countries, in each local time zone.

Ownership verified
Status
Healthy
Uptime
100.0% over 25 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A3.9/5.0

Scored across 4 tools

Disambiguation4/5

Each tool has a distinct primary action: counting business days, classifying dates, listing holidays, and finding long weekends. There is some overlap because check_dates and list_holidays both surface holiday status, and business_days and check_dates both involve business-day logic, but the descriptions make the intended use cases reasonably clear.

Naming Consistency4/5

All names use consistent snake_case: business_days, check_dates, find_long_weekends, list_holidays. Three follow a verb_noun pattern, while business_days is a noun phrase, but the overall convention remains predictable.

Tool Count5/5

Four tools is well-scoped for a focused public-holiday API. Each tool covers a distinct common query pattern without redundant surface area.

Completeness5/5

The set covers listing holidays, checking specific dates, calculating business days, and finding long weekends. Together these address the main lifecycle of holiday-related queries, including make-up working days and Japan-specific holiday kinds.

Available Tools

4 tools
business_daysBusiness daysA
Read-onlyIdempotent
Inspect

Count business days between start and end (inclusive), or find the date that is N business days after start (add=N; negative N goes backward; start itself is not counted). Uses the country's weekend days, public holidays and make-up working days. For Japan, set year_end_closed to also skip 12/29-1/3.

NameRequiredDescriptionDefault
addNoMove this many business days from start.
endNoCount up to this date (inclusive).
startYesYYYY-MM-DD
regionNoOutside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.
countryNoISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted.JP
year_end_closedNoJapan only.
include_governmentNoOutside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so safety is covered; the description adds real behavioral context: weekend days, public holidays and make-up working days are factored in per country, and start is excluded from counts. It does not discuss return format or edge cases like range limits, but the added semantics are 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 dense sentences, front-loaded with the primary operation, with each clause (inclusive end, negative N, start not counted, Japan flag) carrying distinct information. Nothing is redundant.

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 7-parameter date tool with no output schema, the description covers both modes, country-specific holiday logic, and the one non-obvious flag. It leaves the exact return shape (count vs. date string) only implicit and does not explain region or include_government beyond the schema text.

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 coverage is 100%, so parameters are already documented, and the description adds some meaning beyond it: the sign convention for add, the exclusion of start, and the concrete Japan year-end window (12/29-1/3) that the schema only labels 'Japan only'. Baseline 3 applies since the schema carries most of the load.

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?

States two specific verbs (count business days between start/end, or find the date N business days from start) on a named resource. This is clearly the counting/offset tool, distinguishable from siblings like list_holidays or find_long_weekends, though it never explicitly names those alternatives.

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?

Explains how to select each mode: end for counting, add=N for forward offset, negative N for backward, and start itself is not counted. It also gives a conditional instruction (For Japan, set year_end_closed), but does not state when to prefer this tool over the sibling date tools.

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

check_datesCheck datesA
Read-onlyIdempotent
Inspect

For each date, tell whether it is a public holiday in the country (with its name and status), a weekend, and a business day, including make-up working days such as China's 调休. Also returns today in that country's time zone. For Japan, the kind is also given: 祝日 (national holiday) / 振替休日 (substitute holiday) / 国民の休日 (citizens' holiday).

NameRequiredDescriptionDefault
datesYes
regionNoOutside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.
countryNoISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted.JP
year_end_closedNoJapan only: treat 12/29-1/3 as non-business days (common in Japanese companies).
include_governmentNoOutside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, non-destructive safety, but the description adds substantive behavior beyond them: per-date holiday name/status, weekend/business-day classification, make-up working days, today in local time zone, and Japan holiday kinds. It does not cover unsupported country/date errors, but adds clear return semantics.

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?

Three sentences, front-loaded with core function and no obvious filler; the Japan holiday-kind detail is useful but broadens scope. Could be slightly tighter, but appropriately sized.

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?

With no output schema, the description must carry return meaning; it does explain the key classifications and local 'today' return. It leaves output structure and edge-case handling unstated, so not fully complete.

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 coverage is 80%, so the schema already documents most parameters. The description mentions country context and Japan-specific behavior, but does not explain region, year_end_closed, or include_government beyond what the schema provides.

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?

States a specific verb ('tell whether') and resource (each date) and enumerates outputs: holiday/weekend/business day, today in the country's time zone, and Japan-specific holiday kinds. Clear enough on its own, but does not name sibling tools like business_days or list_holidays to differentiate.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is provided, and it does not mention alternatives such as business_days, find_long_weekends, or list_holidays. Usage is only implied by the query it performs.

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

find_long_weekendsFind long weekendsA
Read-onlyIdempotent
Inspect

Find long weekends: 3+ consecutive days off made of weekends and public holidays in the country (e.g. Japan's Golden Week, China's National Day Golden Week). Give a year, or from (default today) to list upcoming ones.

NameRequiredDescriptionDefault
fromNoList long weekends ending on or after this date (default: today in the country).
yearNo
limitNo
regionNoOutside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.
countryNoISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted.JP
min_lengthNo
include_governmentNoOutside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds valuable behavioral context: the 3+ day definition, that weekends and public holidays are combined, and that `from` defaults to today in the country. It does not mention pagination, ordering, or return format, but those are minor for a read-only lookup.

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?

Two tight sentences with the core definition front-loaded, followed by usage guidance. Examples are brief and illustrative; there is no wasted wording.

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 7-parameter read-only computation tool with good annotations and no output schema, the description covers the core concept, key inputs (year/from), and default behavior sufficiently. It could more fully address the optional parameters (region, min_length, include_government), but the schema carries enough of that burden.

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 57%, so some parameters (from, region, country, include_government) are already documented. The description adds meaning for `year` and `from` (default today) but says nothing about `limit`, `min_length`, `region`, or `include_government` beyond what the schema provides, leaving gaps for those parameters.

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?

States a specific verb and resource ('Find long weekends') and precisely defines the concept as '3+ consecutive days off made of weekends and public holidays in the country', with illustrative examples (Golden Week, National Day Golden Week). This distinguishes it from siblings like list_holidays or business_days without needing to name them.

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 clear input guidance ('Give a year, or from (default today) to list upcoming ones'), implicitly explaining how to get either a specific year's long weekends or a forward-looking list. However, it does not explicitly name alternative tools or state when not to use this one, leaving the agent to infer the distinction from sibling names.

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

list_holidaysList holidaysA
Read-onlyIdempotent
Inspect

List a country's public holidays for a year, or between from and to (and make-up working days, if any). With no year or range, lists the next 10 holidays from today in that country.

NameRequiredDescriptionDefault
toNoEnd date (inclusive).
fromNoStart date (default: today in the country).
yearNo
limitNo
regionNoOutside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.
countryNoISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted.JP
include_governmentNoOutside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds the useful default-mode behavior (next 10 from today), but says nothing about paging, ordering, or what 'make-up working days' means in the returned data. Solid but thin beyond the 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?

Two sentences, no filler, with the primary resource statement first and the no-argument default behavior second. Every clause carries information an agent needs.

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 7-parameter, all-optional read tool with no output schema, the description covers the core invocation modes and the default case well. The main residual gap is the undocumented 'limit' parameter, which leaves the agent unsure how result truncation interacts with the 'next 10' default.

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 coverage is 71% and the description reinforces year, from/to and the make-up-day concept, but the 'limit' parameter has no description anywhere in the schema or the description beyond min/max bounds. Region and include_government semantics live only in the schema. That puts it near the baseline rather than adding meaning.

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?

States a specific verb and resource ('List a country's public holidays') plus the scope modes (year, or from/to range, plus make-up working days). It's clear what the tool returns, though it never names the siblings (business_days, find_long_weekends, check_dates) it should be distinguished from.

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?

Explicitly describes the three invocation modes and what happens when neither year nor range is supplied ('lists the next 10 holidays from today in that country'). It lacks a when-not clause pointing to business_days or find_long_weekends for related date queries, so routing depends on the agent inferring from names.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Changedbusiness_days1 field changed
      • changedInput schema / properties / country / description
        Previous value: -"ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP."New value: +"ISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted."
    • Changedcheck_dates1 field changed
      • changedInput schema / properties / country / description
        Previous value: -"ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP."New value: +"ISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted."
    • Changedfind_long_weekends2 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP."New value: +"ISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted."
      • changedInput schema / properties / from / description
        Previous value: -"List long weekends ending on or after this date (default: today in Japan)."New value: +"List long weekends ending on or after this date (default: today in the country)."
    • Changedlist_holidays2 fields changed
      • changedInput schema / properties / country / description
        Previous value: -"ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP."New value: +"ISO 3166-1 alpha-2 country code (e.g. US, GB, DE, CN, JP). Defaults to JP (Japan) when omitted."
      • changedInput schema / properties / from / description
        Previous value: -"Start date (default: today in Japan)."New value: +"Start date (default: today in the country)."
  2. 4 tool updates
    • Changedbusiness_days1 field changed
      • addedInput schema / properties / include_government
        Added value: +{
        +  "default": false,
        +  "description": "Outside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.",
        +  "type": "boolean"
        +}
    • Changedcheck_dates1 field changed
      • addedInput schema / properties / include_government
        Added value: +{
        +  "default": false,
        +  "description": "Outside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.",
        +  "type": "boolean"
        +}
    • Changedfind_long_weekends1 field changed
      • addedInput schema / properties / include_government
        Added value: +{
        +  "default": false,
        +  "description": "Outside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.",
        +  "type": "boolean"
        +}
    • Changedlist_holidays1 field changed
      • addedInput schema / properties / include_government
        Added value: +{
        +  "default": false,
        +  "description": "Outside Japan: also treat days off only for government offices (e.g. Indonesia's cuti bersama, Canadian federal holidays) as days off.",
        +  "type": "boolean"
        +}
  3. 4 tool updates
    • Changedbusiness_days3 fields changed
      • addedInput schema / properties / country
        Added value: +{
        +  "default": "JP",
        +  "description": "ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
      • addedInput schema / properties / region
        Added value: +{
        +  "description": "Outside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.",
        +  "type": "string"
        +}
      • addedInput schema / properties / year_end_closed / description
        Added value: +"Japan only."
    • Changedcheck_dates3 fields changed
      • addedInput schema / properties / country
        Added value: +{
        +  "default": "JP",
        +  "description": "ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
      • addedInput schema / properties / region
        Added value: +{
        +  "description": "Outside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.",
        +  "type": "string"
        +}
      • changedInput schema / properties / year_end_closed / description
        Previous value: -"Treat 12/29-1/3 as non-business days (common in Japanese companies)."New value: +"Japan only: treat 12/29-1/3 as non-business days (common in Japanese companies)."
    • Changedfind_long_weekends2 fields changed
      • addedInput schema / properties / country
        Added value: +{
        +  "default": "JP",
        +  "description": "ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
      • addedInput schema / properties / region
        Added value: +{
        +  "description": "Outside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.",
        +  "type": "string"
        +}
    • Changedlist_holidays2 fields changed
      • addedInput schema / properties / country
        Added value: +{
        +  "default": "JP",
        +  "description": "ISO 3166-1 alpha-2 country code (e.g. JP, US, CN, GB). Default JP.",
        +  "pattern": "^[A-Za-z]{2}$",
        +  "type": "string"
        +}
      • addedInput schema / properties / region
        Added value: +{
        +  "description": "Outside Japan: state/province code (ISO 3166-2 suffix, e.g. CA for California) to include regional holidays.",
        +  "type": "string"
        +}
  4. 4 tool updates
    • First observedbusiness_days
    • First observedcheck_dates
    • First observedfind_long_weekends
    • First observedlist_holidays

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Provides accurate time zone conversions, DST-safe scheduling, holidays for 200+ countries, business day calculations, and cross-zone meeting slot suggestions.
    5
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Public holiday data for 30+ countries. Check holidays, working days, and full calendars via AI assistants like Claude and Cursor.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Real public/bank/school holiday lookup for 206 countries via a rule-based calendar engine (moveable holidays like Easter computed astronomically, not guessed). Priced per call via x402/USDC on Base.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources