Skip to main content
Glama
kiyo-e

Time MCP Server

by kiyo-e
README.md
# mcp-time-worker

A Cloudflare Workers-based MCP (Model Context Protocol) server that provides timezone-aware time information.

## Features

- Returns current date and time in any IANA timezone
- Runs on Cloudflare's global edge network
- Implements the Model Context Protocol for AI agent integration
- Configurable default timezone via environment variables
- ISO 8601-compatible time format with UTC offset

## Prerequisites

- Node.js 18 or later
- Cloudflare account (for deployment)
- Wrangler CLI (installed via npm)

## Installation

```bash
npm install
```

## Development

Start the local development server:

```bash
npm run dev
```

The MCP server will be available locally for testing with MCP clients.

## Deployment

Deploy to Cloudflare Workers:

```bash
npm run deploy
```

### Custom Timezone Configuration

Override the default timezone during deployment:

```bash
wrangler deploy --var DEFAULT_TIMEZONE:America/New_York
```

Or set it in the Cloudflare dashboard under Workers > Settings > Environment Variables.

## Usage

This MCP server exposes a single tool that can be called by any MCP client:

### Tool: `get_time`

Returns the current date and time in a specified timezone.

**Parameters:**
- `timezone` (optional): IANA timezone identifier (e.g., "Asia/Tokyo", "America/New_York", "Europe/London")
  - If not provided, uses the `DEFAULT_TIMEZONE` environment variable
  - Final fallback: "Asia/Tokyo"

**Response Format:**
```
YYYY-MM-DDTHH:MM:SS±HH:MM
```

Example: `2025-11-27T15:30:45+09:00`

### Example MCP Client Configuration

Add to your MCP client configuration (e.g., Claude Desktop):

```json
{
  "mcpServers": {
    "time": {
      "url": "https://your-worker.your-subdomain.workers.dev"
    }
  }
}
```

## Configuration

### wrangler.toml

The default timezone is configured in `wrangler.toml`:

```toml
[vars]
DEFAULT_TIMEZONE = "Asia/Tokyo"
```

Modify this value to change the default timezone for your deployment.

## Technical Details

- **Runtime**: Cloudflare Workers (Edge)
- **Protocol**: Model Context Protocol (MCP)
- **Timezone Library**: Native `Intl.DateTimeFormat` API
- **Validation**: Zod schema validation
- **CORS**: Enabled with wildcard origin (`*`)

## License

MIT License - see [LICENSE](LICENSE) file for details