connector-calendar

Category: Coding Risk: High risk ★ 3.9 · Rating 3.9/5 (8) sboghossian/mini-claude-for-legal MIT

Rating is derived from the repo's GitHub stars and shown for reference.

network_accessfilesystem_accesscredential_accessautomation_control

name: connector-calendar
description: Use when a user wants to read, create, or manage calendar events in the context of legal-matter workflows — scheduling hearings, blocking deadline time, creating client appointments, or surfacing upcoming events as deadline context for drafting. Supports Google Calendar, Microsoft Outlook/Exchange Calendar, and iCal. Triggers on requests to schedule, block, or review upcoming events and on any request that requires inserting a known legal deadline into the calendar.
license: MIT
metadata:
id: connector.calendar
category: connector
jurisdictions: [multi]
priority: P2
intent: [connector]
related: [connector-gmail, connector-google-drive, connector-apple-notes, connector-scheduled-tasks]
source: Louis — HAQQ Legal AI (github.com/sboghossian/mini-claude-for-legal)
version: "1.0"

Connector — Calendar

What it does

The Calendar connector integrates with the user's calendar system to support legal-workflow scheduling: reading upcoming events for context, creating events for hearings or deadlines, blocking deep-work time, and surfacing calendar data when calculating limitation periods or procedural deadlines.

This connector is calendar-provider agnostic. The three supported providers are:

Provider Protocol Notes
Google Calendar Google Calendar API v3 Most common in MENA startups and SME firms
Microsoft Outlook / Exchange Microsoft Graph API Dominant in large law firms and enterprise in-house teams
Apple iCal CalDAV Less common; works for solo practitioners on macOS

Setup / auth

Google Calendar

  • OAuth 2.0 authorization via Google account.
  • Scopes required: calendar.readonly (for read) + calendar.events (for write).
  • Per-user delegation: each lawyer authorizes their own calendar; no admin-wide delegation unless the firm has Google Workspace with domain-wide delegation explicitly configured.

Microsoft Outlook / Exchange

  • OAuth 2.0 via Microsoft Identity Platform (Azure AD).
  • Scopes: Calendars.Read + Calendars.ReadWrite for event creation.
  • Supports both personal Microsoft accounts and Microsoft 365 work accounts.
  • For large firms on Exchange on-premise: requires Exchange Web Services (EWS) connector — contact IT for service account credentials.

Apple iCal

  • CalDAV endpoint; credentials are the user's Apple ID (iCloud account) or the firm's CalDAV server address.
  • No dedicated OAuth flow — uses application-specific password or SSO.

All auth tokens are stored per-user (never shared across tenant), encrypted at rest, and scoped to the minimum necessary permissions.

Capabilities

Capability Supported
List upcoming events (next N days) Yes
Search events by keyword / matter reference Yes
Create a new event with attendees Yes
Update an existing event (reschedule, add notes) Yes
Delete an event Yes (with confirmation)
Block time as "Focus / Deep Work" Yes
Add a legal deadline as a calendar entry with reminder Yes
Surface today's schedule as context Yes
Detect scheduling conflicts before booking Yes

Usage patterns

Pattern 1 — Create a hearing entry from a court notice

User: "Add the DIFC Court CMC on 3 June at 10am to my calendar"
→ Connector creates event: "DIFC CMC — Al-Hassan v. TechCo"
  Date: 3 June, 10:00 GST (UTC+4)
  Reminder: 24h before + 1h before
  Description: matter reference number

Pattern 2 — Block deadline prep time

When a filing deadline is identified (e.g., statement of claim due 15 June):

  • Create a "Deadline: SoC filing — Al-Hassan" event on 15 June.
  • Create a 3-day "SoC drafting block" event from 12–14 June (deep-work, marked Busy).
  • Remind the user 7 days before the deadline.

Pattern 3 — Surface today's schedule as context before drafting

User: "What's on today?"
→ Connector returns today's events with titles, times, and matter tags
→ Assistant uses this to orient scheduling suggestions

Pattern 4 — Calculate and insert a limitation date

Given a cause of action date (e.g., breach occurred 1 March 2024):

  • Assistant calculates the limitation period under applicable law (e.g., 3 years under UAE Civil Transactions Law, 6 years under DIFC Contract Law).
  • Connector creates a calendar reminder: "Limitation deadline — [Matter]" on the calculated expiry date.
  • Reminder set at 6 months, 3 months, and 1 month before.

Important: limitation period calculations must be confirmed by the lawyer. The connector inserts the event as a reminder, not a legal opinion.

Jurisdictional limitation periods vary significantly across the practice areas most relevant to MENA users:

Jurisdiction Contract claims Tort claims Employment claims
UAE (onshore) 15 years (Civil Transactions Law) 3 years 1 year
DIFC 6 years (DIFC Contract Law) 3 years 6 months (DIFC Employment Law)
ADGM 6 years (English Limitation Act applied) 6 years 6 months (ADGM Employment Reg.)
Lebanon 10 years (Code des Obligations et Contrats) 3 years 1 year
KSA No formal statute of limitations; governed by shari'a principles; 5-year administrative prescription in practice 1 year (Labor Law)
UK 6 years (Limitation Act 1980) 3 years (personal injury) / 6 years (general) 3 months (Employment Tribunal)
France 5 years (Code Civil) 5 years 2 years (Labor Court)

These figures are guidance only. Always verify against current legislation and any contract-specific limitation clauses.

Permissions & safety

  • Minimum scope: request only the scopes needed. For read-only use cases (surfacing context), request calendar.readonly only.
  • Event content: calendar event titles and descriptions may contain client names and matter references. Treat as confidential.
  • No broadcasting: do not create events on behalf of counterparties or external attendees without explicit user confirmation.
  • Deletion requires confirmation: any delete or cancel operation must present the event details to the user and require an explicit "Yes, cancel this" before proceeding.
  • Audit log: all create/update/delete operations logged with user ID and timestamp.

Failure modes

Failure Cause Resolution
Auth expired OAuth token rotated or revoked Prompt user to re-authorize
Time-zone mismatch User's calendar is in a different zone than the hearing Confirm time zone explicitly before creating hearing events (GST / CET / BST)
Attendee invite bounced Incorrect email address for invitee Flag to user; do not retry silently
Recurring event confusion Event is part of a recurring series Warn user before modifying; ask "this event only" vs "all future events"
Exchange EWS timeout Large firm Exchange server slow Retry with exponential backoff; alert user if unavailable >60s
  • [[connector-gmail]]
  • [[connector-google-drive]]
  • [[connector-apple-notes]]
  • [[connector-scheduled-tasks]]