Schengen 90/180 stay calculator
Rolling stay-limit math such as the Schengen 90/180 rule: days used in the window, days left, overstay check, the longest stay allowed from a planned entry date, and the next date a full stay is possible. Entry and exit days both count. Custom rules via max_days/window_days. Use for travel planning, visa-free stays and "can I enter on".
MCP tool stay_calculatorHTTP POST /v1/stay25 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.
stay_calculator
result
{
"date": "2026-10-01",
"rule": {
"max_days": 90,
"window_days": 180,
"window_start": "2026-04-05",
"window_end": "2026-10-01"
},
"days_used": 66,
"days_remaining": 24,
"overstay_days": 0,
"in_compliance": true,
"first_overstay": null,
"max_stay": {
"entry": "2026-11-01",
"days_allowed": 24,
"latest_exit": "2026-11-24"
},
"next_full_stay_date": "2026-12-30",
"note": "Entry and exit days both count. A planning aid; border officials and the official calculator have the final say."
}
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 stay_calculator 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/stay \
-H "Content-Type: application/json" \
-d '{"trips":[{"entry":"2026-06-01","exit":"2026-07-15"},{"entry":"2026-09-10","exit":"2026-09-30"}],"date":"2026-10-01","entry":"2026-11-01"}'