TimeMCP
A server for time and timezone conversion tools.
TimeMCP
A simple Model Control Protocol (MCP) server that provides time and timezone conversion tools.
Features
The server provides the following tools:
1. get_current_time
Gets the current time in a specific timezone or the system timezone.
Arguments:
timezone(string, optional): The timezone to get the current time in. If not provided, the system timezone is used.
Example Response:
Current time in Europe/Warsaw: 2025-04-09 15:30:45
2. convert_time
Converts time between different timezones.
Arguments:
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.
Example Response:
Time conversion: 15:30 in Europe/Warsaw → 09:30 in America/New_York
Usage
Build
go build -o ./bin/mcp-time .
Add to claude_desktop_config.json
{ "mcpServers": {
"time": {
"command": "/Path/To/Your/Bin/mcp-time"
}
}
}
Using with MCP-compatible Clients
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
Dependencies
github.com/mark3labs/mcp-go: Implementation of the Model Control Protocolgithub.com/araddon/dateparse: Flexible date parsing library
Supported Timezones
The server supports all IANA time zone database entries like:
Europe/WarsawAmerica/New_YorkAsia/TokyoAustralia/SydneyAfrica/Cairo- etc.
Examples
Getting Current Time in Tokyo
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_current_time",
"arguments": {
"timezone": "Asia/Tokyo"
}
}
}
Converting Time
{
"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"
}
}
}
HTTP Transport and CORS
- Run HTTP transport:
go run . --transport=http [--auth-enabled] - Health:
GET /health, Capabilities:GET /capabilities, MCP:POST {TIME_HTTP_PATH}/*(default"/mcp")
CORS Behavior
- Default: CORS is disabled (
TIME_HTTP_CORS_ENABLED=false). - When enabled, no origins are allowed unless explicitly listed in
TIME_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)
- Hostname:
- With
TIME_AUTH_ENABLED=true, using*inTIME_HTTP_CORS_ORIGINSis rejected at startup. - Preflight and response headers are returned only for allowed origins.
Configuration Examples
- Development:
TIME_HTTP_CORS_ENABLED=trueTIME_HTTP_CORS_ORIGINS="http://localhost:3000,http://127.0.0.1:5173"
- Production:
TIME_HTTP_CORS_ENABLED=trueTIME_HTTP_CORS_ORIGINS="https://yourdomain.com,https://app.yourdomain.com,*.trusted-partner.com"- Avoid
*; if possible, disable CORS for server-to-server use.
Environment Variables
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")
Quick HTTP Checks
curl -i http://localhost:8080/health- With JWT:
curl -i -H "Authorization: Bearer $TOKEN" http://localhost:8080/capabilities
Related Servers
MCP MD2PDF Server
Convert Markdown documents to PDF with support for Mermaid diagrams.
ClickUp
Integrate AI assistants with ClickUp for productivity and project management.
Document Translator
An example MCP server for translating documents, designed for deployment on Cloudflare Workers.
Tally MCP Server
Provides AI assistants with secure access to Tally form management capabilities.
Yuga Planner
AI Task schedule planning with LLamaIndex and Timefold: breaks down a task description and schedules it around an existing calendar
Markdown to PDF
Convert Markdown files to high-quality, print-ready PDFs using LaTeX.
Google Workspace MCP Server
Interact with Google Workspace services like Gmail and Google Calendar.
Laravel Boost
Laravel Boost is an MCP server equipped with over 15 specialized tools designed to streamline AI-assisted coding workflows.
Screen View
Capture and analyze screenshots using the Claude Vision API.
MCP Trello
A server for interacting with Trello boards, handling API integration, rate limiting, and type safety.