Temporal Cortex MCP

SSE

by billylui

836 downloads Not rated yet

About

Temporal Cortex is a Model Context Protocol server that gives AI agents deterministic calendar capabilities — temporal context, datetime resolution, multi-calendar availability merging across Google Calendar, Microsoft Outlook, and CalDAV, and conflict-free booking with Two-Phase

Details

Transport
SSE

Explore

- 18 tools across 5 layers for scheduling.
- Temporal awareness with get_temporal_context and resolve_datetime.
- Atomic booking with Two-Phase Commit to prevent double-booking.
- Computed availability that merges free/busy across multiple calendars.
- Deterministic RRULE expansion handling DST, BYSETPOS, EXDATE, and leap years.
- TOON format for token-efficient calendar data output.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Temporal Cortex MCP
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

The fastest way to get started:

npx @temporal-cortex/cortex-mcp setup

The cortex-mcp setup wizard walks you through provider authentication, timezone configuration, and MCP client setup interactively. See the First Run Guide for a detailed walkthrough.

Or set up manually in 3 steps:

1. Install prerequisites — Node.js 18+ (or Docker) and at least one calendar provider (Google Calendar, Microsoft Outlook, or CalDAV).
2. Add the MCP configuration to your AI client's config file (see client-specific examples below).
3. Run the auth flow — npx @temporal-cortex/cortex-mcp auth google (or outlook / caldav). This authenticates and configures timezone, week start, and telemetry preferences.

SHA256 checksums are published with every GitHub Release and embedded in the npm package as checksums.json for automatic postinstall verification. The postinstall script downloads the platform-specific binary and compares its SHA256 hash against the expected checksum in checksums.json. On mismatch, installation fails with an error — the binary is not installed and the error message includes both the expected and actual hashes.

Verify manually:


sha256sum "$(dirname "$(which cortex-mcp)")/../cortex-mcp" 2>/dev/null || \
  shasum -a 256 "$(npm root -g)/@temporal-cortex/cortex-mcp/bin/cortex-mcp" 2>/dev/null

Build provenance: Binaries are cross-compiled from Rust source in GitHub Actions across 5 platforms (darwin-arm64, darwin-x64, linux-x64, linux-arm64, win32-x64). The computation layer is open source at temporal-cortex/core.

Docker containment: For maximum isolation, run the MCP server in a container:

docker build -t cortex-mcp https://github.com/temporal-cortex/mcp.git
docker run --rm -i -v ~/.config/temporal-cortex:/root/.config/temporal-cortex cortex-mcp

No Node.js on the host, no direct filesystem access beyond the mounted config directory.

| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| GOOGLE_CLIENT_ID | For Google | — | Google OAuth Client ID from Cloud Console |
| GOOGLE_CLIENT_SECRET | For Google | — | Google OAuth Client Secret |
| GOOGLE_OAUTH_CREDENTIALS | No | — | Path to Google OAuth JSON credentials file (alternative to CLIENT_ID + CLIENT_SECRET) |
| MICROSOFT_CLIENT_ID | For Outlook | — | Azure AD application (client) ID for Outlook calendar access |
| MICROSOFT_CLIENT_SECRET | For Outlook | — | Azure AD client secret for Outlook calendar access |
| TIMEZONE | No | auto-detected | IANA timezone override (e.g., America/New_York). Overrides stored config and OS detection. |
| WEEK_START | No | monday | Week start day: monday (ISO 8601) or sunday. Affects "start of week", "next week", etc. |
| REDIS_URLS | No | — | Comma-separated Redis URLs for distributed locking within Platform Mode. Optional — falls back to in-memory locking if not set. |
| TENANT_ID | No | auto-generated | UUID for tenant isolation |
| LOCK_TTL_SECS | No | 30 | Lock time-to-live in seconds |
| OAUTH_REDIRECT_PORT | No | 8085 | Port for the local OAuth callback server |
| HTTP_PORT | No | — | Port for HTTP transport. When set, enables streamable HTTP mode instead of stdio. |
| HTTP_HOST | No | 127.0.0.1 | Bind address for HTTP transport. Use 0.0.0.0 only behind a reverse proxy. |
| ALLOWED_ORIGINS | No | — | Comma-separated allowed Origin headers for HTTP mode (e.g., http://localhost:3000). All cross-origin requests rejected if unset. |

At least one calendar provider must be configured. See the provider setup guides: Google Calendar, Microsoft Outlook, CalDAV (iCloud/Fastmail). For a complete configuration reference, see the Configuration Guide.

get_temporal_context

Get the current temporal context — time, timezone, calendar metadata. Call this first to orient yourself in time before making calendar queries.

resolve_datetime

Resolve a human-readable time expression to an absolute datetime. Supports: 'next Tuesday at 2pm', 'tomorrow morning', '+3h', 'in 2 hours', 'start of next week', RFC 3339 passthrough, and more.

convert_timezone

Convert a datetime to a different timezone.

compute_duration

Compute the duration between two timestamps. Returns days, hours, minutes, seconds, and a human-readable string.

adjust_timestamp

Adjust a timestamp by adding or subtracting a duration. DST-aware: '+1d' preserves wall-clock time across daylight saving transitions.

list_calendars

List all connected calendars across providers. Returns calendar IDs, names, labels, and metadata.

list_events

List calendar events in a time range. Returns events in TOON or JSON format.

find_free_slots

Find available free time slots in a calendar within a time window.

expand_rrule

Expand a recurrence rule (RRULE) into concrete event instances.

check_availability

Check if a calendar time slot is available (not held by another booking).

get_availability

Get unified availability across multiple calendars. Merges events from all specified calendars into a single busy/free view with privacy controls.

book_slot

Book a calendar slot using Two-Phase Commit for safe, conflict-free booking.

Temporal Cortex exposes up to 18 Model Context Protocol tools organized in 5 layers. The 15 core tools are always available; 3 additional Open Scheduling tools are available in Platform Mode.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "temporal cortex mcp": {
            "temporal-cortex": {
                "command": "npx",
                "args": [
                    "-y",
                    "@temporal-cortex/[email protected]"
                ],
                "env": {
                    "GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
                    "GOOGLE_CLIENT_SECRET": "your-client-secret",
                    "TIMEZONE": "America/New_York"
                }
            }
        }
    }
}

