Skip to content

TradingCalendars

com.tradingcalendars/holidaystradingcalendars.comstreamable-httpv1.1.0Scanned

Business days, T+N settlement dates and holidays for FX, banks, payments and exchanges.

17 tools: 1 do something that can't be undone, 8 change things and 8 only read.

Tools: 0 delete, 1 irreversible, 8 write, 8 read.
  • Reads private data · 3
  • Reads text others write · 0
  • Can send data out · 0
  • No findings

Anlyon alternative

9 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

17 tools

Can't be undone 1Claude Code: ask
  • payment_system_holidaysPayment system holidays (e.g.No findings

    Why it is in this group

    • The name "payment_system_holidays" says "payment": a word that usually means money moves, which cannot be taken back.
    Description, as the server wrote it
    Payment system holidays (e.g. TARGET2, FEDWIRE): days the system does not process or settle. start defaults to today.
Changes things 8Claude Code: ask
  • add_business_daysDate that is N business days after (or before, with negative days) a start date: settlement and value dates (T+1 = 1, T+2 = 2), payment due dates, deadlines.No findings

    Why it is in this group

    • The name "add_business_days" says "add": a word for a change.
    Description, as the server wrote it
    Date that is N business days after (or before, with negative days) a start date: settlement and value dates (T+1 = 1, T+2 = 2), payment due dates, deadlines. days = 0 rolls a non-business start forward to the next business day. Lists every non-business day skipped and why. calendars: one or more calendar codes from list_calendars, e.g. ["USD.FX", "EUR.FX"] for a EUR/USD FX trade, ["XNYS.SETTLE"] for NYSE settlement, ["TARGET2.PAY"] for euro payments, ["GBLON.BANK"] for London banks. A date counts as a business day only when it is open in every calendar given. date defaults to today.
  • bank_holidaysBank holidays for a financial centre (UN/LOCODE, e.g.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Bank holidays for a financial centre (UN/LOCODE, e.g. USNYC): days retail and commercial banks are closed. start defaults to today.
  • business_days_betweenNumber of business days between two dates (start counted, end not counted, like numpy.busday_count), with the non-business days in between and why.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Number of business days between two dates (start counted, end not counted, like numpy.busday_count), with the non-business days in between and why. calendars: one or more calendar codes from list_calendars, e.g. ["USD.FX", "EUR.FX"] for a EUR/USD FX trade, ["XNYS.SETTLE"] for NYSE settlement, ["TARGET2.PAY"] for euro payments, ["GBLON.BANK"] for London banks. A date counts as a business day only when it is open in every calendar given.
  • currency_non_clearing_daysCurrency non-clearing days (ISO 4217, e.g.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Currency non-clearing days (ISO 4217, e.g. USD): days the currency cannot clear or settle. Use to validate FX value dates. start defaults to today.
  • fx_market_holidaysFX market holidays for a currency (ISO 4217, e.g.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    FX market holidays for a currency (ISO 4217, e.g. USD): days the FX market for that currency does not trade. start defaults to today.
  • is_business_dayIs a date a business day?No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Is a date a business day? Answers for one or several calendars at once and says why not (holiday name, weekend) or flags a half day / early close. calendars: one or more calendar codes from list_calendars, e.g. ["USD.FX", "EUR.FX"] for a EUR/USD FX trade, ["XNYS.SETTLE"] for NYSE settlement, ["TARGET2.PAY"] for euro payments, ["GBLON.BANK"] for London banks. A date counts as a business day only when it is open in every calendar given. date defaults to today (yyyy-mm-dd).
  • settlement_holidaysExchange settlement holidays for a market (ISO 10383 MIC, e.g.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Exchange settlement holidays for a market (ISO 10383 MIC, e.g. XNYS): days clearing and settlement cannot take place. start defaults to today.
  • trading_holidaysExchange trading holidays for a market (ISO 10383 MIC, e.g.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Exchange trading holidays for a market (ISO 10383 MIC, e.g. XNYS): days the exchange is closed for trading, including shortened sessions (half_day and early_close_time fields). start defaults to today.
Only reads 8Show 8 read-only tools
  • get_holidaysHolidays for one calendar by code (e.g.Reads private dataNo findings

    Why it is in this group

    • The name "get_holidays" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "calendar": it reads calendars.
    • private-dataThe input names a calendar (input.calendar), and the tool reads: it reads calendars.
    Description, as the server wrote it
    Holidays for one calendar by code (e.g. USD.FX). start defaults to today; pass an earlier start for historical holidays, end to bound forward dates. Rows carry original_date when a holiday is observed on a shifted date, plus half-day and early-close details.
  • get_weekendsWeekend definitions and working weekends for one calendar code (e.g.Reads private dataNo findings

    Why it is in this group

    • The name "get_weekends" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "calendar": it reads calendars.
    • private-dataThe input names a calendar (input.calendar), and the tool reads: it reads calendars.
    Description, as the server wrote it
    Weekend definitions and working weekends for one calendar code (e.g. USD.FX). weekend_days is the definition in force today (ISO weekday numbers); weekend_definitions carries the full history.
  • list_calendarsList published holiday calendars available to your plan.Reads private dataNo findings

    Why it is in this group

    • The name "list_calendars" says "list": a word for reading.

    What it can reach

    • private-dataThe name "list_calendars" says "list" and "calendar": it reads calendars.
    • private-dataThe description's first sentence says "list" and "calendar": it reads calendars.
    • private-dataThe input names a calendar (input.calendar_type), and the tool reads: it reads calendars.
    Description, as the server wrote it
    List published holiday calendars available to your plan. Optional calendar_type filters by family (CURRENCY_FX, CURRENCY_NON_CLEARING, FINANCIAL_CENTRE, PAYMENT_SYSTEM, EXCHANGE_TRADING, EXCHANGE_SETTLEMENT).
  • list_currenciesList covered currencies (ISO 4217) with issuing country and issuer.No findings

    Why it is in this group

    • The name "list_currencies" says "list": a word for reading.
    Description, as the server wrote it
    List covered currencies (ISO 4217) with issuing country and issuer.
  • list_exchangesList covered exchanges (ISO 10383 MIC) with country, city, and timezone.No findings

    Why it is in this group

    • The name "list_exchanges" says "list": a word for reading.
    Description, as the server wrote it
    List covered exchanges (ISO 10383 MIC) with country, city, and timezone.
  • list_financial_centresList covered financial centres (UN/LOCODE) with country and timezone.No findings

    Why it is in this group

    • The name "list_financial_centres" says "list": a word for reading.
    Description, as the server wrote it
    List covered financial centres (UN/LOCODE) with country and timezone.
  • list_payment_systemsList covered payment systems with operator, type, currency, and country.No findings

    Why it is in this group

    • The name "list_payment_systems" says "list": a word for reading.
    Description, as the server wrote it
    List covered payment systems with operator, type, currency, and country.
  • market_statusLive open/half/closed status for exchanges, evaluated against real trading hours and today's trading holidays in each exchange's timezone.No findings

    Why it is in this group

    • The name "market_status" says "status": a word for reading.
    Description, as the server wrote it
    Live open/half/closed status for exchanges, evaluated against real trading hours and today's trading holidays in each exchange's timezone. Includes next_open_at and next_close_at timestamps. Pass a MIC (e.g. XNYS) for one market or omit it for all. Requires a plan with exchange trading data (Free, Exchange, or All-in-one).

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged untrusted-input or outbound.

Reads private data3
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write0
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out0
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Findings

Matches of fixed checks, with the text they matched.

No check matched anything in these tool definitions. That is not a safety guarantee.

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

Pinned to version 1.1.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http holidays https://api.tradingcalendars.com/mcp
claude mcp add --transport http holidays https://api.tradingcalendars.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__holidays__list_calendars",
      "mcp__holidays__get_holidays",
      "mcp__holidays__list_currencies",
      "mcp__holidays__list_exchanges",
      "mcp__holidays__list_financial_centres",
      "mcp__holidays__list_payment_systems",
      "mcp__holidays__get_weekends",
      "mcp__holidays__market_status"
    ],
    "ask": [
      "mcp__holidays__fx_market_holidays",
      "mcp__holidays__currency_non_clearing_days",
      "mcp__holidays__bank_holidays",
      "mcp__holidays__payment_system_holidays",
      "mcp__holidays__trading_holidays",
      "mcp__holidays__settlement_holidays",
      "mcp__holidays__is_business_day",
      "mcp__holidays__add_business_days",
      "mcp__holidays__business_days_between"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as holidays. Review it before you use it.

Capability tags behind 3 rules
  • mcp__holidays__list_calendars private-data
  • mcp__holidays__get_holidays private-data
  • mcp__holidays__get_weekends private-data

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/com.tradingcalendars/holidays/verify?hash=a947d84d89d9618e69bfeb090c27d0ad9a73e70960b0c2f644e8bc068c49babf" | jq -e '.changed == false'

Pinned hash a947d84d89d9, from Nov 3, 2026, 13:18 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/com.tradingcalendars/holidays/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for com.tradingcalendars/holidays
[![anlyon.dev](https://anlyon.dev/badge/com.tradingcalendars/holidays.svg)](https://anlyon.dev/servers/com.tradingcalendars/holidays)

Source: MCP Registry. Synced Nov 3, 2026, 13:17 UTC.