Find meeting times that overlap working hours across IANA time zones, DST-aware. Free tier.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Given 2-5 IANA time zones (e.g. America/New_York, Europe/London, Asia/Tokyo), a local working window applied in every zone (default 09:00-17:00) and up to 7 calendar days, returns up to 5 ranked meeting slots in UTC with each zone's local time, UTC offset and abbreviation, DST-aware, plus an optional ICS event for the top slot. Read-only, pure computation (no calendars are read). Same engine as POST /v1/overlap on the free BASIC plan.
IANA zone ids, e.g. ["America/New_York","Europe/London"]
Dates YYYY-MM-DD (default: today + 6 days, UTC)
Max ranked slots (default 5, max 5)
Local working window applied in each zone (default 09:00-17:00)
Include an ICS VEVENT for the top slot (default true)
Meeting length in minutes (default 30)
Given 2-5 IANA time zones (e.g. America/New_York, Europe/London, Asia/Tokyo), a local working window applied in every zone (default 09:00-17:00) and up to 7 calendar days, returns up to 5 ranked meeting slots in UTC with each zone's local time, UTC offset and abbreviation, DST-aware, plus an optional ICS event for the top slot. Read-only, pure computation (no calendars are read). Same engine as POST /v1/overlap on the free BASIC plan.
| Argument | Type | Description |
|---|---|---|
| days | array | Dates YYYY-MM-DD (default: today + 6 days, UTC) |
| limit | integer | Max ranked slots (default 5, max 5) |
| zones* | array | IANA zone ids, e.g. ["America/New_York","Europe/London"] |
| work_hours | object | Local working window applied in each zone (default 09:00-17:00) |
| include_ics | boolean | Include an ICS VEVENT for the top slot (default true) |
| duration_minutes | integer | Meeting length in minutes (default 30) |
{
"type": "object",
"required": [
"zones"
],
"properties": {
"days": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"maxLength": 10
},
"maxItems": 7,
"description": "Dates YYYY-MM-DD (default: today + 6 days, UTC)"
},
"limit": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Max ranked slots (default 5, max 5)"
},
"zones": {
"type": "array",
"items": {
"type": "string",
"maxLength": 64,
"minLength": 1
},
"maxItems": 5,
"minItems": 2,
"description": "IANA zone ids, e.g. [\"America/New_York\",\"Europe/London\"]"
},
"work_hours": {
"type": "object",
"required": [
"start",
"end"
],
"properties": {
"end": {
"type": "string",
"pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
"maxLength": 5
},
"start": {
"type": "string",
"pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
"maxLength": 5
}
},
"description": "Local working window applied in each zone (default 09:00-17:00)",
"additionalProperties": false
},
"include_ics": {
"type": "boolean",
"description": "Include an ICS VEVENT for the top slot (default true)"
},
"duration_minutes": {
"type": "integer",
"maximum": 480,
"minimum": 5,
"description": "Meeting length in minutes (default 30)"
}
},
"additionalProperties": false
}Look up IANA time zone ids by city, country, alias or a raw IANA id (e.g. "tokyo", "india", "PST"). Returns up to 5 matches; with a date, also each zone's UTC offset and abbreviation on that day. Read-only. Same engine as GET /v1/zones/search on the free BASIC plan.
| Argument | Type | Description |
|---|---|---|
| q* | string | Search text, e.g. "london" |
| date | string | Optional YYYY-MM-DD for offsets/abbreviations |
| limit | integer | Max results (default 5) |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"maxLength": 64,
"description": "Search text, e.g. \"london\""
},
"date": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"maxLength": 10,
"description": "Optional YYYY-MM-DD for offsets/abbreviations"
},
"limit": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Max results (default 5)"
}
},
"additionalProperties": false
}