Skip to main content

codebolt.todo

Task management operations for creating, updating, and managing todo items with priorities, statuses, and tags.

Available Tools

  • todo_add - Adds a new todo item with title, priority, and tags
  • todo_list - Retrieves the todo list with optional filters
  • todo_list_incomplete - Retrieves all incomplete todo items
  • todo_update - Updates an existing todo item (title, status, priority, tags)
  • todo_export - Exports todos in JSON or markdown format
  • todo_import - Imports todos from JSON or markdown format

Sample Usage

Adding a Todo

// Add a basic todo
const addResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_add",
{
title: "Implement user authentication"
}
);

// Add a todo with priority and tags
const addWithDetailsResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_add",
{
title: "Review pull request #42",
priority: "high",
tags: ["code-review", "urgent"]
}
);

Listing Todos

// List all todos
const listResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_list",
{}
);

// List todos with filters
const filteredListResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_list",
{
filters: {
priority: "high",
status: "pending"
}
}
);

// List only incomplete todos
const incompleteResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_list_incomplete",
{}
);

Updating a Todo

// Update todo title
const updateTitleResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_update",
{
id: "todo-123",
title: "Updated: Implement user authentication with OAuth"
}
);

// Update todo status
const updateStatusResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_update",
{
id: "todo-123",
status: "completed"
}
);

// Update multiple fields
const updateMultipleResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_update",
{
id: "todo-123",
status: "processing",
priority: "medium",
tags: ["in-progress", "backend"]
}
);

Exporting Todos

// Export todos as JSON
const exportJsonResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_export",
{
format: "json"
}
);

// Export todos as markdown
const exportMarkdownResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_export",
{
format: "markdown"
}
);

// Export filtered todos
const exportFilteredResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_export",
{
format: "json",
listId: "project-alpha",
status: ["pending", "processing"]
}
);

Importing Todos

// Import todos from JSON
const importJsonResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_import",
{
data: JSON.stringify([
{ title: "Task 1", priority: "high" },
{ title: "Task 2", priority: "low" }
]),
format: "json",
mergeStrategy: "merge"
}
);

// Import todos from markdown
const importMarkdownResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_import",
{
data: "- [ ] Task 1\n- [ ] Task 2\n- [x] Task 3 (completed)",
format: "markdown",
mergeStrategy: "replace"
}
);

// Import to a specific list
const importToListResult = await codebolt.tools.executeTool(
"codebolt.todo",
"todo_import",
{
data: JSON.stringify([{ title: "New Task" }]),
format: "json",
listId: "project-beta"
}
);

Tool Parameters

todo_add

ParameterTypeRequiredDescription
titlestringYesThe title of the todo item
prioritystringNoPriority level: 'high', 'medium', or 'low'
tagsstring[]NoArray of tags for organizing the todo

todo_list

ParameterTypeRequiredDescription
filtersobjectNoOptional filters to apply to the query

todo_list_incomplete

No parameters required.

todo_update

ParameterTypeRequiredDescription
idstringYesThe ID of the todo to update
titlestringNoNew title for the todo
statusstringNoNew status: 'pending', 'processing', 'completed', or 'cancelled'
prioritystringNoNew priority: 'high', 'medium', or 'low'
tagsstring[]NoNew tags for the todo

todo_export

ParameterTypeRequiredDescription
formatstringNoExport format: 'json' or 'markdown'
listIdstringNoFilter by list ID
statusstring[]NoFilter by status values

todo_import

ParameterTypeRequiredDescription
datastringYesThe import data (JSON or markdown string)
formatstringNoImport format: 'json' or 'markdown'
mergeStrategystringNoHow to handle existing todos: 'replace' or 'merge'
listIdstringNoTarget list ID for imported todos
info

The todo functionality provides a complete task management system through the MCP interface. Todos support multiple statuses (pending, processing, completed, cancelled), three priority levels (high, medium, low), and custom tags for flexible organization. Import/export capabilities allow data portability between systems.