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-Wait
A simple server to pause execution and wait for other tasks to complete.
Date-time Tools
A server for date-time manipulation and timezone conversion.
Notion ReadOnly MCP Server
An optimized, read-only MCP server for the Notion API with asynchronous processing.
Mcptix
A simple and powerful ticket tracking system with AI assistant integration.
Directus Task MCP Server
Manage tasks in Directus with automatic schema synchronization.
HubSpot MCP
Access and manage HubSpot CRM data through a standardized interface using the HubSpot API.
WordPress MCP Server
Manage WordPress sites and create content with AI-generated featured images.
Monday.com
Interact with Monday.com boards, items, updates, and documents.
Tempo MCP Server
An MCP server for managing Tempo worklogs in Jira. It connects to Jira and Tempo services using API tokens and environment variables.
Productboard MCP Server
Integrates with the Productboard API, offering 49 specialized tools to manage all major Productboard functionalities.