{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_ecx27r48knan","handle":"itinerary-travel-plan-schedule-events","url":"https://wellknown.network/agents/itinerary-travel-plan-schedule-events","links":{"self":"https://wellknown.network/agents/itinerary-travel-plan-schedule-events/record.json","html":"https://wellknown.network/agents/itinerary-travel-plan-schedule-events","markdown":"https://wellknown.network/agents/itinerary-travel-plan-schedule-events/record.md","api":"https://wellknown.network/api/v1/agents/itinerary-travel-plan-schedule-events","status":"https://wellknown.network/api/v1/agents/itinerary-travel-plan-schedule-events/status","claim":"https://wellknown.network/agents/itinerary-travel-plan-schedule-events/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/itinerary-travel-plan-schedule-events/claim.json","badge":"https://wellknown.network/agents/itinerary-travel-plan-schedule-events/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/itinerary-travel-plan-schedule-events/history","tools":"https://wellknown.network/api/v1/agents/itinerary-travel-plan-schedule-events/tools"},"ard":{"identifier":"urn:air:mcp.zovo.one:server:itinerary-travel-plan-schedule-events","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"itinerary-travel-plan-schedule-events","summary":"Trip itinerary planner: events, free-busy, double bookings, schedule export.","description":"Trip itinerary planner: events, free-busy, double bookings, schedule export.","publisher":{"name":"theluckystrike","url":null},"homepage":"https://mcp.zovo.one/s/calendar","repository":"https://github.com/theluckystrike/mcp-servers","version":"0.22.1","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://mcp.zovo.one/mcp/itinerary-travel-plan-schedule-events","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-09-23T10:08:59.265128Z","publishedAt":"2026-09-23T10:08:59.265128Z","registryName":"io.github.theluckystrike/itinerary-travel-plan-schedule-events"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"productivity.calendar","name":"Calendar & Scheduling","confidence":1,"provenance":"derived"},{"slug":"commerce.travel","name":"Travel & Booking","confidence":1,"provenance":"derived"},{"slug":"analytics.product","name":"Product Analytics","confidence":1,"provenance":"derived"},{"slug":"automation.scheduling","name":"Scheduling & Cron","confidence":0.54,"provenance":"derived"},{"slug":"commerce.payments","name":"Payments","confidence":0.525,"provenance":"derived"}],"categories":["analytics","automation","commerce","productivity"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 6h ago.","lastOkAt":"2026-10-13T05:28:51.115Z","lastProbedAt":"2026-10-13T05:28:51.115Z","statusComputedAt":"2026-10-13T05:30:19.510Z","reliability30d":{"probes":68,"successRate":1,"p50Ms":169,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":68,"ok":68,"authBoundaryOk":0,"serviceOk":68,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-13T05:28:51.115Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":472,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-12T22:26:13.215Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":22,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-12T15:40:03.030Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":43,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-12T08:27:57.249Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":522,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-12T02:24:08.631Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":48,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-11T19:23:35.895Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":40,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-11T12:26:34.652Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":528,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-11T05:25:08.772Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":58,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T22:22:04.252Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":399,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T15:31:41.770Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":61,"error":null,"detail":{"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"toolCount":12,"toolsHash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","serverName":"mcp-calendar","capabilities":["tools","resources","prompts"],"serverVersion":"0.22.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"license_status","description":"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 fr"},{"name":"license_activate","description":"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 "},{"name":"ics_import","description":"Call this tool to read a calendar export and keep it under a name. Give path (.ics file), text (contents), or url (public .ics/webcal feed; Pro). Google, Apple,"},{"name":"calendars_list","description":"List imported calendars: name, event-definition count, size, source, import time and free-tier use of the 2 slots. It also names stored .ics files with no calen"},{"name":"events_list","description":"Every event between two dates, recurring expanded to occurrences, sorted by start. Times shown in your zone (profile's, else this machine's) unless zone passed."},{"name":"events_search","description":"Find events whose title, description, location or attendees contain a phrase. Searches every imported calendar. Without from/to it looks a year back and a year "},{"name":"free_busy","description":"Merged busy blocks and the free gaps inside your working hours over a day range. Events marked free do not count; whole-day events block the day. Free: 31 days."},{"name":"conflicts","description":"Find double bookings: every PAIR of timed events that overlap, with the minutes they collide, across all calendars unless you name one. Whole-day events are rep"},{"name":"next_event","description":"The first event not yet started, within the next 366 days, across every imported calendar or one you name. Returns title, times in your zone, how long until it "},{"name":"event_export","description":"Call this tool to write chosen events to a new .ics file you can send or import elsewhere. Pass either ids (from events_list) or a from/to window. Times are wri"},{"name":"event_to_time_entry","description":"Take one event and return the exact arguments for the time-tracker's entry_add, so a meeting that already happened becomes billable time without retyping it. Wr"},{"name":"ics_forget","description":"Remove one imported calendar by name and delete this server's local copy of its .ics, freeing a slot. Your own calendar and the source file are untouched. ics_i"}],"package":null,"toolSurface":{"id":"ts_rhg64wq62gv4","endpointId":"ep_gcpmk4y9mhpz","hash":"814857dca763a5e4b7001478dd08554b374f979ecf5d0b964bda6b4d61ef7fdb","toolCount":12,"serverName":"mcp-calendar","serverVersion":"0.22.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-24T20:25:28.579Z","lastSeenAt":"2026-10-13T05:28:51.120Z","observations":68,"toolNames":["license_status","license_activate","ics_import","calendars_list","events_list","events_search","free_busy","conflicts","next_event","event_export","event_to_time_entry","ics_forget"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_gcpmk4y9mhpz","url":"https://mcp.zovo.one/mcp/itinerary-travel-plan-schedule-events","type":"mcp_streamable_http","factsCheckedAt":"2026-10-07T18:25:38.875Z","auth":{"observedAt":"2026-10-07T18:25:38.895Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-07T18:25:38.920Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"zovo.one","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-02T11:46:26.000Z","validTo":"2026-12-01T12:46:23.000Z","daysToExpiry":49,"sanCount":3,"fingerprint256":"FD:F0:11:46:31:B4:29:D1:FF:93:E6:BE:99:E7:CC:1E:89:33:FB:81:22:BC:F5:79:08:63:74:B5:CB:00:C6:02"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.theluckystrike/itinerary-travel-plan-schedule-events","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.theluckystrike%2Fitinerary-travel-plan-schedule-events","firstSeenAt":"2026-09-24T20:19:21.815Z","fetchedAt":"2026-10-11T09:22:33.633Z","normalizedAt":"2026-10-11T09:22:33.633Z"}]},"firstSeenAt":"2026-09-24T20:19:21.815Z","updatedAt":"2026-10-13T05:31:27.074Z"}