- Home
- MCP servers
- Todoist
Todoist
- typescript
52
GitHub Stars
typescript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You can manage Todoist tasks, projects, labels, and more through a Model Context Protocol (MCP) server. This server lets Claude and other AI assistants interact with Todoist using natural language, handling creation, updates, searches, and batch operations in a streamlined, conversational way.
How to use
Connect your MCP client to the Todoist MCP Server to start sending natural language requests. You can ask for tasks due today, create new tasks, add comments, or manage projects and labels using simple, conversational commands. You can search by name for tasks, projects, and labels, and perform batch operations in a single request.
Typical capabilities include creating tasks, updating attributes, closing or reopening tasks, moving items between projects or sections, and managing sections, comments, and labels. You can also provide context about your projects so the client can respond with more accurate results.
How to install
Prerequisites: ensure you have Node.js and npm installed on your system.
Install dependencies for the MCP server package and its tooling in your environment.
Build and run the MCP server using the recommended inspector workflow.
# Install dependencies
npm install
# Build the project and start the inspector
npm run build && npx @modelcontextprotocol/inspector -e API_KEY=YOUR_API_KEY_HERE node dist/index.js
Configuration and quick start
Configure your Todoist API token to enable access to the Todoist REST API v2 and related features.
{
"mcpServers": {
"todoist": {
"command": "npx",
"args": ["-y", "todoist-mcp"],
"env": {
"API_KEY": "your_todoist_api_token_here"
}
}
}
}
Notes on usage
The server exposes a range of tools for interacting with Todoist. Use these through your MCP client to perform actions like listing tasks, creating tasks, updating task details, and organizing your Todoist workspace.
Additional guidance
Environment security: treat your API tokens as secrets. Use environment variables to inject tokens securely in production.
If you need more context around your projects, you can supply prompts that describe your projects to the client so responses include relevant details.
Available tools
get_tasks_list
Retrieve a list of tasks with optional filters such as project, section, label, due date, and priority.
create_tasks
Create new tasks with attributes like content, project, section, due date, priority, and labels.
get_tasks
Fetch specific tasks by ID or by name.
update_tasks
Update existing tasks with new properties or status.
close_tasks
Mark tasks as complete.
reopen_tasks
Reopen completed tasks.
delete_tasks
Delete tasks from Todoist.
move_tasks
Move tasks to a different project or section.
get_projects_list
List all projects.
create_projects
Create new projects.
get_projects
Fetch specific projects by ID or name.
update_projects
Update existing projects.
delete_projects
Delete projects.
get_collaborators
Get all collaborators for a project.
move_projects
Move projects to a different location or subproject.
get_sections_list
List all sections or filter by project.
create_sections
Create new sections.
get_sections
Fetch specific sections by ID or name.
update_sections
Update sections.
delete_sections
Delete sections.
get_comments_list
Get comments for a project or task.
create_comments
Create new comments.
get_comments
Get specific comments by ID.
update_comments
Update comments.
delete_comments
Delete comments.
get_labels_list
Get all personal labels.
create_labels
Create new personal labels.
get_labels
Get personal labels by ID or name.
update_labels
Update personal labels.
delete_labels
Delete personal labels.
get_shared_labels
Get all shared labels.
rename_shared_labels
Rename shared labels.
remove_shared_labels
Remove shared labels.
utils_get_colors
Get available colors for projects, labels, and filters.