Todoist MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TODOIST_API_TOKEN | Yes | Your Todoist API token (found in Todoist Settings → Integrations → Developer) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| todoist_get_projectsB | Get all projects from the user's Todoist account |
| todoist_get_projectC | Get a single project from Todoist Args: project_id: ID of the project to retrieve |
| todoist_add_projectB | Create a new project in Todoist Args: name: Name of the project color: Color of the project (optional) parent_id: ID of the parent project for creating sub-projects (optional) is_favorite: Whether the project should be marked as favorite (optional) view_style: View style of the project, either 'list' or 'board' (optional) |
| todoist_update_projectB | Update an existing project in Todoist Args: project_id: ID of the project to update name: New name for the project (optional) color: New color for the project (optional) is_favorite: Whether the project should be marked as favorite (optional) view_style: View style of the project, either 'list' or 'board' (optional) |
| todoist_delete_projectC | Deletes a project from the user's Todoist account Args: project_id: ID of the project to delete |
| todoist_get_sectionsC | Get all sections from the user's Todoist account Args: project_id: Filter sections by project ID (optional) |
| todoist_get_sectionC | Get a single section from Todoist Args: section_id: ID of the section to retrieve |
| todoist_add_sectionB | Create a new section in Todoist Args: name: Section name project_id: Project ID this section should belong to order: Order among other sections in a project (optional) |
| todoist_update_sectionB | Updates a section in Todoist Args: section_id: ID of the section to update name: New name for the section |
| todoist_delete_sectionC | Deletes a section from Todoist Args: section_id: ID of the section to delete |
| todoist_get_tasksB | Get a list of tasks from Todoist with various filters Args: project_id: Filter tasks by project ID (optional) filter: Natural language filter like 'today', 'tomorrow', 'next week', 'priority 1', 'overdue' (optional) priority: Filter by priority level (1-4) (optional) limit: Maximum number of tasks to return (optional) |
| todoist_get_taskC | Get an active task from Todoist Args: task_id: ID of the task to retrieve |
| todoist_create_taskB | Create a new task in Todoist with optional description, due date, and priority Args: content: The content/title of the task description: Detailed description of the task (optional) project_id: Task project ID. If not set, task is put to user's Inbox (optional) section_id: ID of section to put task into (optional) parent_id: Parent task ID (optional) order: Non-zero integer value used to sort tasks under the same parent (optional) labels: The task's labels (a list of names that may represent either personal or shared labels) (optional) priority: Task priority from 1 (normal) to 4 (urgent) (optional) due_string: Natural language due date like 'tomorrow', 'next Monday', 'Jan 23' (optional) due_date: Specific date in YYYY-MM-DD format relative to user's timezone (optional) due_datetime: Specific date and time in RFC3339 format in UTC (optional) due_lang: 2-letter code specifying language in case due_string is not written in English (optional) assignee_id: The responsible user ID (only applies to shared tasks) (optional) duration: A positive integer for the amount of duration_unit the task will take (optional) duration_unit: The unit of time that the duration field represents (minute or day) (optional) deadline_date: Specific date in YYYY-MM-DD format relative to user's timezone (optional) deadline_lang: 2-letter code specifying language of deadline (optional) |
| todoist_update_taskB | Update an existing task in Todoist Args: task_id: ID of the task to update content: New content/title for the task (optional) description: New description for the task (optional) labels: New labels for the task (optional) priority: New priority level from 1 (normal) to 4 (urgent) (optional) due_string: New due date in natural language like 'tomorrow', 'next Monday' (optional) due_date: New specific date in YYYY-MM-DD format (optional) due_datetime: New specific date and time in RFC3339 format in UTC (optional) due_lang: 2-letter code specifying language in case due_string is not written in English (optional) assignee_id: The responsible user ID or null to unset (for shared tasks) (optional) duration: A positive integer for the amount of duration_unit the task will take (optional) duration_unit: The unit of time that the duration field represents (minute or day) (optional) deadline_date: Specific date in YYYY-MM-DD format relative to user's timezone (optional) deadline_lang: 2-letter code specifying language of deadline (optional) |
| todoist_close_taskC | Close a task in Todoist (i.e., mark the task as complete) Args: task_id: ID of the task to close |
| todoist_reopen_taskA | Reopen a task in Todoist (i.e., mark the task as incomplete) Args: task_id: ID of the task to reopen |
| todoist_delete_taskC | Delete a task from Todoist Args: task_id: ID of the task to delete |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mikemc/todoist-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server