Skip to main content
Glama

create_task

Add tasks to TickTick with title, description, due dates, priorities, and tags to organize your workflow.

Instructions

Create a new task in TickTick

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYesTask title (required)
contentNoTask description/content
projectIdNoProject ID where the task should be created
dueDateNoDue date in ISO format
priorityNoTask priority (0=None, 1=Low, 3=Medium, 5=High)
tagsNoTask tags

Implementation Reference

  • MCP tool handler for 'create_task': validates required title, calls TickTickClient.createTask with args, and returns success message with created task JSON.
    case 'create_task': if (!args?.title) { throw new McpError(ErrorCode.InvalidParams, 'Title is required'); } const newTask = await this.ticktickClient!.createTask(args); return { content: [ { type: 'text', text: `Task created successfully: ${JSON.stringify(newTask, null, 2)}`, }, ], };
  • src/index.ts:90-124 (registration)
    Registration of 'create_task' tool in ListTools response, including name, description, and detailed input schema with properties and required fields.
    { name: 'create_task', description: 'Create a new task in TickTick', inputSchema: { type: 'object', properties: { title: { type: 'string', description: 'Task title (required)', }, content: { type: 'string', description: 'Task description/content', }, projectId: { type: 'string', description: 'Project ID where the task should be created', }, dueDate: { type: 'string', description: 'Due date in ISO format', }, priority: { type: 'number', description: 'Task priority (0=None, 1=Low, 3=Medium, 5=High)', }, tags: { type: 'array', items: { type: 'string' }, description: 'Task tags', }, }, required: ['title'], }, },
  • Input schema definition for 'create_task' tool specifying properties, types, descriptions, and required title field.
    inputSchema: { type: 'object', properties: { title: { type: 'string', description: 'Task title (required)', }, content: { type: 'string', description: 'Task description/content', }, projectId: { type: 'string', description: 'Project ID where the task should be created', }, dueDate: { type: 'string', description: 'Due date in ISO format', }, priority: { type: 'number', description: 'Task priority (0=None, 1=Low, 3=Medium, 5=High)', }, tags: { type: 'array', items: { type: 'string' }, description: 'Task tags', }, }, required: ['title'], }, },
  • Core helper method in TickTickClient that authenticates and performs POST request to TickTick API /task endpoint to create a new task.
    async createTask(task: Partial<TickTickTask>): Promise<TickTickTask> { await this.ensureAuthenticated(); try { const response = await this.client.post('/task', task); return response.data; } catch (error) { throw new Error(`Failed to create task: ${error instanceof Error ? error.message : 'Unknown error'}`); } }

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/rafliruslan/ticktick-mcp-server'

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