DatoQA — Official Public Holidays

Government and OpenHolidays calendars: regional scope, multilingual names, dated sources and gaps.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
82%
命名品質
96%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~3,143Token(工具定義)
~6.4 KB典型回應大小
顯著的注意力影響(128k 上下文的 2.46%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "official-public-holidays": {
      "url": "https://datoqa.bhazarstudio.workers.dev/mcp/holidays"
    }
  }
}

遠端端點

https://datoqa.bhazarstudio.workers.dev/mcp/holidaysstreamable-http

它能做什麼

工具清單

工具(5)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢catalog(report_countries, report_indicators, report_from, report_to, language)

Inspect this connection’s scope, tools and access policy. With no arguments returns the usual catalog. On the general or economy connection, optionally supply report_countries (1–10 World Bank codes) for a FREE live preview of the optional paid country comparison: population/GDP/inflation by default, or up to six selected historical indicators over ten years, aligned JSON and CSV, definitions and source evidence. Preview reports price, missing cells, availability and the exact HTTP purchase path; it never signs or pays. Existing data tools remain free. Buying requires an authorized x402 HTTP client, not just MCP. Source/schema checks are not independent factual verification.

輸入結構描述

{
  "type": "object",
  "properties": {
    "report_countries": {
      "description": "Optional free preview for these distinct World Bank country codes, e.g. FRA, DEU, ESP. General/economy connections only.",
      "minItems": 1,
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Z0-9]{3}$"
      }
    },
    "report_indicators": {
      "description": "Custom historical comparison: select up to six of the 22 WDI indicators. Supply report_from and report_to together, up to ten years. Missing cells block payment.",
      "minItems": 1,
      "maxItems": 6,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "population",
          "gdp",
          "gdp_per_capita",
          "gdp_real",
          "gdp_growth",
          "inflation",
          "life_expectancy",
          "fertility",
          "urban_population",
          "internet_users",
          "electricity_access",
          "unemployment",
          "renewable_energy",
          "forest_area",
          "agricultural_land",
          "trade",
          "exports",
          "imports",
          "infant_mortality",
          "basic_drinking_water",
          "basic_sanitation",
          "primary_completion"
        ]
      }
    },
    "report_from": {
      "type": "integer",
      "minimum": 1960,
      "maximum": 9007199254740991
    },
    "report_to": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 2025
    },
    "language": {
      "default": "en",
      "type": "string",
      "enum": [
        "en",
        "fr"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "const": "DatoQA"
    },
    "version": {
      "type": "string"
    },
    "available_records": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "title": {
      "type": "string"
    },
    "profile": {
      "type": "string"
    },
    "tools": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "capabilities": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "independently_verified": {
      "type": "boolean",
      "const": false,
      "description": "Official-source checks are not independent factual corroboration."
    }
  },
  "required": [
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {},
  "description": "General availability catalog or a scoped thematic directory; theme metadata is not a live availability guarantee."
}
🟢list_holiday_regions

Discover available public-holiday calendars and exact region ids, published years, source kind and freshness. Includes FR/UK/HK government feeds and international OpenHolidays curated entries. Use when country/region/year coverage is unknown; otherwise call get_public_holidays directly. Configured calendars are not proof of available data. International coverage is incomplete.

輸入結構描述

