Tool tree
Free Schengen 90/180 calculator: check any trip against the 90-day limit in every rolling 180-day window, day by day, right in your browser.
Implementation
gradeNot graded
gradeNot graded
computeStayAction
Schengen 90/180 rolling-window check from user-provided entry/exit dates only. All computation runs locally in the browser; nothing is stored or transmitted. Returns days used/remaining in the 180-day window ending at the reference day, the window boundaries, an overstay risk level (none/warning/breach) and a deep link to the interactive calculator.
View tool JSON
{
"name": "computeStay",
"kind": "act",
"impl": "imperative",
"description": "Schengen 90/180 rolling-window check from user-provided entry/exit dates only. All computation runs locally in the browser; nothing is stored or transmitted. Returns days used/remaining in the 180-day window ending at the reference day, the window boundaries, an overstay risk level (none/warning/breach) and a deep link to the interactive calculator.",
"inputSchema": {
"type": "object",
"properties": {
"entries": {
"type": "array",
"description": "User-provided stay periods (entry/exit dates only). Each item needs \"date\" (entry, ISO YYYY-MM-DD); \"exitDate\" may be omitted for a single-day stay.",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Entry date, ISO YYYY-MM-DD"
},
"country": {
"type": "string",
"description": "Optional country of entry (label only)"
},
"exitDate": {
"type": "string",
"description": "Exit date, ISO YYYY-MM-DD; omit for a single-day stay"
}
},
"required": [
"date"
]
}
},
"today": {
"type": "string",
"description": "Optional reference day, ISO YYYY-MM-DD; defaults to today (UTC)"
}
},
"required": [
"entries"
]
},
"page": "/"
}getOverstayRiskAnswer
Schengen 90/180 rolling-window check from user-provided entry/exit dates only. All computation runs locally in the browser; nothing is stored or transmitted. Returns only the risk verdict (none/warning/breach) plus the day counts it is based on — use instead of computeStay when the budget breakdown is not needed.
View tool JSON
{
"name": "getOverstayRisk",
"kind": "answer",
"impl": "imperative",
"description": "Schengen 90/180 rolling-window check from user-provided entry/exit dates only. All computation runs locally in the browser; nothing is stored or transmitted. Returns only the risk verdict (none/warning/breach) plus the day counts it is based on — use instead of computeStay when the budget breakdown is not needed.",
"inputSchema": {
"type": "object",
"properties": {
"entries": {
"type": "array",
"description": "User-provided stay periods (entry/exit dates only). Each item needs \"date\" (entry, ISO YYYY-MM-DD); \"exitDate\" may be omitted for a single-day stay.",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Entry date, ISO YYYY-MM-DD"
},
"country": {
"type": "string",
"description": "Optional country of entry (label only)"
},
"exitDate": {
"type": "string",
"description": "Exit date, ISO YYYY-MM-DD; omit for a single-day stay"
}
},
"required": [
"date"
]
}
},
"today": {
"type": "string",
"description": "Optional reference day, ISO YYYY-MM-DD; defaults to today (UTC)"
}
},
"required": [
"entries"
]
},
"page": "/"
}