{
  "slug": "calendar-maker",
  "mcpServerUrl": "https://plugins-worker.demos.42a.ai/calendar-maker/mcp",
  "interface": {
    "displayName": "Handy Calendar Event Maker",
    "shortDescription": "Dates to a calendar file",
    "longDescription": "Turn a list of dates into calendar events you can import in one click: a syllabus, a shift schedule, a class timetable, deadlines with reminders.\n\nPaste or upload your schedule (a syllabus PDF, a screenshot of your shifts, a list of deadlines) and ask \"add these to my calendar\". Each event gets the right date, start and end time in your time zone (or all day), location, notes and reminders such as 1 day before each deadline. Repeating events become proper calendar series: \"class every Monday and Wednesday 10 to 11:15 until December 12, except Thanksgiving week\", \"rent on the 1st of every month\", \"team meeting on the first Tuesday\". Overnight shifts, end-before-start mistakes, dates in the past and duplicates are flagged before you import.\n\nYou get one .ics file for Apple Calendar, Google Calendar and Outlook with up to 200 events, plus Google Calendar links for single events. The card lists everything by month with counts. Nothing is stored.",
    "category": "Productivity",
    "defaultPrompt": [
      "Add my class to my calendar: every Mon and Wed 10:00 to 11:15 until Dec 12, no class Thanksgiving week",
      "Turn these syllabus deadlines into calendar events with a reminder 1 day before each",
      "Make a calendar file for my shifts next week"
    ],
    "capabilities": [
      "Up to 200 events in one .ics file for any calendar app",
      "Repeating events: daily, weekly on chosen days, monthly, yearly",
      "Skip dates for holidays and breaks",
      "Reminders before each event",
      "Flags overnight times, past dates and duplicates",
      "Google Calendar links for single events"
    ],
    "logo": "https://plugins-worker.demos.42a.ai/calendar-maker/icon.svg",
    "websiteURL": "https://plugins-worker.demos.42a.ai/calendar-maker/",
    "supportURL": "https://plugins-worker.demos.42a.ai/support",
    "privacyPolicyURL": "https://plugins-worker.demos.42a.ai/privacy",
    "termsOfServiceURL": "https://plugins-worker.demos.42a.ai/terms",
    "developerName": "42a"
  },
  "keywords": [
    "add to my calendar",
    "create calendar events",
    "syllabus to calendar",
    "make an ics file",
    "shift schedule to calendar",
    "recurring event every monday",
    "import events into google calendar",
    "remind me before each deadline"
  ],
  "tools": [
    {
      "name": "create_calendar_events",
      "title": "Create calendar events",
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "openWorldHint": false
      }
    }
  ],
  "dataSources": [],
  "review": {
    "positiveTestCases": [
      {
        "description": "A weekly class with a break",
        "prompt": "Add my BIO 101 lecture to my calendar: every Monday and Wednesday 10:00 to 11:15 starting Oct 5 until Dec 12, room SCI 204. No class Thanksgiving week (Nov 23 and 25). I'm in Chicago.",
        "tools_triggered": [
          "create_calendar_events"
        ],
        "expected_behavior": "One weekly series with 18 dates (8 in October, 7 in November, 3 in December), RRULE FREQ=WEEKLY;BYDAY=MO,WE;UNTIL=20261213T055959Z and two skipped dates; .ics download."
      },
      {
        "description": "Syllabus deadlines with reminders",
        "prompt": "Here is my syllabus. Put the deadlines and exams in my calendar and remind me 1 day before each: Essay 1 due Oct 16, midterm Oct 28 2-3:30pm, proposal due Nov 6, Essay 2 due Nov 20, final project Dec 4, final exam Dec 14 9-11am.",
        "tools_triggered": [
          "create_calendar_events"
        ],
        "expected_behavior": "6 events, 2 per month from October to December, each with a 1-day reminder, in one .ics plus Google Calendar links."
      },
      {
        "description": "A shift schedule with a night shift",
        "prompt": "Add my shifts to my calendar: Mon Oct 5 7am-3pm, Tue Oct 6 3pm-11pm, Thu Oct 8 11pm-7am. I work at Mercy Hospital in Denver.",
        "tools_triggered": [
          "create_calendar_events"
        ],
        "expected_behavior": "3 events; the night shift is read as ending at 7:00 AM on Fri, Oct 9, with a note."
      },
      {
        "description": "One appointment with a Google Calendar link",
        "prompt": "Make a calendar invite for my dentist appointment on October 14 at 3:30 PM, 45 minutes, at 12 Main St. I'm in New York.",
        "tools_triggered": [
          "create_calendar_events"
        ],
        "expected_behavior": "One event 3:30-4:15 PM EDT (19:30-20:15 UTC) with a 1-hour reminder; .ics and a Google Calendar link."
      },
      {
        "description": "A monthly all-day reminder",
        "prompt": "Remind me that rent is due on the 1st of every month for the next 12 months, 3 days before.",
        "tools_triggered": [
          "create_calendar_events"
        ],
        "expected_behavior": "One all-day monthly series of 12 dates from Nov 1, 2026 to Oct 1, 2027 with a 3-day reminder."
      }
    ],
    "negativeTestCases": [
      {
        "prompt": "What meetings do I have tomorrow?",
        "expected_behavior": "Does not call Handy Calendar Event Maker: Reading the user's existing calendar needs a calendar connection; this plugin only creates files."
      },
      {
        "prompt": "What time is 2 PM London in Los Angeles?",
        "expected_behavior": "Does not call Handy Calendar Event Maker: A time-zone conversion, not creating events."
      },
      {
        "prompt": "How many weeks are left in the semester if it ends December 12?",
        "expected_behavior": "Does not call Handy Calendar Event Maker: Counting days between dates, not making calendar events."
      }
    ]
  }
}