GnistAI GnistAI
Log in

Nager.Date (Holidays)

Public holidays by country and year — dates, names, and types.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 5 tools tools 5 5 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Reference

Data source: Nager.Date

MCP Endpoint (Streamable HTTP) https://context.gnist.ai/mcp/nager-date/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (5)

check_holiday

Check whether a given date is a public holiday in a country.

Args:
date: Date to check in ISO 8601 format (YYYY-MM-DD).
country_code: ISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').
region_code: Optional ISO 3166-2 region code (e.g. 'US-CA', 'DE-BY').

Returns:
Dictionary with is_holiday (bool) and holiday_names (list of matching names).

ParameterTypeRequiredDescription
datestringrequiredDate to check in ISO 8601 format (YYYY-MM-DD).
country_codestringrequiredISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').
region_codeanyoptionalOptional ISO 3166-2 region code (e.g. 'US-CA', 'DE-BY').
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "check_holiday",
    "arguments": {
      "date": "example",
      "country_code": "NO"
    }
  }
}
list_public_holidays

List all public holidays for a country in a given year.

Args:
country_code: ISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').
year: The year (e.g. 2026).

Returns:
Dictionary with count and holidays list. Each holiday has date, name,
local_name, global flag, counties, and types.

ParameterTypeRequiredDescription
country_codestringrequiredISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').
yearintegerrequiredThe year (e.g. 2026).
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "list_public_holidays",
    "arguments": {
      "country_code": "NO",
      "year": 1
    }
  }
}
get_next_business_day

Find the next business day on or after a given date, skipping weekends and holidays.

Args:
date: Starting date in ISO 8601 format (YYYY-MM-DD).
country_code: ISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').

Returns:
Dictionary with next_business_day date and days_skipped count.

ParameterTypeRequiredDescription
datestringrequiredStarting date in ISO 8601 format (YYYY-MM-DD).
country_codestringrequiredISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_next_business_day",
    "arguments": {
      "date": "example",
      "country_code": "NO"
    }
  }
}
count_business_days

Count business days between two dates (inclusive of start, exclusive of end).

Args:
start_date: Start date in ISO 8601 format (YYYY-MM-DD).
end_date: End date in ISO 8601 format (YYYY-MM-DD). Not included in the count.
country_code: ISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').

Returns:
Dictionary with business_days count and calendar_days in the range.

ParameterTypeRequiredDescription
start_datestringrequiredStart date in ISO 8601 format (YYYY-MM-DD).
end_datestringrequiredEnd date in ISO 8601 format (YYYY-MM-DD). Not included in the count.
country_codestringrequiredISO 3166-1 alpha-2 country code (e.g. 'NO', 'US', 'DE').
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "count_business_days",
    "arguments": {
      "start_date": "example",
      "end_date": "example",
      "country_code": "NO"
    }
  }
}
report_feedback

Report a bug, feature request, or general feedback for this data source.

Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.

Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "report_feedback",
    "arguments": {
      "feedback": "example"
    }
  }
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/mcp/nager-date/" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Gnist-API-Key: YOUR_API_KEY" \
  -d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "check_holiday", "arguments": {"date": "example", "country_code": "example"}}}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/mcp/nager-date/",
    headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
    json={
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "check_holiday",
    "arguments": {
      "date": "example",
      "country_code": "example"
    }
  }
},
)
print(resp.json())

Related Toolkits (Reference)

Resources