Calculate Schengen days
calculate_schengen_daysUse this when the user needs a schengen calculator, schengen days left, schengen overstay dates or a 90/180 rule calculator for past and planned short stays. Returns days used and left on the check date, stay compliance, overstay dates and daily CSV. Accepts ISO or English US text dates, up to 60 stays over 1,100 days, years 1900–2100. Open stays end at the check date; touching stays merge. Does not model bilateral agreements, residence permits, long-stay visas or visa-sticker limits; calculation aid, not legal advice.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"stays": "<stays>",
"check_date": "<check_date>"
},
"name": "calculate_schengen_days"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| stays | Yes | Up to 60 short stays spanning at most 1,100 days. Example: [{"entry_date":"2026-03-05","exit_date":"2026-03-20"}]. Use [] for none. Exclude residence-permit and type D visa days. | |
| check_date | Yes | Window ends on this day, inclusive. Example: 2026-03-20 or March 20, 2026. Required for an ongoing stay. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| note | Yes | ||
| notes | Yes | ||
| days_left | Yes | ||
| days_used | Yes | ||
| downloads | Yes | ||
| check_date | Yes | ||
| window_end | Yes | ||
| stay_results | Yes | ||
| window_start | Yes | ||
| overstay_ranges | Yes | ||
| next_legal_entry | Yes | ||
| stay_result_count | Yes | ||
| overstay_day_count | Yes | ||
| first_overstay_date | Yes | ||
| next_entry_max_days | Yes |