Perfect Clock
Find meeting times across time zones and compare working hours.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"perfect-clock": {
"url": "https://perfectclock.cc/mcp"
}
}
}Remote-Endpunkte
https://perfectclock.cc/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (2)
⚪plan_meeting_schedule(title, tz, time, durationMinutes, rule, ...)
Plans a one-off or recurring meeting with people in other time zones when its time is known (e.g. "every other Tuesday at 10:00 Berlin time with Anna in Tbilisi"). Expands it into concrete dates and shows each one in every participant's local time, with working-hours checks, public holidays and daylight-saving shifts. Saves the schedule for 30 days and returns a private perfectclock.cc/s/... link that opens it in Perfect Clock.
Eingabe-Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"maxLength": 120,
"description": "Meeting title."
},
"tz": {
"type": "string",
"description": "Time zone the meeting time is fixed in (usually the organizer's)."
},
"time": {
"type": "string",
"pattern": "^([01]\\d|2[0-3]):[0-5]\\d$",
"description": "Local start time in `tz`."
},
"durationMinutes": {
"default": 60,
"type": "integer",
"minimum": 5,
"maximum": 720
},
"rule": {
"type": "object",
"properties": {
"freq": {
"type": "string",
"enum": [
"once",
"daily",
"weekly",
"monthly"
]
},
"interval": {
"description": "Every N days/weeks/months; default 1.",
"type": "integer",
"minimum": 1,
"maximum": 12
},
"byDay": {
"description": "Weekdays for weekly rules; for monthly with setPos, the weekday.",
"type": "array",
"items": {
"type": "string",
"enum": [
"MO",
"TU",
"WE",
"TH",
"FR",
"SA",
"SU"
]
}
},
"setPos": {
"description": "Monthly \"Nth weekday\": 1-4, or -1 for the last.",
"type": "integer",
"minimum": -1,
"maximum": 4
},
"start": {
"description": "First possible date in `tz`; default today.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"count": {
"type": "integer",
"minimum": 1,
"maximum": 500
},
"until": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
},
"required": [
"freq"
],
"description": "Recurrence of the meeting."
},
"participants": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string",
"maxLength": 60,
"description": "How the participant or place is called in the conversation, e.g. \"Anna\" or \"Tokyo office\"."
},
"tz": {
"type": "string",
"description": "IANA time zone of this participant, e.g. Asia/Tbilisi."
},
"workHours": {
"description": "Local working hours [start, end]; default [\"09:00\",\"17:00\"].",
"minItems": 2,
"maxItems": 2,
"type": "array",
"items": {
"type": "string",
"pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
}
}
},
"required": [
"label",
"tz"
]
},
"description": "People or places the meeting must suit, each with their own time zone."
},
"maxOccurrences": {
"default": 8,
"description": "How many upcoming meetings to list.",
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"required": [
"title",
"tz",
"time",
"rule",
"participants"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢find_meeting_windows(title, tz, from, days, durationMinutes, ...)
Finds when people in other time zones can meet, when the time is not decided yet: the windows on each day when all participants are within their working hours, accounting for weekends, public holidays and daylight-saving changes, and one suggested start time that fits the most days. Saves that suggested time on those days for 30 days and returns a private perfectclock.cc/s/... link that opens it in Perfect Clock.
Eingabe-Schema
{
"type": "object",
"properties": {
"title": {
"description": "Meeting title, if the user gave one.",
"type": "string",
"maxLength": 120
},
"tz": {
"type": "string",
"description": "Time zone whose calendar days are scanned (usually the organizer's)."
},
"from": {
"description": "First day in `tz`; default today.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"days": {
"default": 5,
"type": "integer",
"minimum": 1,
"maximum": 14
},
"durationMinutes": {
"default": 60,
"type": "integer",
"minimum": 15,
"maximum": 480
},
"participants": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string",
"maxLength": 60,
"description": "How the participant or place is called in the conversation, e.g. \"Anna\" or \"Tokyo office\"."
},
"tz": {
"type": "string",
"description": "IANA time zone of this participant, e.g. Asia/Tbilisi."
},
"workHours": {
"description": "Local working hours [start, end]; default [\"09:00\",\"17:00\"].",
"minItems": 2,
"maxItems": 2,
"type": "array",
"items": {
"type": "string",
"pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
}
}
},
"required": [
"label",
"tz"
]
},
"description": "People or places the meeting must suit, each with their own time zone."
}
},
"required": [
"tz",
"participants"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Nachweis