TimeMCP

by chew-z

295 downloads
Not rated
GitHub

About

Golang MCP server to replace modelcontextprotocol/time MCP server

Details

Author
chew-z
Downloads
295
Categories
Other, Productivity

- get_current_time: returns the current time in an optional timezone (defaults to system timezone)
- convert_time: converts a time from one timezone to another
- Supports all IANA time zone database entries (e.g., Europe/Warsaw, America/New_York)
- Lightweight Go implementation with minimal dependencies
- Works with any MCP-compatible client

Build the server from source with go build -o ./bin/mcp-time ., then add it to your MCP client configuration (e.g., claude_desktop_config.json) by specifying the path to the binary under mcpServers.time.command. Once connected, the client can discover and call the provided tools with the required arguments.

A simple Model Control Protocol (MCP) server that provides time and timezone conversion tools.

The server provides the following tools:

Gets the current time in a specific timezone or the system timezone.

- timezone(string, optional): The timezone to get the current time in. If not provided, the system timezone is used.

Current time in Europe/Warsaw: 2025-04-09 15:30:45

Converts time between different timezones.

- source_timezone(string, optional): Source timezone. Defaults to system timezone if not provided.
- time(string, optional): Time in 24-hour format (HH:MM). Defaults to current time if not provided.
- target_timezone(string, required): Target timezone to convert the time to.

Time conversion: 15:30 in Europe/Warsaw → 09:30 in America/New_York
{ "mcpServers": { "time": { "command": "/Path/To/Your/Bin/mcp-time" } } }

The server implements the Model Control Protocol, which means it can be used with any MCP-compatible client. The client will be able to:
- Discover the available tools
- Call the tools with the appropriate arguments
- Receive formatted responses

- github.com/mark3labs/mcp-go: Implementation of the Model Control Protocol
- github.com/araddon/dateparse: Flexible date parsing library

The server supports all IANA time zone database entries like:

- Europe/Warsaw
- America/New_York
- Asia/Tokyo
- Australia/Sydney
- Africa/Cairo
- etc.

{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "get_current_time", "arguments": { "timezone": "Asia/Tokyo" } } }
{ "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": { "name": "convert_time", "arguments": { "source_timezone": "Europe/Warsaw", "time": "14:30", "target_timezone": "America/Los_Angeles" } } }

- Run HTTP transport:go run . --transport=http [--auth-enabled]
- Health:GET /health, Capabilities:GET /capabilities, MCP:POST {TIME_HTTP_PATH}/(default"/mcp")

- Default: CORS is disabled (TIME_HTTP_CORS_ENABLED=false).
- When enabled, no origins are allowed unless explicitly listed inTIME_HTTP_CORS_ORIGINS.
- TIME_HTTP_CORS_ORIGINSaccepts a comma-separated allowlist. Supported forms:

- Hostname:example.com
- Host:port:localhost:3000,127.0.0.1:8080
- Full URL:https://app.example.com(normalized to its host)
- Wildcard subdomain:
.example.com(matchesexample.comand any subdomain)

- Development:

- TIME_HTTP_CORS_ENABLED=true
- TIME_HTTP_CORS_ORIGINS="http://localhost:3000,http://127.0.0.1:5173"

- TIME_HTTP_CORS_ENABLED=true
- TIME_HTTP_CORS_ORIGINS="https://yourdomain.com,https://app.yourdomain.com,.trusted-partner.com"
- Avoid
; if possible, disable CORS for server-to-server use.

- TIME_HTTP_CORS_ENABLED(default:false)
- TIME_HTTP_CORS_ORIGINS(default: empty, meaning no allowed origins)
- TIME_AUTH_ENABLED(default:false)
- TIME_AUTH_SECRET_KEY(required if auth enabled; ≥32 chars)
- TIME_HTTP_ADDRESS(default:":8080")
- TIME_HTTP_PATH(default:"/mcp")

- curl -i http://localhost:8080/health
- With JWT:curl -i -H "Authorization: Bearer $TOKEN" http://localhost:8080/capabilities

Connect AI clients to Cal.com scheduling through the Model Context Protocol using the hosted server at mcp.cal.com or a local instance.

Sync Calendars, Scheduling Links, AI Executive Scheduling Assistant, Unified Calendar

MCP server to interact with Routine: calendars, tasks, notes, etc.

Query contacts, companies, and relationship data extracted from your email and calendar. Build pre-meeting reports, find warm intros, and identify fading relationships.

An MCP server for managing Attendee meeting bots, requiring a running Attendee backend service.

A command-line tool to fetch Google Calendar schedules and convert them into custom prompts or text snippets using a template engine.

Integrates with the Cal.com Calendar API for appointment scheduling.

An MCP server for intelligently managing calendar events and finding available time slots for appointments and meetings.

Calendrz: Mirror Your Availability Across Every Calendar, Automatically.

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.