McpServers

{
    "temporal-cortex": {
        "command": "npx",
        "args": [
            "-y",
            "@temporal-cortex/[email protected]"
        ],
        "env": {
            "GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
            "GOOGLE_CLIENT_SECRET": "your-client-secret",
            "TIMEZONE": "America/New_York"
        }
    }
}

CI
npm version
npm downloads
Smithery
License: MIT

v0.9.1 · March 2026 · Changelog · Website: temporal-cortex.com

Give any AI agent autonomous scheduling capabilities. Temporal Cortex is open scheduling infrastructure that lets any AI agent schedule reliably — whether the other person has an AI agent or not, uses Google Calendar or Outlook, or responds instantly or days later. 18 tools across 5 layers handle contact resolution, temporal reasoning, cross-provider availability, and atomic booking. Accessible via MCP, A2A, REST, and browser. Powered by Truth Engine. Install: npx @temporal-cortex/cortex-mcp.

<a href="https://insiders.vscode.dev/redirect/mcp/install?name=temporal-cortex-mcp&inputs=%7B%22google_client_id%22%3A%22%22%2C%22google_client_secret%22%3A%22%22%7D&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40temporal-cortex%2Fcortex-mcp%22%5D%2C%22env%22%3A%7B%22GOOGLE_CLIENT_ID%22%3A%22%24%7Binput%3Agoogle_client_id%7D%22%2C%22GOOGLE_CLIENT_SECRET%22%3A%22%24%7Binput%3Agoogle_client_secret%7D%22%7D%7D">Install in VS Code</a>
<a href="https://cursor.com/install-mcp?name=temporal-cortex&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkB0ZW1wb3JhbC1jb3J0ZXgvY29ydGV4LW1jcCJdLCJlbnYiOnsiR09PR0xFX0NMSUVOVF9JRCI6InlvdXItY2xpZW50LWlkLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwiR09PR0xFX0NMSUVOVF9TRUNSRVQiOiJ5b3VyLWNsaWVudC1zZWNyZXQifX0%3D">Install in Cursor</a>

Two ways to use Temporal Cortex

For individuals

Connect your calendars. Your AI agent handles the rest — checking availability, resolving time zones, and booking meetings without double-booking. Works with Claude Desktop, Cursor, OpenClaw, Manus, and any MCP-compatible AI client.

npx @temporal-cortex/cortex-mcp setup

The setup wizard walks you through provider authentication, timezone configuration, and MCP client setup interactively. You'll be scheduling in under a minute.

Or use the managed Platform — no Node.js required. Sign up at app.temporal-cortex.com, connect your calendars via OAuth, and add a single MCP config with your API key.

For developers

Add scheduling to your AI agent or product. 18 tools across 5 layers, 4 protocols (MCP, A2A, REST, Browser), atomic booking with Two-Phase Commit, and deterministic temporal computation powered by Truth Engine.

- Local MCP server: npx @temporal-cortex/cortex-mcp — full tool suite, zero infrastructure
- Platform REST API: app.temporal-cortex.com — managed hosting, API keys, usage dashboard, Open Scheduling network
- Framework integrations: LangGraph, CrewAI, OpenAI Agents SDK
- REST API reference: temporal-cortex.com/docs/rest-api

---

Why do AI agents fail at calendar tasks?

