Visa stay calculator (Schengen 90/180)
stay_calculatorRolling 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". First 25 calls per day are free, then $0.001 per call (x402).
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": {
"trips": "<trips>"
},
"name": "stay_calculator"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| entry | No | ||
| trips | Yes | Past and planned stays. Entry and exit days both count as days present. | |
| max_days | No | ||
| window_days | No | Length of the rolling window, counted back from each day (inclusive) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | ||
| note | Yes | ||
| rule | Yes | ||
| max_stay | Yes | Present when entry was given | |
| days_used | Yes | Days present in the window ending on date | |
| in_compliance | Yes | ||
| overstay_days | Yes | ||
| days_remaining | Yes | ||
| first_overstay | Yes | First day any trip broke the rule, or null | |
| next_full_stay_date | Yes | Earliest date after date from which a full max_days stay is allowed |