Skill

outlook-calendar

The first Outlook calendar CLI built for AI agents on personal Microsoft 365 accounts — with offline conflict...

Verified: 2026-05-13 (printing-press-ingest-2026-05-13+enrich-capability-skill)

When to use outlook-calendar

Choose if

You're scheduling, prepping, or auditing meetings against a personal Microsoft 365 Outlook calendar from an agent loop — finding overlapping events across calendars, computing N-minute gaps in working hours, tracking what changed since last sync, surfacing pending RSVPs, validating timezone rendering, generating meeting-prep briefings. Local SQLite mirror makes repeated queries cheap. Pick this over Microsoft Graph API direct calls when the agent needs many calendar questions answered in one session.

Avoid if

The user is on an enterprise/work Microsoft 365 account where the `availability` schedule call is fully featured (use Graph directly), or you need Google Calendar (different tool) or non-Outlook personal calendars. Also avoid for high-stakes timezone-sensitive scheduling unless the agent re-verifies — the README admits timezone misrender edge cases in --json output.

Risk Flags

  • MEDIUM auth OAuth device-code flow with a ~15-minute polling window for first auth. Tokens expire after idle periods — the README documents "401 on /me/events after a long idle" as expected behavior requiring refresh.
  • MEDIUM scope Personal Microsoft 365 accounts only; the `availability` / getSchedule command is degraded on personal accounts (use `freetime` against synced local calendars instead). Some enterprise/work-account features are not covered.
  • MEDIUM data_quality Timezone misrendering can occur in --json output, and organizer-side reschedules can silently shift events causing Teams calls to render at wrong hours — agents must verify timezone explicitly before surfacing times to users.
  • LOW runtime Default install needs Node.js (npx); pre-built binaries available for non-Node environments. Local SQLite store required for unique offline features — Graph API alone is insufficient.

Cost

Type: Free · Free tier: The CLI binary is free. The user's existing Microsoft 365 account provides Graph API access at no marginal cost; no additional subscription required beyond M365.

Install

Default

npx -y @mvanhorn/printing-press install outlook-calendar

Estimated time to first success: ~10 min

Dependencies

Minimum runtime: Node.js 18+ (or pre-built binary)

Distribution

Repository
https://github.com/mvanhorn/printing-press-library