Skip to main content
Glama

create_time_reminder

Schedule time-based reminders using system time to track tasks and activities. Set reminders with specific times and messages for improved task management and follow-up.

Instructions

Create a time-based reminder using system time for scheduling

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
messageYesReminder message
relatedTaskIdNoID of related task or activity
reminderTimeYesTime for the reminder (ISO 8601 format with explicit timezone offset, e.g., '2025-09-11T14:00:00+08:00' for local time or '2025-09-11T14:00:00+00:00' for UTC)

Implementation Reference

  • Core handler function in TimeServer class that executes the tool logic: generates unique ID, validates ISO 8601 reminder time, creates Reminder object, persists to database, and returns the reminder.
    def create_time_reminder( self, reminder_time: str, message: str, related_task_id: Optional[str] = None ) -> Reminder: """Create a time-based reminder""" reminder_id = self.id_generator.generate_id() created_time = datetime.now(ZoneInfo('UTC')).isoformat(timespec="seconds") # Validate reminder time format try: # Handle both 'Z' suffix and existing timezone info if reminder_time.endswith('Z'): parsed_time = datetime.fromisoformat(reminder_time.replace('Z', '+00:00')) else: parsed_time = datetime.fromisoformat(reminder_time) except ValueError: raise ValueError("Invalid reminder time format. Expected ISO 8601 format") reminder = Reminder( reminderId=reminder_id, reminderTime=reminder_time, message=message, relatedTaskId=related_task_id, status="pending", createdTime=created_time ) self.db.add_reminder(reminder) return reminder
  • Pydantic model defining the structure of a Reminder, used for output validation and serialization.
    class Reminder(BaseModel): reminderId: str reminderTime: str message: str relatedTaskId: Optional[str] = None status: str # "pending", "completed" createdTime: str
  • MCP tool registration in list_tools(): defines name, description, and input schema.
    Tool( name=TimeTools.CREATE_TIME_REMINDER.value, description="Create a time-based reminder using system time for scheduling", inputSchema={ "type": "object", "properties": { "reminderTime": { "type": "string", "description": "Time for the reminder (ISO 8601 format with explicit timezone offset, e.g., '2025-09-11T14:00:00+08:00' for local time or '2025-09-11T14:00:00+00:00' for UTC)", }, "message": { "type": "string", "description": "Reminder message", }, "relatedTaskId": { "type": "string", "description": "ID of related task or activity", }, }, "required": ["reminderTime", "message"], }, ),
  • Dispatch logic in _execute_tool() that validates arguments and invokes the handler for create_time_reminder.
    case TimeTools.CREATE_TIME_REMINDER.value: if not all(k in arguments for k in ["reminderTime", "message"]): raise ValueError("Missing required arguments: reminderTime and message") result = time_server.create_time_reminder( arguments["reminderTime"], arguments["message"], arguments.get("relatedTaskId"), )
  • Enum value defining the tool name constant.
    CREATE_TIME_REMINDER = "create_time_reminder" CHECK_TIME_REMINDERS = "check_time_reminders"

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/n0zer0d4y/chronos-protocol'

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