Skip to main content
Glama
upamune

chrono-mcp

by upamune

chrono-mcp

MCP (Model Context Protocol) server for parsing natural language date/time expressions using chrono-node.

Features

  • 🌍 Timezone-aware parsing with simple offset values

  • 📅 Supports relative dates, absolute dates, and date ranges

  • 🔄 Configurable reference date and forward/backward preference

  • 🎯 Returns both certain and implied components

  • ⚡ Stateless HTTP transport for Cloudflare Workers

Related MCP server: Time MCP Server

Deployment

This server is designed to be deployed on Cloudflare Workers with Routes:

# Install dependencies
bun install

# Type check
bun run type-check

# Run tests
bun test

# Deploy to Cloudflare
bun run deploy

MCP Tool: chrono_parse

Query Parameters

You can set a default timezone offset for all requests using a query parameter:

POST https://mcp.srz.me/chrono?timezone_offset=540

Benefits:

  • The default value will be used if timezone_offset is not specified in tool arguments

  • Tool description and parameter hints are automatically updated to reflect the current default

  • Example: When ?timezone_offset=540 is set, the tool description shows: "Default timezone: +09:00 (540 minutes from UTC)"

Input Parameters

Required

  • text (string): Text containing date/time expressions to parse

Optional

  • reference (string): Reference date/time as ISO 8601 string

    • Example: "2025-10-05T10:00:00Z" or "2025-10-05T10:00:00+09:00"

    • Default: Current time

  • timezone_offset (number): Timezone offset in minutes from UTC

    • Example: 540 for JST (+09:00), -300 for EST (-05:00)

    • Default: Query parameter value, or 0 (UTC)

  • forwardOnly (boolean): Prefer future dates when ambiguous

    • Default: true

  • mode (enum: "first" | "all"): Parse mode

    • "first": Return first match only (default)

    • "all": Return all matches

Output Schema

{
  results: [
    {
      text: string              // Matched text
      isRange: boolean
      start: {
        iso: string             // ISO 8601 in specified timezone
        unix: number            // Unix timestamp (ms)
        timezoneOffset: number | null
        certain: string[]       // Explicit components
        implied: string[]       // Filled-in components
      }
      end?: { ... }             // For ranges
    }
  ]
  summary: string               // Brief description
}

Example Usage

Basic parsing

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "chrono_parse",
    "arguments": {
      "text": "tomorrow at 3pm"
    }
  }
}

With timezone offset in arguments

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "chrono_parse",
    "arguments": {
      "text": "æ˜Žæ—„ăź17時",
      "reference": "2025-10-05T10:00:00+09:00",
      "timezone_offset": 540
    }
  }
}

With timezone offset in query parameter

# Set default timezone_offset via query parameter
POST https://mcp.srz.me/chrono?timezone_offset=540

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "chrono_parse",
    "arguments": {
      "text": "æ˜Žæ—„ăź17時"
      // timezone_offset not specified, uses query parameter default (540)
    }
  }
}

Parse all matches

{
  "jsonrpc": "2.0",
  "id": 4,
  "method": "tools/call",
  "params": {
    "name": "chrono_parse",
    "arguments": {
      "text": "Meeting on Monday at 10am and deadline on Friday at 5pm",
      "mode": "all",
      "timezone_offset": 540
    }
  }
}

Date range

{
  "jsonrpc": "2.0",
  "id": 5,
  "method": "tools/call",
  "params": {
    "name": "chrono_parse",
    "arguments": {
      "text": "from Monday to Friday",
      "timezone_offset": 0
    }
  }
}

Timezone Offset Reference

Region

Offset (minutes)

UTC Offset

JST (Japan)

540

+09:00

EST (US Eastern)

-300

-05:00

PST (US Pacific)

-480

-08:00

UTC

0

+00:00

IST (India)

330

+05:30

ACST (Australia Central)

570

+09:30

Routes Configuration

The server is configured to run at https://mcp.srz.me/chrono* using Cloudflare Routes.

License

MIT

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    A Cloudflare Workers-based MCP server that provides current date and time information for any IANA timezone. It enables AI agents to retrieve precise, ISO 8601-formatted timestamps through a globally distributed edge network.
    Last updated
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server providing various date/time functions including current time, timezone conversion, and relative time calculations. Supports both local stdio and remote HTTP access via Cloudflare Workers.
    Last updated
    6
    370
    2
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    MCP server for parsing Chinese fuzzy time expressions (e.g., 'æ˜šć€©', '例捈3ç‚č', '䞭秋节') into standard datetime formats.
    Last updated
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/upamune/chrono-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server