Koskamo

Türkiye Business Days & Public Holidays MCP

Provides tools to list official Turkish public holidays (2022–2035), check if a date is a business day, add business days to a date, and count business days between dates. It handles half-days and specific calendar types like public sector or TCMB.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Türkiye Business Days & Public Holidays MCP logo, by foster-mcpCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-01Published by foster-mcp
MCP endpoint (Streamable HTTP)
https://foster-mcp.esakiz.workers.dev/calendar/mcp
Vendor documentation

What you can do with it

  • List official public holidays for a specific year
  • Check if a given date is a business day
  • Add a specified number of business days to a start date
  • Count business days between two dates

Source and maintenance

Community listingRegistry 1.0.0

Protocol and capabilities

Server
turkey-business-calendar 1.0.0
MCP protocol
2025-06-18
Tools
4 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  }
}

Tools

4 advertised

list_holidays — List Türkiye public holidays
Advertised by the server during the last successful anonymous check.
Advertised read-only

Lists all public holidays of a year in Türkiye, with Turkish/English names, type, half-day eves and announced administrative leave. Türkiye's official calendar (Law 2429 holidays plus Diyanet's religious holidays), covering 2022-01-01 to 2035-12-31. Business days are Monday–Friday minus official holidays. Eves of Republic Day and the religious holidays are half days (holiday from 13:00).

list_holidays input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "year"
  ],
  "properties": {
    "year": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": -9007199254740991,
      "description": "Year, 2022–2035"
    }
  }
}
list_holidays output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "year",
    "holidays",
    "full_days_on_weekdays",
    "administrative_leave",
    "notes",
    "source",
    "disclaimer"
  ],
  "properties": {
    "year": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": -9007199254740991
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "source": {
      "type": "string"
    },
    "holidays": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "date",
          "name_tr",
          "name_en",
          "type",
          "portion",
          "starts_at"
        ],
        "properties": {
          "date": {
            "type": "string"
          },
          "type": {
            "enum": [
              "national",
              "general",
              "religious"
            ],
            "type": "string"
          },
          "name_en": {
            "type": "string"
          },
          "name_tr": {
            "type": "string"
          },
          "portion": {
            "enum": [
              "full",
              "afternoon"
            ],
            "type": "string"
          },
          "starts_at": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "additionalProperties": false
      }
    },
    "disclaimer": {
      "type": "string"
    },
    "administrative_leave": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "date",
          "portion",
          "reason_en"
        ],
        "properties": {
          "date": {
            "type": "string"
          },
          "portion": {
            "enum": [
              "full",
              "morning"
            ],
            "type": "string"
          },
          "reason_en": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "full_days_on_weekdays": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": -9007199254740991
    }
  },
  "additionalProperties": false
}
list_holidays annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
check_business_day — Is this a business day in Türkiye?
Advertised by the server during the last successful anonymous check.
Advertised read-only

Tells whether a date is a business day in Türkiye, which holiday falls on it and whether only the afternoon is off. Türkiye's official calendar (Law 2429 holidays plus Diyanet's religious holidays), covering 2022-01-01 to 2035-12-31. Business days are Monday–Friday minus official holidays. Eves of Republic Day and the religious holidays are half days (holiday from 13:00).

check_business_day input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "date"
  ],
  "properties": {
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date, YYYY-MM-DD"
    },
    "calendar": {
      "enum": [
        "standard",
        "public_sector",
        "tcmb"
      ],
      "type": "string",
      "default": "standard",
      "description": "standard: general business days. public_sector: also excludes announced administrative leave (from 2026). tcmb: days the central bank publishes exchange rates (no bulletin on eves)."
    },
    "half_days": {
      "enum": [
        "working",
        "holiday"
      ],
      "type": "string",
      "default": "working",
      "description": "Count half-day eves as working days or as holidays."
    }
  }
}
check_business_day output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "date",
    "weekday",
    "business_day",
    "day_off",
    "holidays",
    "administrative_leave",
    "calendar",
    "half_days",
    "source",
    "disclaimer"
  ],
  "properties": {
    "date": {
      "type": "string"
    },
    "source": {
      "type": "string"
    },
    "day_off": {
      "enum": [
        "none",
        "afternoon",
        "full"
      ],
      "type": "string"
    },
    "weekday": {
      "type": "string"
    },
    "calendar": {
      "enum": [
        "standard",
        "public_sector",
        "tcmb"
      ],
      "type": "string"
    },
    "holidays": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "date",
          "name_tr",
          "name_en",
          "type",
          "portion",
          "starts_at"
        ],
        "properties": {
          "date": {
            "type": "string"
          },
          "type": {
            "enum": [
              "national",
              "general",
              "religious"
            ],
            "type": "string"
          },
          "name_en": {
            "type": "string"
          },
          "name_tr": {
            "type": "string"
          },
          "portion": {
            "enum": [
              "full",
              "afternoon"
            ],
            "type": "string"
          },
          "starts_at": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "additionalProperties": false
      }
    },
    "half_days": {
      "enum": [
        "working",
        "holiday"
      ],
      "type": "string"
    },
    "disclaimer": {
      "type": "string"
    },
    "business_day": {
      "type": "boolean"
    },
    "administrative_leave": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "portion",
          "ends_at",
          "reason_tr",
          "reason_en",
          "source",
          "applies_to"
        ],
        "properties": {
          "source": {
            "type": "string"
          },
          "ends_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "portion": {
            "enum": [
              "full",
              "morning"
            ],
            "type": "string"
          },
          "reason_en": {
            "type": "string"
          },
          "reason_tr": {
            "type": "string"
          },
          "applies_to": {
            "type": "string",
            "const": "public_sector"
          }
        },
        "additionalProperties": false
      }
    }
  },
  "additionalProperties": false
}
check_business_day annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
add_business_days — Add business days (Türkiye)
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the date that is N business days after (or before, if N is negative) a start date in Türkiye, e.g. for payment terms or legal deadlines. The start date is not counted. Türkiye's official calendar (Law 2429 holidays plus Diyanet's religious holidays), covering 2022-01-01 to 2035-12-31. Business days are Monday–Friday minus official holidays. Eves of Republic Day and the religious holidays are half days (holiday from 13:00).

