Model Context Protocol

Context-aware scheduling tools for AI agents

Give agents deterministic tools to validate, explain, and simulate scheduling intent before anything runs, then manage hosted schedules when explicitly authorized. Natural language, cron, RRule, composed recurrence, explicit events, and execution targets all resolve through the same rrule.net model.

Public betaPublic explorationScoped lifecycleMCP 2025-11-25Structured output

validate_schedule

Normalize scheduling intent, surface ambiguity, and return canonical recurrence, event schedule, or target-aware JSON.

Explanation, confidence, next occurrence, canonical JSON

simulate_schedule

Compute upcoming UTC occurrences with explicit timezone and DST semantics before a workflow is deployed.

Structured occurrence list

describe_schedule

Turn natural language or canonical schedule JSON into an explanation that humans and agents can verify.

Explanation and confidence

Connect

One remote endpoint

Add https://mcp.rrule.net as a custom remote connector. No token is required for the public read-only tools.

Transport
Stateless Streamable HTTP
Anonymous quota
100 requests per rolling 24 hours per IP
Safety
Public tools cannot create, mutate, or delete schedules

Compatibility configuration

{
  "mcpServers": {
    "rrule-net": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.rrule.net"]
    }
  }
}

Use this mcp-remote bridge only when the client cannot add a remote Streamable HTTP connector directly.

Authenticated Lifecycle

From validated intent to a running schedule

Machine-to-machine clients can use OAuth client credentials to list, create, inspect, update, pause, resume, and delete hosted schedules. Public exploration remains available without a token.

Inspect account state

schedules:read

Read hosted schedules and their execution history without changing them.

  • list_schedules
  • get_schedule
  • list_schedule_executions

Manage execution

schedules:write

Create and manage schedules, webhooks, targets, and lifecycle state.

  • create_schedule
  • update_schedule
  • update_schedule_target
  • pause_schedule
  • resume_schedule
  • delete_schedule
  1. 1

    Create credentials

    Create an OAuth client in the dashboard and store its one-time secret securely.

  2. 2

    Request an MCP token

    Use client_credentials with resource https://mcp.rrule.net and the minimum scopes needed.

  3. 3

    Operate deliberately

    Validate and simulate before creation; require explicit confirmation before deletion.

Access tokens are audience-bound. The MCP token is validated locally and exchanged for a separate 60-second API token; it is never passed through to the REST API.

Model Coverage

More than recurrence string parsing

Natural-language intent

Use business-readable schedule descriptions instead of forcing an agent to generate brittle syntax.

Cron and RRule compatibility

Validate legacy scheduling formats and normalize them into the same canonical model.

Explicit event schedules

Validate and simulate canonical event-relative or event-window schedules through event_schedule JSON.

Execution targets

Natural-language schedules can resolve into several named timezone or business contexts for downstream routing.

Agent Workflow

Validate intent, then inspect concrete dates

“Validate ‘Every day at 9am local time in Paris, London, Moscow, and Perth’ in UTC, then simulate the next eight occurrences.”
  1. 1

    Validate

    Interpret the input and return four explicit target contexts.

  2. 2

    Inspect

    Read the explanation, confidence, timezones, and canonical JSON.

  3. 3

    Simulate

    Preview concrete UTC occurrences before using the schedule elsewhere.

Discovery resources for agents

Agents can discover the server contract and reusable scheduling guidance without scraping this page. Credential provisioning remains human-assisted and is documented explicitly.

Supporting browsers can also invoke the three public, read-only tools directly through WebMCP. The integration is feature-detected and does not load a polyfill in other browsers.