Even the latest LLMs — GPT-5, Claude, Gemini — score below 50% on temporal reasoning tasks (OOLONG benchmark). Earlier models scored as low as 29% on scheduling and 13% on duration calculations (Test of Time, ICLR 2025). Ask "Schedule for next Tuesday at 2pm" and it picks the wrong Tuesday. Ask "Am I free at 3pm?" and it checks the wrong timezone. Then it double-books your calendar.

Most calendar tools for AI agents are thin CRUD wrappers that pass these failures through to a single calendar provider — no temporal awareness, no conflict detection, no safety net.

What makes Temporal Cortex different?

- Temporal awareness — Agents call get_temporal_context to know the actual time and timezone. resolve_datetime turns "next Tuesday at 2pm" into a precise RFC 3339 timestamp. No hallucination.
- Atomic booking — Lock the time slot, verify no conflicts exist, then write. Two agents booking the same 2pm slot? Exactly one succeeds. The other gets a clear error. No double-bookings.
- Computed availability — Merges free/busy data across multiple calendars into a single unified view. The AI sees actual availability, not a raw dump of events to misinterpret.
- Deterministic RRULE expansion — Handles DST transitions, BYSETPOS=-1 (last weekday of month), EXDATE with timezones, leap year recurrences, and INTERVAL>1 with BYDAY. Powered by Truth Engine, not LLM inference.
- Token-efficient output — TOON format compresses calendar data by ~40% fewer tokens than standard JSON, reducing costs and context window usage. TOON is the default output format for all data tools (list_calendars, list_events, find_free_slots, expand_rrule, get_availability). JSON is available via explicit format: "json".

What do I need to run Temporal Cortex?

- Node.js 18+ (for npx to download and run the binary) or Docker
- At least one calendar provider:
- Google Calendar — requires Google OAuth credentials
- Microsoft Outlook — requires Azure AD app registration (MICROSOFT_CLIENT_ID)
- CalDAV (iCloud, Fastmail, etc.) — requires an app-specific password

How do I install Temporal Cortex?

The fastest way to get started:

npx @temporal-cortex/cortex-mcp setup

The cortex-mcp setup wizard walks you through provider authentication, timezone configuration, and MCP client setup interactively. See the First Run Guide for a detailed walkthrough.

Or set up manually in 3 steps:

1. Install prerequisites — Node.js 18+ (or Docker) and at least one calendar provider (Google Calendar, Microsoft Outlook, or CalDAV).
2. Add the MCP configuration to your AI client's config file (see client-specific examples below).
3. Run the auth flow — npx @temporal-cortex/cortex-mcp auth google (or outlook / caldav). This authenticates and configures timezone, week start, and telemetry preferences.

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "temporal-cortex": {
      "command": "npx",
      "args": ["-y", "@temporal-cortex/cortex-mcp"],
      "env": {
        "GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
        "GOOGLE_CLIENT_SECRET": "your-client-secret",
        "TIMEZONE": "America/New_York"
      }
    }
  }
}

Cursor

Add to Cursor's MCP settings (~/.cursor/mcp.json):

{
  "mcpServers": {
    "temporal-cortex": {
      "command": "npx",
      "args": ["-y", "@temporal-cortex/cortex-mcp"],
      "env": {
        "GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
        "GOOGLE_CLIENT_SECRET": "your-client-secret",
        "TIMEZONE": "America/New_York"
      }
    }
  }
}

Windsurf

Add to Windsurf's MCP config (~/.codeium/windsurf/mcp_config.json):

{
  "mcpServers": {
    "temporal-cortex": {
      "command": "npx",
      "args": ["-y", "@temporal-cortex/cortex-mcp"],
      "env": {
        "GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
        "GOOGLE_CLIENT_SECRET": "your-client-secret",
        "TIMEZONE": "America/New_York"
      }
    }
  }
}

Docker

docker run --rm -i \
  -e GOOGLE_CLIENT_ID="your-client-id.apps.googleusercontent.com" \
  -e GOOGLE_CLIENT_SECRET="your-client-secret" \
  -e TIMEZONE="America/New_York" \
  -v ~/.config/temporal-cortex:/root/.config/temporal-cortex \
  cortex-mcp

Build the image first: docker build -t cortex-mcp . (or build directly from the repo: docker build -t cortex-mcp https://github.com/temporal-cortex/mcp.git).

> Need help with provider credentials? See the setup guides: Google Calendar, Microsoft Outlook, CalDAV (iCloud/Fastmail). For a complete reference of all environment variables and configuration options, see the Configuration Guide.

How do I verify the installation?

SHA256 checksums are published with every GitHub Release and embedded in the npm package as checksums.json for automatic postinstall verification. The postinstall script downloads the platform-specific binary and compares its SHA256 hash against the expected checksum in checksums.json. On mismatch, installation fails with an error — the binary is not installed and the error message includes both the expected and actual hashes.

Verify manually:

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.