Skip to main content
Glama

get_current_time

Retrieve the current time in various formats and timezones for accurate timestamping and scheduling needs.

Instructions

what time|current time|time now|get time - Get current time

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formatNoTime format
timezoneNoTimezone (e.g., America/New_York, Asia/Seoul)

Implementation Reference

  • The main execution handler for the get_current_time tool. Handles different time formats (iso, local, utc, timestamp, human) and optional timezone, returning formatted time in MCP ToolResult format.
    export async function getCurrentTime(args: { format?: string; timezone?: string }): Promise<ToolResult> {
      const { format = 'iso', timezone } = args;
      const now = new Date();
      
      let timeResult: string;
      
      switch (format) {
        case 'iso':
          timeResult = now.toISOString();
          break;
        case 'local':
          timeResult = now.toLocaleString();
          break;
        case 'utc':
          timeResult = now.toUTCString();
          break;
        case 'timestamp':
          timeResult = Math.floor(now.getTime() / 1000).toString();
          break;
        case 'human':
          const options: Intl.DateTimeFormatOptions = {
            year: 'numeric',
            month: 'long',
            day: 'numeric',
            hour: '2-digit',
            minute: '2-digit',
            second: '2-digit',
            timeZone: timezone
          };
          timeResult = now.toLocaleString('en-US', options);
          break;
        default:
          timeResult = now.toISOString();
      }
      
      const currentTimeResult = {
        action: 'get_current_time',
        format,
        timezone: timezone || 'local',
        result: timeResult,
        timestamp: now.getTime(),
        status: 'success'
      };
      
      return {
        content: [{ type: 'text', text: `Time: ${timeResult}\nFormat: ${format}\nTimezone: ${timezone || 'local'}\nTimestamp: ${now.getTime()}` }]
      };
    }
  • ToolDefinition object defining the schema, name, description, input parameters (format enum and optional timezone), and annotations for the get_current_time tool.
    export const getCurrentTimeDefinition: ToolDefinition = {
      name: 'get_current_time',
      description: 'what time|current time|time now|get time - Get current time',
      inputSchema: {
        type: 'object',
        properties: {
          format: { type: 'string', description: 'Time format', enum: ['iso', 'local', 'utc', 'timestamp', 'human'] },
          timezone: { type: 'string', description: 'Timezone (e.g., America/New_York, Asia/Seoul)' }
        },
        required: []
      },
      annotations: {
        title: 'Get Current Time',
        audience: ['user', 'assistant']
      }
    };
  • src/index.ts:606-607 (registration)
    Tool handler registration in the central executeToolCall switch dispatcher, mapping 'get_current_time' calls to the getCurrentTime function.
    case 'get_current_time':
      return await getCurrentTime(args as any) as CallToolResult;
  • src/index.ts:106-106 (registration)
    Registers the tool definition in the 'tools' array used for MCP listTools endpoint, enabling tool discovery.
    getCurrentTimeDefinition,
  • src/index.ts:25-25 (registration)
    Imports the handler function and tool definition from the implementation file.
    import { getCurrentTime, getCurrentTimeDefinition } from './tools/time/getCurrentTime.js';

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/ssdeanx/ssd-ai'

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