add_business_days input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "date",
    "days"
  ],
  "properties": {
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Start date, YYYY-MM-DD"
    },
    "days": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": -9007199254740991,
      "description": "Business days to add; negative to go back; non-zero"
    },
    "calendar": {
      "enum": [
        "standard",
        "public_sector",
        "tcmb"
      ],
      "type": "string",
      "default": "standard",
      "description": "standard: general business days. public_sector: also excludes announced administrative leave (from 2026). tcmb: days the central bank publishes exchange rates (no bulletin on eves)."
    },
    "half_days": {
      "enum": [
        "working",
        "holiday"
      ],
      "type": "string",
      "default": "working",
      "description": "Count half-day eves as working days or as holidays."
    }
  }
}
add_business_days output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "start_date",
    "business_days",
    "result_date",
    "result_weekday",
    "rule",
    "calendar",
    "half_days",
    "source",
    "disclaimer"
  ],
  "properties": {
    "rule": {
      "type": "string"
    },
    "source": {
      "type": "string"
    },
    "calendar": {
      "enum": [
        "standard",
        "public_sector",
        "tcmb"
      ],
      "type": "string"
    },
    "half_days": {
      "enum": [
        "working",
        "holiday"
      ],
      "type": "string"
    },
    "disclaimer": {
      "type": "string"
    },
    "start_date": {
      "type": "string"
    },
    "result_date": {
      "type": "string"
    },
    "business_days": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": -9007199254740991
    },
    "result_weekday": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
add_business_days annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
count_business_days — Count business days (Türkiye)
Advertised by the server during the last successful anonymous check.
Advertised read-only

Counts business days between two dates in Türkiye, both dates included. Türkiye's official calendar (Law 2429 holidays plus Diyanet's religious holidays), covering 2022-01-01 to 2035-12-31. Business days are Monday–Friday minus official holidays. Eves of Republic Day and the religious holidays are half days (holiday from 13:00).

count_business_days input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "from",
    "to"
  ],
  "properties": {
    "to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date, YYYY-MM-DD"
    },
    "from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date, YYYY-MM-DD"
    },
    "calendar": {
      "enum": [
        "standard",
        "public_sector",
        "tcmb"
      ],
      "type": "string",
      "default": "standard",
      "description": "standard: general business days. public_sector: also excludes announced administrative leave (from 2026). tcmb: days the central bank publishes exchange rates (no bulletin on eves)."
    },
    "half_days": {
      "enum": [
        "working",
        "holiday"
      ],
      "type": "string",
      "default": "working",
      "description": "Count half-day eves as working days or as holidays."
    }
  }
}
count_business_days output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "from",
    "to",
    "calendar_days",
    "business_days",
    "rule",
    "calendar",
    "half_days",
    "source",
    "disclaimer"
  ],
  "properties": {
    "to": {
      "type": "string"
    },
    "from": {
      "type": "string"
    },
    "rule": {
      "type": "string"
    },
    "source": {
      "type": "string"
    },
    "calendar": {
      "enum": [
        "standard",
        "public_sector",
        "tcmb"
      ],
      "type": "string"
    },
    "half_days": {
      "enum": [
        "working",
        "holiday"
      ],
      "type": "string"
    },
    "disclaimer": {
      "type": "string"
    },
    "business_days": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": -9007199254740991
    },
    "calendar_days": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": -9007199254740991
    }
  },
  "additionalProperties": false
}
count_business_days annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
340 ms
95th percentile latency
340 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 340 ms · metadata changed · 4 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http tu-rkiye-business-days-public-holidays-mcp https://foster-mcp.esakiz.workers.dev/calendar/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add tu-rkiye-business-days-public-holidays-mcp --url https://foster-mcp.esakiz.workers.dev/calendar/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable tu-rkiye-business-days-public-holidays-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "tu-rkiye-business-days-public-holidays-mcp": {
      "url": "https://foster-mcp.esakiz.workers.dev/calendar/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "tu-rkiye-business-days-public-holidays-mcp": {
      "type": "streamableHttp",
      "url": "https://foster-mcp.esakiz.workers.dev/calendar/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start tu-rkiye-business-days-public-holidays-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "tu-rkiye-business-days-public-holidays-mcp": {
      "type": "http",
      "url": "https://foster-mcp.esakiz.workers.dev/calendar/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http tu-rkiye-business-days-public-holidays-mcp https://foster-mcp.esakiz.workers.dev/calendar/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "tu-rkiye-business-days-public-holidays-mcp": {
      "url": "https://foster-mcp.esakiz.workers.dev/calendar/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "tu-rkiye-business-days-public-holidays-mcp": {
      "serverUrl": "https://foster-mcp.esakiz.workers.dev/calendar/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Türkiye Business Days & Public Holidays MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.