Your Daily 1% Better at AI

Your Daily 1% Better at AI

[Day 3 of 30] Your PMS Can See Your Calendar - Here's How to Connect It in 10 Min

Roman Matsukatov's avatar
Roman Matsukatov
Mar 02, 2026
∙ Paid

The situation

On Day 1 you set up your personal management system: one place (Cursor or Claude Code), an inbox, a vault structure, and the triage skill.

On Day 2 you added skills that give the system memory: triage (urgent / project / reference) and convert-to-markdown, so the same rules run every time and your content stays in a format the system can work with. So far everything lives in files.

The next step is to plug in live data from the outside, so your PMS can use it without you copying and pasting. That is what an MCP server does. We add one for the calendar first, so your existing skills and workflows get real context: today’s events, next meeting, attendees. Triage can consider what’s on your calendar; daily planning and meeting prep run inside the same knowledge base with real data.

This post continues the 1% Better series. If you have not read the first two posts, you can find them here starting from Day 1.

The 1% upgrade

What an MCP server is

MCP stands for Model Context Protocol. It’s an open standard that lets your AI environment talk to external data and tools in a structured way. Think of it as a small adapter: one MCP server does one job (calendar, email, task list, CRM). It runs alongside your project; when the AI or a skill needs data, it calls a tool (e.g. “get today’s events”), the server talks to Google Calendar or Apple Calendar, returns structured data, and the AI uses it in the same chat where your vault and skills live. So your PMS stays one place, but it can now read and use live data from the services you already use.

Why add a calendar MCP next

Calendar fits naturally with what you already have. Your triage skill sorts what lands in the inbox. With a calendar MCP, the system can also see what’s on today and who’s in the next meeting. You don’t paste events into a note anymore. When you run triage or plan your day, the AI has real events and attendees in context. Same skills, same vault, upgraded with one live data source. Later you can add more MCPs (email, tasks) the same way.

How to add a calendar MCP (pick one path)

Path A: You use Apple Calendar (including Google in Calendar.app)

If your Mac already has your Google account in System Settings > Internet Accounts and Calendar.app shows your events:

  1. Open MCP settings.

    • Cursor: Open Cursor Settings (menu Cursor → Cursor Settings). In the left sidebar open Tools and MCP. There you’ll see the list of installed MCP servers.

    • Claude Code: Open Settings (e.g. from the app menu). In the left sidebar open Connectors. The list of MCP servers is there.

  2. Enable or add the Calendar MCP that reads from Calendar.app.

    • If it’s already in the MCP Servers list (e.g. “Calendar” or “calendar”), turn the toggle on.

    • If it’s not there: open a new chat, paste this link and the prompt below so the AI knows which MCP to add:

      Link: https://www.npmjs.com/package/mcp-apple-calendars

      “I use Calendar.app on Mac. Please add this Calendar MCP to my MCP config so I can ask about my calendar and meetings.”

      Send it. The AI will use the repo (or its README) to add the right config. Then restart the app, open Tools and MCP (Cursor) or Connectors (Claude Code) again, find the new Calendar server in the list, and turn it on. No API keys; it uses the calendar already on your Mac.

  3. Done. Your AI can now ask Calendar.app for today’s events and attendees.

Path B: Google Calendar only in the AI tool (no Mac integration)

If you prefer not to add Google to your Mac, use a Google Calendar MCP that talks to Google directly. Do these steps in order - each tells you exactly where to go and what to click.

Step 1. Open Google Cloud Console and create a project

  • Go to: https://console.cloud.google.com/

  • Sign in with the Google account that has the calendar you want.

  • At the top of the page, click the project name (or “Select a project”).

  • Click “New Project”.

  • Enter a name (e.g. My Calendar MCP), click “Create”.

  • Wait until the project is created, then select it from the project list if it’s not already selected.

Step 2. Turn on Google Calendar API

  • In the left sidebar, click “APIs & Services” → “Library”.
    Or open: https://console.cloud.google.com/apis/library

  • In the search box, type Google Calendar API and press Enter.

  • Click the “Google Calendar API” card.

  • On that page, click “Enable”.

  • Wait until you see something like “API enabled”.

Step 3. Set up the OAuth consent screen (one-time per project)

