π Overview
This release includes significant quality improvements, critical API fixes, and enhanced developer experience for the Todoist MCP server.
β¨ Quality Improvements
Optional Configuration (+15pts)
- Made
apiTokenconfiguration optional with environment variable fallback - Server can now run using
TODOIST_API_TOKENenvironment variable - Improved error messaging with helpful setup instructions
Enhanced Input Documentation (+12pts)
- Added comprehensive JSON schema documentation to all tool parameters
- Clear descriptions for filtering, natural language queries, and date formats
- Helpful examples for common use cases
Tool Annotations (+9pts)
- Added proper annotations to all 16 tools:
readOnlyHintfor safe GET operations (5 tools)destructiveHintfor DELETE operations (2 tools)idempotentHintfor safe-to-repeat operations (11 tools)
User Prompts (+5pts)
Added 5 helpful prompts for common workflows:
- daily-review: Review today's tasks and plan your day
- quick-add: Quickly add tasks with natural language
- project-overview: Get overview of all projects
- weekly-plan: Plan your week ahead
- cleanup-tasks: Review and clean up old or stuck tasks
Resources (+5pts)
Added 6 resources to expose Todoist data:
todoist://tasks/today- Today's taskstodoist://tasks/overdue- Overdue taskstodoist://tasks/week- This week's taskstodoist://tasks/priority/high- High priority taskstodoist://projects- All projectstodoist://labels- All personal labels
π Critical Bug Fixes
Fix 400 API Errors
Fixed issue where Todoist API returned 400 Bad Request errors when updating tasks with partial parameters:
- Added
removeUndefined()helper to filter out undefined values from API requests - Applied fix to all create/update operations (tasks, projects, labels, sections)
- Ensures only explicitly set parameters are sent to the API
Fix Incomplete Tool Schemas
Restored missing parameters to todoist_create_task and todoist_update_task:
- Added to update_task:
due_string,due_date,due_datetime,due_lang,project_id,section_id,assignee_id,duration,duration_unit - Added to create_task:
parent_id,order,due_date,due_datetime,due_lang,assignee_id,duration,duration_unit - Ensures feature parity between single and batch operations
Fix TypeScript Compilation Error
Fixed build failure in createSection method:
- Added missing
AddSectionArgstype import - Added proper type casting to resolve type incompatibility
- Ensures package builds and publishes successfully
π§ Technical Improvements
- Fixed MCP SDK 1.21.0 compatibility issues
- Fixed binary execution with proper shebang and module detection
- Improved error handling and validation
- Code quality improvements (linting, formatting)
π¦ Installation
npm install @hoffination/mcp-todoist@0.2.3π Links
π Credits
All improvements implemented with assistance from Claude Code.