Labsco
stanislavlysenko0912 logo

Todoist

β˜… 64

from stanislavlysenko0912

Full implementation of Todoist Rest API for MCP server

πŸ”₯πŸ”₯πŸ”₯βœ“ VerifiedAccount requiredNeeds API keys
<div align="center"> <img src="https://img.icons8.com/color/200/todoist.png" width="120"/> <h1>Todoist MCP Server</h1> <p>A Model Context Protocol (MCP) server implementation that integrates Claude and other AI assistants with Todoist, enabling natural language task management.</p> <div> <img src="https://img.shields.io/badge/claude-mcp-blue" alt="MCP Server"> <img src="https://img.shields.io/badge/todoist-mcp-orange" alt="Todoist Integration"> <a href="https://www.npmjs.com/package/todoist-mcp" target="_blank"> <img src="https://img.shields.io/npm/v/todoist-mcp.svg" alt="npm version"> </a> </div> </div>

Features

  • Complete Todoist API Integration: Access to the full Todoist REST API v2, and support for the Todoist Sync API through natural language
  • Batch Processing: Client can process multiple tasks in a single request
  • Search by name: AI can search for tasks, projects, and labels by name instead of ID
  • Tasks: Create, update, close, reopen, move, and delete tasks using conversational language
  • Projects: Create and manage projects and sections
  • Comments: Add and manage comments on tasks and projects
  • Labels: Create and manage personal and shared labels
  • Smart Context: On startup, automatically provides your projects and labels to the AI via server instructions β€” no extra tool calls needed
  • Prompt Support: You can easily provide information about your projects to client

Available Tools

Tasks

  • get_tasks_list: Get tasks with optional filtering by project, section, label, or IDs
  • get_tasks_by_filter: Get tasks using Todoist filter language (e.g. "today", "overdue", "P1 | P2", "#Work & @urgent")
  • create_tasks: Create new tasks with various attributes
  • get_tasks: Get specific tasks by ID or name
  • update_tasks: Update existing tasks
  • close_tasks: Mark tasks as complete
  • reopen_tasks: Reopen completed tasks
  • delete_tasks: Delete tasks
  • move_tasks: Move tasks to a different project or section

Projects

  • get_projects_list: Get all projects
  • create_projects: Create new projects
  • get_projects: Get 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

Sections

  • get_sections_list: Get all sections or filter by project
  • create_sections: Create new sections
  • get_sections: Get specific sections by ID or name
  • update_sections: Update sections
  • delete_sections: Delete sections

Comments

  • 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

Labels

  • 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

  • utils_get_colors: Get available colors for projects, labels, filters

Prompts

  • projects_list: Get list of projects with their sections and params in markdown format

Development

# Install dependencies
npm install

# Build the project and run inspector
npm run build && npx @modelcontextprotocol/inspector -e API_KEY=YOUR_API_KEY_HERE node dist/index.js

Issues and Support

If you encounter any issues or need support, please file an issue on the GitHub repository.

<a href="https://glama.ai/mcp/servers/@stanislavlysenko0912/todoist-mcp-server"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@stanislavlysenko0912/todoist-mcp-server/badge" /> </a>