accueil / serveurs / Géo & Temps / io.github.theluckystrike/scheduling
io.github.theluckystrike/scheduling
serveur MCP (Model Context Protocol) · mcp-timezone 0.22.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.theluckystrike/scheduling est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.theluckystrike/scheduling » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 11 outils
- business_days≈ 310 tokens
Count business days between two dates in a place, inclusive, with the calendar total and the weekend and holiday counts. It has NO holiday calendar: without holidays, only weekends are excluded.
Paramètres, retour & exemple (4)
Paramètresto· string · requis
End date, YYYY-MM-DD (inclusive)from· string · requis
Start date, YYYY-MM-DD (inclusive). A date that does not exist, such as 2026-02-30, is refused, never rolled forwardzone· string · requis
Place whose calendar to useholidays· array · optionnel
Dates to exclude, strict YYYY-MM-DD. This tool has no national holiday calendar: unless you pass holidays here only weekends are excluded, so do not report the answer as a public-holiday-adjusted count
Exemple d'appel{"name": "business_days", "arguments": {"to": "texte", "from": "texte", "zone": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - contacts_list≈ 120 tokens
List saved contacts with their zone, local time now, working hours and whether they are inside them; weekends count as outside. It also prints YOUR zone from the shared business profile.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "contacts_list", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - contacts_set≈ 236 tokens
Save one person's zone and working hours so later calls can name them. Returns the resolved zone and their local time now. Saving the same name REPLACES that contact and says so. Free: 5 contacts.
Paramètres, retour & exemple (4)
Paramètresname· string · requis
Their namezone· string · requis
Their place or IANA zonework_end· string · optionnel
Local day end, default 17:00work_start· string · optionnel
Local day start, default 09:00
Exemple d'appel{"name": "contacts_set", "arguments": {"name": "texte", "zone": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - convert_time≈ 359 tokens
Convert one time from from_zone into every zone in to_zones, marking any day change, plus the UTC instant. The time is wall-clock in from_zone unless it carries an offset or a trailing Z. '3pm tomorrow' works.
Paramètres, retour & exemple (5)
Paramètresgap· string · optionnel · forward | backward
What to do with a time that does not exist because the clocks jumped forward: 'forward' takes the time after the jump, 'backward' the time before it. Without this, such a time is refused.fold· string · optionnel · first | second
Which occurrence of a time that happens twice because the clocks went back. Default 'first'.time· string · requis
'2026-09-10 15:00', '2026-09-10T15:00:00Z', '3pm tomorrow', 'now'to_zones· array · requis
Places to convert intofrom_zone· string · requis
Place the time is given in, e.g. 'Warsaw' or 'Europe/Warsaw'
Exemple d'appel{"name": "convert_time", "arguments": {"time": "texte", "to_zones": [], "from_zone": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - dst_changes≈ 183 tokens
The clock changes in a place for a year, with the exact UTC instant and the offset before and after. Use it to check whether a recurring call moves for one of you in March or October.
Paramètres, retour & exemple (2)
Paramètresyear· integer · optionnel
Calendar year, default this yearzone· string · requis
Place or IANA zone
Exemple d'appel{"name": "dst_changes", "arguments": {"zone": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - find_meeting_slots≈ 702 tokens
Rank the times when every participant is inside their own working hours. Returns each slot as a UTC instant with the local time for every participant and a fairness score, best first.
Paramètres, retour & exemple (6)
Paramètresdays· integer · optionnel
How many days ahead to search, default 5, at most 366. Free tier: a search longer than 5 days is shortened to 5, not refusedlimit· integer · optionnel
How many slots to return, default 8. Slots are ranked by fairness: the score is the WORST participant's distance in hours from 13:00 local, so a slot that is 07:00 for one person never outranks one that suits everybodyrecurring· boolean · optionnel
Pro: also report the weekly recurring times that work on every searched weekdayparticipants· array · requis
Who has to attend. A zone is OPTIONAL per person: a saved contact supplies their own, and anyone left without one (you, typically) takes the timezone on your shared business profile, so never ask the caller what timezone they are in - include yourself by name and let the server resolve it. Every slot returned is inside all of their hours; weekends in the first participant's zone are skipped. Free tier: up to 3 participantsearliest_date· string · optionnel
First date to consider, YYYY-MM-DD, default todayduration_minutes· integer · optionnel
Meeting length in minutes, default 60, at most 1440
Exemple d'appel{"name": "find_meeting_slots", "arguments": {"participants": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - ics_create≈ 674 tokens
Call this tool to write a .ics for one meeting and return the path plus the start in UTC and in your zone. Times are stored in UTC so it lands correctly in any client. Free: 3 files a month.
Paramètres, retour & exemple (12)
Paramètresgap· string · optionnel · forward | backward
What to do with a time that does not exist because the clocks jumped forward: 'forward' takes the time after the jump, 'backward' the time before it. Without this, such a time is refused.fold· string · optionnel · first | second
Which occurrence of a time that happens twice because the clocks went back. Default 'first'.zone· string · requis
Place the start time is given instart· string · requis
Start time, read in `zone` unless it carries an offsettitle· string · requis
Event titlelocation· string · optionnel
Where, or a meeting linkout_path· string · optionnel
Name for the downloaded file, default meeting.icsattendees· array · optionnel
Attendees. An entry with an email is invited (ATTENDEE:mailto:...); a name with no email is listed in the description instead, because a calendar cannot invite a name.description· string · optionnel
Body textorganizer_name· string · optionnel
Your display name for the ORGANIZER lineorganizer_email· string · optionnel
Your email address, written as the ORGANIZER so replies have somewhere to go. Leave it out and your shared business profile's email is used; with neither, the ORGANIZER line is omitted rather than filled with an address you improvisedduration_minutes· integer · requis
Length in minutes, at most 1440
Exemple d'appel{"name": "ics_create", "arguments": {"zone": "texte", "start": "texte", "title": "texte", "duration_minutes": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - license_activate≈ 167 tokens
Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.
Paramètres, retour & exemple (1)
Paramètreskey· string · requis
License key from checkout, MCPL1.<payload>.<signature>
Exemple d'appel{"name": "license_activate", "arguments": {"key": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - license_status≈ 125 tokens
Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "license_status", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - now≈ 169 tokens
The current time in one or more places, each with the zone it resolved to and the local date, time and offset, under one UTC instant. Accepts IANA zones, cities, countries and abbreviations.
Paramètres, retour & exemple (1)
Paramètreszones· array · optionnel
Places or IANA zones, e.g. ['Warsaw','New York','India']
Exemple d'appel{"name": "now", "arguments": {"zones": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - overlap≈ 250 tokens
The window each day when every listed place is inside working hours. Computed on a real date, so a DST week that widens or narrows the overlap is reflected.
Paramètres, retour & exemple (4)
Paramètresdate· string · optionnel
Date to compute on, YYYY-MM-DD, default todayzones· array · requis
Places, e.g. ['Warsaw','New York','Bangalore']work_end· string · optionnel
Local working day end, default 17:00work_start· string · optionnel
Local working day start, default 09:00
Exemple d'appel{"name": "overlap", "arguments": {"zones": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».