{
  "type": "object",
  "properties": {}
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "endpoint": {
      "type": "string"
    },
    "regions": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "region": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "country_code": {
            "type": "string"
          },
          "years": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            }
          },
          "source_event_count": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "retrieved_at": {
            "type": "string"
          },
          "expires_at": {
            "type": "string"
          },
          "source_kind": {
            "type": "string"
          },
          "date_confirmation": {
            "type": "string"
          }
        },
        "required": [
          "region",
          "name",
          "country_code",
          "years",
          "source_event_count",
          "retrieved_at",
          "expires_at"
        ],
        "additionalProperties": false
      }
    },
    "configured_regions": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "region": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "region",
          "name"
        ],
        "additionalProperties": false
      }
    },
    "region_count": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "source_event_count": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "count_meaning": {
      "type": "string"
    },
    "refresh_interval_seconds": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "max_collection_age_seconds": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "notice": {
      "type": "string"
    },
    "independently_verified": {
      "type": "boolean",
      "const": false,
      "description": "Official-source checks are not independent factual corroboration."
    }
  },
  "required": [
    "endpoint",
    "regions",
    "configured_regions",
    "region_count",
    "source_event_count",
    "count_meaning",
    "refresh_interval_seconds",
    "max_collection_age_seconds",
    "notice",
    "independently_verified"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_public_holidays(region, nationwide_only, year, date)

Get published public-holiday entries for one calendar and year or exact inclusive local date. Use a known region id directly (fr-metropole, gb-england-and-wales, hk-general, oh-de); consult list_holiday_regions only if scope is unknown. OpenHolidays entries retain multilingual names, subdivisions and half-day scope; set nationwide_only=true to exclude regional entries. Government feeds and third-party curated calendars are explicitly distinguished. Empty results do not establish working days; future dates can change, and aggregator dates are not individually government-confirmed.

輸入結構描述

{
  "type": "object",
  "properties": {
    "region": {
      "type": "string",
      "enum": [
        "fr-metropole",
        "fr-alsace-moselle",
        "fr-guadeloupe",
        "fr-guyane",
        "fr-la-reunion",
        "fr-martinique",
        "fr-mayotte",
        "fr-nouvelle-caledonie",
        "fr-polynesie-francaise",
        "fr-saint-barthelemy",
        "fr-saint-martin",
        "fr-saint-pierre-et-miquelon",
        "fr-wallis-et-futuna",
        "gb-england-and-wales",
        "gb-scotland",
        "gb-northern-ireland",
        "hk-general",
        "oh-ad",
        "oh-al",
        "oh-at",
        "oh-be",
        "oh-bg",
        "oh-br",
        "oh-by",
        "oh-ch",
        "oh-cz",
        "oh-de",
        "oh-ee",
        "oh-es",
        "oh-fr",
        "oh-hr",
        "oh-hu",
        "oh-ie",
        "oh-it",
        "oh-li",
        "oh-lt",
        "oh-lu",
        "oh-lv",
        "oh-mc",
        "oh-md",
        "oh-mt",
        "oh-mx",
        "oh-nl",
        "oh-pl",
        "oh-pt",
        "oh-ro",
        "oh-rs",
        "oh-se",
        "oh-si",
        "oh-sk",
        "oh-sm",
        "oh-va",
        "oh-za"
      ],
      "description": "Calendar identifier from list_holiday_regions, for example gb-england-and-wales."
    },
    "nationwide_only": {
      "description": "For OpenHolidays country calendars, keep only entries marked nationwide by the source. Default false includes regional entries with their scopes. Government calendars retain their named territory scope.",
      "type": "boolean"
    },
    "year": {
      "description": "Calendar year; defaults to the current year. Only published years are available. Omit when date is supplied.",
      "type": "integer",
      "minimum": 2000,
      "maximum": 2032
    },
    "date": {
      "description": "Exact local calendar date YYYY-MM-DD, for example 2026-12-28; cannot be combined with year.",
      "type": "string"
    }
  },
  "required": [
    "region"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "source_unavailable_or_stale",
        "year_not_covered",
        "holidays_listed",
        "no_holiday_listed_for_date"
      ],
      "description": "Read this before using values; a successful transport does not establish data availability."
    },
    "returned": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Domain-specific result count, not necessarily the number of stored records in items."
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "domain": {
            "type": "string"
          },
          "data": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {},
            "description": "Source-specific payload; inspect units, observation dates, nulls and source notes."
          },
          "freshness": {
            "type": "object",
            "properties": {
              "observed_at": {
                "type": "string"
              },
              "expires_at": {
                "type": "string"
              },
              "age_seconds": {
                "type": "integer",
                "minimum": 0,
                "maximum": 9007199254740991
              },
              "meaning": {
                "type": "string"
              }
            },
            "required": [
              "observed_at",
              "expires_at",
              "age_seconds",
              "meaning"
            ],
            "additionalProperties": false
          },
          "citation": {
            "type": "object",
            "properties": {
              "url": {
                "type": "string"
              },
              "publisher": {
                "type": "string"
              },
              "retrieved_at": {
                "type": "string"
              }
            },
            "required": [
              "url",
              "publisher",
              "retrieved_at"
            ],
            "additionalProperties": false
          },
          "provenance": {
            "type": "object",
            "properties": {
              "source_id": {
                "type": "string"
              },
              "source_name": {
                "type": "string"
              },
              "source_url": {
                "type": "string"
              },
              "license": {
                "type": "string"
              },
              "retrieved_at": {
                "type": "string"
              },
              "verified_at": {
                "type": "string"
              },
              "valid_until": {
                "type": "string"
              },
              "verification_method": {
                "type": "string"
              },
              "content_sha256": {
                "type": "string"
              },
              "verification_level": {
                "type": "string",
                "enum": [
                  "official_source_and_schema_checked",
                  "public_aggregator_and_schema_checked",
                  "method_specific"
                ]
              },
              "independently_verified": {
                "type": "boolean",
                "const": false,
                "description": "Official-source checks are not independent factual corroboration."
              },
              "verification_scope": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "required": [
              "source_id",
              "source_name",
              "source_url",
              "license",
              "retrieved_at",
              "verified_at",
              "valid_until",
              "verification_method",
              "content_sha256",
              "verification_level",
              "independently_verified",
              "verification_scope"
            ],
            "additionalProperties": false
          },
          "display_label": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "domain",
          "data",
          "freshness",
          "citation",
          "provenance"
        ],
        "additionalProperties": {}
      }
    },
    "independently_verified": {
      "type": "boolean",
      "const": false,
      "description": "Official-source checks are not independent factual corroboration."
    },
    "notice": {
      "type": "string"
    },
    "directory": {
      "type": "string"
    },
    "region": {
      "type": "string"
    },
    "year": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "requested_date": {
      "type": [
        "string",
        "null"
      ]
    },
    "available_years": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": -9007199254740991,
        "maximum": 9007199254740991
      }
    }
  },
  "required": [
    "status",
    "returned",
    "items"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_record(id)

Get an unexpired record with provenance and its explicit verification level. Source/schema validation is not independent factual verification.

輸入結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "pattern": "^[A-Za-z0-9_-]+$",
      "description": "Opaque record id returned by a DatoQA data response. Reuse it exactly; do not invent an id."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "domain": {
      "type": "string"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "Source-specific payload; inspect units, observation dates, nulls and source notes."
    },
    "freshness": {
      "type": "object",
      "properties": {
        "observed_at": {
          "type": "string"
        },
        "expires_at": {
          "type": "string"
        },
        "age_seconds": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "meaning": {
          "type": "string"
        }
      },
      "required": [
        "observed_at",
        "expires_at",
        "age_seconds",
        "meaning"
      ],
      "additionalProperties": false
    },
    "citation": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string"
        },
        "publisher": {
          "type": "string"
        },
        "retrieved_at": {
          "type": "string"
        }
      },
      "required": [
        "url",
        "publisher",
        "retrieved_at"
      ],
      "additionalProperties": false
    },
    "provenance": {
      "type": "object",
      "properties": {
        "source_id": {
          "type": "string"
        },
        "source_name": {
          "type": "string"
        },
        "source_url": {
          "type": "string"
        },
        "license": {
          "type": "string"
        },
        "retrieved_at": {
          "type": "string"
        },
        "verified_at": {
          "type": "string"
        },
        "valid_until": {
          "type": "string"
        },
        "verification_method": {
          "type": "string"
        },
        "content_sha256": {
          "type": "string"
        },
        "verification_level": {
          "type": "string",
          "enum": [
            "official_source_and_schema_checked",
            "public_aggregator_and_schema_checked",
            "method_specific"
          ]
        },
        "independently_verified": {
          "type": "boolean",
          "const": false,
          "description": "Official-source checks are not independent factual corroboration."
        },
        "verification_scope": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "source_id",
        "source_name",
        "source_url",
        "license",
        "retrieved_at",
        "verified_at",
        "valid_until",
        "verification_method",
        "content_sha256",
        "verification_level",
        "independently_verified",
        "verification_scope"
      ],
      "additionalProperties": false
    },
    "display_label": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "domain",
    "data",
    "freshness",
    "citation",
    "provenance"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": {}
}
🟢get_evidence(id)

Retrieve the source JSON snapshot and SHA-256 digest for a currently available record. The digest proves snapshot integrity, not factual truth.

輸入結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,128}$",
      "description": "Record id returned by a DatoQA data response; returns the retained source snapshot for that record."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "record_id": {
      "type": "string"
    },
    "sha256": {
      "type": "string"
    },
    "hash_scope": {
      "type": "string",
      "const": "utf8_source_payload_json"
    },
    "source_payload_json": {
      "type": "string"
    },
    "first_observed_at": {
      "type": "string"
    },
    "source_url": {
      "type": "string"
    },
    "notice": {
      "type": "string"
    }
  },
  "required": [
    "record_id",
    "sha256",
    "hash_scope",
    "source_payload_json",
    "first_observed_at",
    "source_url",
    "notice"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本5 個工具