Stock market hours, holidays and early closes
Stock exchange calendar for NYSE/Nasdaq, London (LSE) and Tokyo (JPX): is the market open now, today's session (early closes, lunch break), next open and close, holidays, previous/next trading day, and the trade settlement date (T+1/T+2). Use for trading agents, order timing and settlement.
MCP tool market_calendarHTTP POST /v1/market25 free calls a day, then $0.001
Try it
Runs the real tool over MCP. Edit the arguments and run. Uses your daily free calls.
market_calendar
result
{
"exchange": "XNYS",
"name": "New York Stock Exchange (same holidays as Nasdaq)",
"timezone": "America/New_York",
"date": "2026-11-27",
"weekday": "Friday",
"is_trading_day": true,
"reason": null,
"holiday": null,
"early_close": "Day after Thanksgiving",
"session": {
"open": "2026-11-27T09:30:00-05:00",
"close": "2026-11-27T13:00:00-05:00",
"open_utc": "2026-11-27T14:30:00Z",
"close_utc": "2026-11-27T18:00:00Z",
"break": null
},
"previous_trading_day": "2026-11-25",
"next_trading_day": "2026-11-30",
"settlement": {
"cycle": "T+1",
"settlement_date": "2026-11-30",
"note": "US equities settle T+1 (since 2024-05-28); settlement also skips Columbus Day and Veterans Day, when markets are open but banks are closed."
},
"status": {
"at": "2026-11-27T17:00:00Z",
"local": "2026-11-27T12:00:00-05:00",
"is_open": true,
"phase": "open",
"next_open": "2026-11-30T14:30:00Z",
"next_close": "2026-11-27T18:00:00Z"
},
"calendar": null,
"note": "Regular sessions only (no pre/after-hours). Unscheduled closures (e.g. national mourning days) are added when announced."
}
The result shown before you run is a saved example response.
Use it from your agent
Add the MCP server once and your agent can call market_calendar and the other 19 tools.
Claude Code
One command in your terminal.
claude mcp add --transport http date-math https://date-math.datemath.workers.dev/mcp
Any MCP client
Claude Desktop, Cursor, VS Code, Windsurf.
{
"mcpServers": {
"date-math": {
"url": "https://date-math.datemath.workers.dev/mcp"
}
}
}HTTP + x402
POST JSON; pay the 402 with any x402 client.
curl -X POST https://date-math.datemath.workers.dev/v1/market \
-H "Content-Type: application/json" \
-d '{"exchange":"NYSE","date":"2026-11-27","at":"2026-11-27T17:00:00Z"}'