{"name":"io.github.theluckystrike/calendar-invite","slug":"theluckystrike-calendar-invite","title":"InviteKit Calendar Files","description":".ics files & calendar links","url":"https://mcp.market/server/theluckystrike-calendar-invite","rating":null,"grade":"C","score":67,"certified":false,"status":"active","category":"productivity","tags":["productivity"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T07:30:52.955Z","last_ok_at":"2026-11-04T07:30:52.955Z","latency_ms":145},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://calendar-invite.zovo.one/","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://calendar-invite.zovo.one/mcp"}],"packages":[],"tools":[{"name":"generate_calendar_event","description":"Use this when the user wants a calendar invite, an .ics file, or an add-to-calendar link (Google Calendar, Outlook, Office 365, Yahoo) for one event or one repeating event: a webinar, class, meeting, party, deadline, or launch. Takes the title, local start/end and the event's time zone (city or IANA zone), or dates only for all-day events, plus optional location, description, link, organizer name, reminders, and a repeat rule (daily, weekly on chosen weekdays, monthly by date, nth weekday such as the last Friday, or the first/last weekday of the month, yearly; with count, until date, and skipped dates). Returns a downloadable RFC 5545 .ics file with time zone data, four add-to-calendar links, and the first 5 dates in the event's zone and optional attendee zones, with daylight saving changes flagged. Does not send invitations, read or change anyone's calendar, or track RSVPs. Do not use for a list of different sessions (use generate_event_series) or for finding a meeting time across zones.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"title":{"type":"string","maxLength":200,"description":"Event title, e.g. Product launch webinar."},"start":{"type":"string","maxLength":40,"description":"Local start YYYY-MM-DDTHH:MM in the event's time zone, e.g. 2026-11-05T18:30, or a date YYYY-MM-DD for an all-day event. No UTC offset."},"end":{"description":"Local end YYYY-MM-DDTHH:MM, or just a time HH:MM on the start day, e.g. 21:00. For all-day events, the last day YYYY-MM-DD (inclusive). Default: 1 hour, or 1 day for all-day.","type":"string","maxLength":40},"duration_minutes":{"description":"Length in minutes instead of end, e.g. 90.","type":"integer","minimum":1,"maximum":20160},"all_day":{"description":"true for an all-day event (dates only), e.g. a conference day or a deadline. Automatic when start has no time.","type":"boolean"},"location":{"description":"Venue, address, or meeting room shown in the calendar, e.g. Pier 39, San Francisco.","type":"string","maxLength":300},"description":{"description":"Event details or agenda (plain text; line breaks allowed), e.g. Bring a laptop.","type":"string","maxLength":1500},"url":{"description":"Optional event page or video-call link, e.g. https://example.com/webinar.","type":"string","maxLength":500},"organizer_name":{"description":"Optional organizer name shown in the details, e.g. Acme Events. No email needed.","type":"string","maxLength":100},"reminders_minutes_before":{"description":"Up to 3 reminders in minutes before the start, e.g. [15, 1440] for 15 minutes and 1 day before.","maxItems":3,"type":"array","items":{"type":"integer","minimum":0,"maximum":40320}},"time_zone":{"description":"Time zone of the start/end: IANA zone (Europe/Warsaw), city (Chicago, Sydney), or UTC. Required for timed events; not used for all-day events.","type":"string","maxLength":80},"recurrence":{"description":"Optional repeat rule, e.g. {\"frequency\":\"weekly\",\"weekdays\":[\"TU\",\"TH\"],\"count\":10}.","type":"object","properties":{"frequency":{"type":"string","enum":["daily","weekly","monthly","yearly"],"description":"How often it repeats, e.g. weekly."},"interval":{"description":"Repeat every N days/weeks/months/years, e.g. 2 for every other week. Default 1.","type":"integer","minimum":1,"maximum":99},"weekdays":{"description":"Weekly: the days it repeats on, e.g. [\"TU\",\"TH\"] (default: the start's weekday). Monthly/yearly with nth_weekday: one weekday, e.g. [\"TU\"], or several with nth to pick from the set, e.g. [\"MO\",\"TU\",\"WE\",\"TH\",\"FR\"] with nth -1 for the last weekday of the month.","maxItems":7,"type":"array","items":{"type":"string","maxLength":12}},"monthly_on":{"description":"Monthly/yearly: day_of_month (same date, e.g. the 15th; default) or nth_weekday (e.g. the second Tuesday or the last Friday).","type":"string","enum":["day_of_month","nth_weekday"]},"nth":{"description":"With nth_weekday: 1-5, or -1 for the last, e.g. 2 for the second Tuesday. Default: the start date's position in its month.","type":"integer","minimum":-1,"maximum":5},"count":{"description":"Total number of dates in the pattern, e.g. 10. Do not combine with until.","type":"integer","minimum":1,"maximum":1000},"until":{"description":"Last possible date YYYY-MM-DD (inclusive), e.g. 2027-06-30. Leave out count and until for no end date.","type":"string","maxLength":10},"exceptions":{"description":"Dates YYYY-MM-DD to skip, e.g. [\"2026-12-24\"]. Each must be a date the pattern produces.","maxItems":60,"type":"array","items":{"type":"string","maxLength":10}}},"required":["frequency"]},"viewer_time_zones":{"description":"Optional places or zones of attendees to show local times for, e.g. [\"New York\", \"Tokyo\"].","maxItems":4,"type":"array","items":{"type":"string","maxLength":80}}},"required":["title","start"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"generate_event_series","description":"Use this when the user wants one calendar file (.ics) that adds several different events at once: a course or class schedule, a training program, a conference agenda, match fixtures, or a list of webinars on irregular dates. Takes 1-40 sessions (each with its own start, end or duration, optional title, location and note) plus a shared time zone, location, details, link, organizer name and reminders. Returns one .ics file with one event per session and a dated list of the sessions. Does not make add-to-calendar web links per session, send invitations, or change anyone's calendar. Do not use for an event that repeats on a regular pattern (use generate_calendar_event with recurrence).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"calendar_name":{"description":"Name for the schedule, e.g. Spanish A1 evening course. Shown as the calendar name and default title.","type":"string","maxLength":100},"time_zone":{"description":"Time zone for all sessions: IANA zone or city, e.g. America/Chicago. Required when sessions have times.","type":"string","maxLength":80},"events":{"minItems":1,"maxItems":40,"type":"array","items":{"type":"object","properties":{"title":{"description":"Session title, e.g. Week 1: Introduction. Default: calendar_name with the session number.","type":"string","maxLength":200},"start":{"type":"string","maxLength":40,"description":"Local start YYYY-MM-DDTHH:MM, e.g. 2027-01-12T18:00, or YYYY-MM-DD for all-day."},"end":{"description":"Local end time HH:MM or YYYY-MM-DDTHH:MM, e.g. 19:30. All-day: last day YYYY-MM-DD.","type":"string","maxLength":40},"duration_minutes":{"description":"Length in minutes instead of end, e.g. 90.","type":"integer","minimum":1,"maximum":20160},"all_day":{"description":"true for a date-only event, e.g. an exam day.","type":"boolean"},"location":{"description":"Location for this session if it differs, e.g. Room 204.","type":"string","maxLength":300},"description":{"description":"Short note for this session, e.g. Quiz on chapter 3.","type":"string","maxLength":300}},"required":["start"]},"description":"1-40 distinct sessions with their own dates, e.g. [{\"title\":\"Week 1\",\"start\":\"2027-01-12T18:00\",\"end\":\"19:30\"}]."},"location":{"description":"Default location for every session, e.g. Community Center, Room 2.","type":"string","maxLength":300},"description":{"description":"Shared details added to every session, e.g. Bring your workbook.","type":"string","maxLength":600},"url":{"description":"Optional shared link, e.g. a course page or video-call link: https://example.com/course.","type":"string","maxLength":500},"organizer_name":{"description":"Optional organizer or teacher name, e.g. Ms. Rivera.","type":"string","maxLength":100},"reminders_minutes_before":{"description":"Up to 3 reminders for every session, minutes before, e.g. [60].","maxItems":3,"type":"array","items":{"type":"integer","minimum":0,"maximum":40320}}},"required":["events"],"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":67,"grade":"C","scanned_at":"2026-10-25T16:30:58.869Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-25T16:30:58.841Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 704ms"]},"poisoning":{"score":15,"max":15,"notes":["2 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://calendar-invite.zovo.one/mcp","reachable":true,"authRequired":false,"latencyMs":704,"serverInfo":{"name":"calendar-invite","version":"1.0.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://calendar-invite.zovo.one/icon.svg","source":"site"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}