Skip to main content
Glama
awwaiid
by awwaiid

add_task

Create new tasks in TaskWarrior with details like description, due date, priority, project, and tags to organize your workflow.

Instructions

Add a new task

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
descriptionYes
dueNo
priorityNo
projectNo
tagsNo

Implementation Reference

  • Switch case handling the 'add_task' tool: parses input with addTaskRequest schema, builds TaskWarrior 'task add' command from description, due, priority, project, tags, executes via execSync, returns output as text content.
    case "add_task": { const parsed = addTaskRequest.safeParse(args); if (!parsed.success) { throw new Error(`Invalid arguments for add_task: ${parsed.error}`); } let task_args = [parsed.data.description]; if (parsed.data.due) { task_args.push(`due:${parsed.data.due}`); } if (parsed.data.priority) { task_args.push(`priority:${parsed.data.priority}`); } if (parsed.data.project) { task_args.push(`project:${parsed.data.project}`); } if (parsed.data.tags) { for (let tag of parsed.data.tags) { task_args.push(`+${tag}`); } } const content = execSync(`task add ${task_args.join(" ")}`, { maxBuffer: 1024 * 1024 * 10 }).toString().trim(); return { content: [{ type: "text", text: content }], }; }
  • Zod schema defining the input for 'add_task': required description, optional due (ISO), priority (H/M/L), project, tags.
    const addTaskRequest = z.object({ description: z.string(), // Optional fields that can be set when adding due: z.string().optional(), // ISO timestamp priority: z.enum(["H", "M", "L"]).optional(), project: z.string().regex(/^[a-z.]+$/).optional(), tags: z.array(z.string().regex(/^a-z$/)).optional(), });
  • index.ts:106-110 (registration)
    Tool registration in ListTools response: defines name, description, and converts addTaskRequest Zod schema to JSON schema for input.
    { name: "add_task", description: "Add a new task", inputSchema: zodToJsonSchema(addTaskRequest) as ToolInput, },
  • Response schema for 'add_task' aliases the shared taskSchema.
    const addTaskResponse = taskSchema;

Other Tools

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/awwaiid/mcp-server-taskwarrior'

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