Google sends you to the Google Auth Platform - here’s what you’ll see and what to do, step by step.

  • Open the Auth overview: Go to https://console.cloud.google.com/auth/overview and make sure your project is selected in the top bar (the URL will look like ?project=your-project-id).
    You can also get here by enabling the Calendar API and then following a link like “OAuth consent screen” or “Set up consent screen” from the API or credentials area - Google will redirect you to this same Auth overview.

  • What you see: You land on the “OAuth Overview” page (breadcrumb: Google Auth Platform / Overview). In the middle of the page it says “Google Auth Platform not configured yet” and there’s a blue button: “Get started”.
    This is the confusing bit: you’re in the right place, but you have to click that button to actually start configuring. There is no separate “Configure consent screen” link to hunt for - just Get started.

  • Click “Get started”. The wizard (or next screen) will ask you to set up the consent screen. Then:

  • User type: For a personal Gmail account you’ll usually see only External (Internal is for Google Workspace). Choose External, then Create or Next.

  • App details: Fill the required fields: App name (e.g. Calendar MCP), User support email (your email), Developer contact (your email). Click Save and Continue.

  • Test users (important): For External apps you must add yourself as a test user so you can sign in before the app is published. Test users are set on the Audience page - after the consent screen is configured. In the left sidebar under Google Auth Platform click Audience. On that page click “+ Add users”, enter your own Gmail address, save. Without this, Google won’t let you sign in to your own app in testing mode.

After that, you can go back to the main Cloud Console to create the OAuth client (Step 4).

Step 4. Create OAuth 2.0 credentials (Desktop app) and download the JSON

  • In the left sidebar: “APIs & Services” → “Credentials”.
    Or: https://console.cloud.google.com/apis/credentials

  • At the top, click “+ Create Credentials” → “OAuth client ID”.

  • Application type: choose “Desktop app”.

  • Name: e.g. Calendar MCP Desktop. Click “Create”.

  • In the popup, click “Download JSON”. A JSON file will download. Rename it to credentials.json.

  • Move or copy it to your project folder (e.g. the same folder where your vault or MCP config lives), or to a folder you’ll remember. You’ll need this file in the next steps.

Step 5. Install dependencies for the Google Calendar MCP

  • Open a terminal: in Cursor use Terminal → New Terminal; in Claude Code there is no built-in terminal - run bash commands directly (e.g. ! followed by the command, or use the app’s “Execute bash command” action).

  • Copy the path to the folder where your project lives (e.g. in Cursor: hold Option, right‑click the folder in the sidebar → Copy Path; in Finder/Explorer copy the folder path). Replace the path in the command below and run:

cd /path/to/your/project
pip install -r requirements-google-calendar.txt

Step 6. Add the Google Calendar MCP to your app’s MCP config

In a new chat, ask the agent (in Cursor or Claude Code):

“Add the Google Calendar MCP to my MCP config. I have credentials.json at [path to the folder].”

The agent will open the config file, insert the server entry, and save. Then restart the app so it loads the new MCP.

Step 7. First run and sign-in

  • Restart Cursor (or Claude) fully so it loads the new MCP.

  • Open Tools and MCP (Cursor) or Connectors (Claude Code) and make sure the Google Calendar server is on.

  • In a new chat, ask something like: “What’s on my Google Calendar today?”

  • A browser window will open and ask you to sign in to Google and allow access. Sign in and click Allow.

  • After that, the token is saved; you won’t need to sign in again unless you revoke access or the token expires.

Step 8. Use it

  • The AI can now use your calendar and show your real events. Ask “What’s on my calendar today?” or “Who’s in my next meeting?” to confirm.

Takeaway

An MCP server is an adapter that plugs one external source (calendar, email, tasks) into your PMS. Add a calendar MCP and your system gains live events and attendees; your triage and planning skills can use that context without you pasting it. Same place, same skills, better experience. You can add more MCPs later the same way.

10-minute action

  1. Decide: Path A (Calendar.app) or Path B (Google Calendar MCP).

  2. Do the steps for that path. For Path A, enable the Calendar MCP in Cursor or Claude Code. For Path B, create the OAuth client, install deps, add the MCP config, and sign in once.

  3. In a new chat, check that the MCP works:

Copy-paste:

What’s on my calendar today?

or

Who’s in my next meeting?

If the answer matches your real calendar, the MCP is working.

  1. Use it with your existing setup. In the same project, run your triage skill and ask the AI to factor in today’s calendar when suggesting what to do first. Or ask for a short daily plan that uses both your inbox and your real events. That is the upgrade: same vault, same skills, now with live calendar context.

What to do next

Reply with what you connected first (calendar, email, or something else). I’ll use that to shape the next mini products.

Keep reading with a 7-day free trial

Subscribe to Your Daily 1% Better at AI to keep reading this post and get 7 days of free access to the full post archives.

Already a paid subscriber? Sign in
© 2026 Roman Matsukatov · Privacy ∙ Terms ∙ Collection notice
Start your SubstackGet the app
Substack is the home for great culture