Releases: taazkareem/clickup-mcp-server
v0.8.5
v0.8.5 Release Notes
🚀 New Features & Improvements
- Major Enhancement: Comprehensive Natural Language Date Parsing System:
- Complete Natural Language Support: 47+ natural language patterns with 100% accuracy
- Future expressions:
"in 6 days","3 days later","after 2 weeks","5 days ahead","next 3 days" - Past expressions:
"6 days ago","3 days back","2 weeks before","5 days earlier","last 3 days" - Article support:
"a day ago","in a week","an hour later"(a/an automatically converted to 1) - Flexible connectors:
"3 days later around 2pm","by 5pm","on Monday"(at/around/by/on) - Formal terms:
"overmorrow"(day after tomorrow),"ereyesterday"(day before yesterday)
- Future expressions:
- Extended Time Units: Complete support for days, weeks, months, and years
- Months:
"in 6 months","3 months ago","after 9 months","2 months later" - Years:
"in 2 years","5 years ago","after 1 year","3 years from now" - Dynamic numbers: Any number works (1, 6, 15, 30, 100, 365+) with perfect accuracy
- Months:
- Smart Preprocessing: Typo correction, time normalization, complex expression handling
- Enhanced Formats: US dates, text months, relative expressions, timestamps, time specifications
- Performance: Sub-millisecond parsing (~0.188ms) with 100% backward compatibility
- Complete Natural Language Support: 47+ natural language patterns with 100% accuracy
🐛 Bug Fixes
-
Fixed Task Assignment Functionality:
- Root Cause: ClickUp API uses different formats for assignees in task creation vs updates
- Creation:
"assignees": [user_id1, user_id2](simple array) - Updates:
"assignees": { "add": [user_id1], "rem": [user_id2] }(object with add/rem arrays)
- Creation:
- Parameter Parsing: Fixed MCP serialization issue where assignee arrays were received as strings
- Smart Assignment Logic: Implemented intelligent add/remove calculation by comparing current vs desired assignees
- Complete Functionality: Now supports adding, removing, and updating task assignees
- Multiple Formats: Supports user IDs, emails, and usernames for assignee resolution
- TypeScript Types: Updated interfaces to support both array and object assignee formats
- Testing: Verified full assignment cycle (add → remove → re-add) works correctly
- Root Cause: ClickUp API uses different formats for assignees in task creation vs updates
-
Fixed Track Time tool response formatting issue:
- Fixed issue where Track Time tools (start/stop time tracking, get time entries, etc.) were executing successfully but returning no output to users
- Root cause: Time tracking handlers were returning raw JavaScript objects instead of using proper MCP server response formatting
- Solution: Updated all 6 time tracking handlers to use
sponsorService.createResponse()method for consistent response formatting - Handlers fixed:
handleStartTimeTracking,handleStopTimeTracking,handleGetTaskTimeEntries,handleAddTimeEntry,handleDeleteTimeEntry,handleGetCurrentTimeEntry - Enhanced error handling: All error responses now use
sponsorService.createErrorResponse()for consistent error formatting - Added null safety: Fixed potential undefined property access in time entries data with proper null checks
- Improved user experience: Added helpful success messages and proper data structure formatting
- Impact: Track Time tools now provide clear, formatted JSON responses instead of appearing to run silently
v0.8.4
v0.8.4 Release Notes
� Security Features
- Comprehensive MCP Streamable HTTPS Transport Security Implementation:
- HTTPS/TLS Support: Added optional HTTPS server alongside HTTP for encrypted communication
- Environment variables:
ENABLE_HTTPS,SSL_KEY_PATH,SSL_CERT_PATH,SSL_CA_PATH,HTTPS_PORT - Dual protocol support: HTTP (3231) and HTTPS (3443) run simultaneously for backwards compatibility
- Self-signed certificate generation script:
./scripts/generate-ssl-cert.sh - Production-ready with CA-issued certificates
- Environment variables:
- Origin Header Validation: Prevents cross-site attacks by validating Origin header against whitelist
- Environment variable:
ENABLE_ORIGIN_VALIDATION=true - Default allowed origins:
127.0.0.1:3231,localhost:3231, plus HTTPS variants - Smart handling: Allows non-browser clients (n8n, MCP Inspector) while blocking unauthorized origins
- Environment variable:
- Rate Limiting Protection: Protects against DoS attacks with configurable request limits
- Environment variable:
ENABLE_RATE_LIMIT=true - Default: 100 requests per minute per IP address
- Configurable via:
RATE_LIMIT_MAX,RATE_LIMIT_WINDOW_MS
- Environment variable:
- CORS Configuration: Secure cross-origin resource sharing for web applications
- Environment variable:
ENABLE_CORS=true - Supports GET, POST, DELETE, OPTIONS methods
- Headers: Content-Type, mcp-session-id, Authorization
- Environment variable:
- Security Headers: Web security best practices when
ENABLE_SECURITY_FEATURES=true- X-Content-Type-Options, X-Frame-Options, X-XSS-Protection
- Referrer-Policy, Strict-Transport-Security (HTTPS only)
- Request Size Limits: Prevents memory exhaustion attacks
- Configurable limit:
MAX_REQUEST_SIZE=10mb(default) - Hard limit: 50MB maximum
- Configurable limit:
- Security Monitoring: Comprehensive logging and health endpoint
- Health endpoint:
/healthshows security status - Security event logging: origin validation, rate limits, violations
- Log levels: DEBUG, INFO, WARN, ERROR for security events
- Health endpoint:
- Zero Breaking Changes: All security features are opt-in and disabled by default
- Existing clients (Claude Desktop, n8n, MCP Inspector) work unchanged
- No configuration changes required for current users
- Backwards compatibility thoroughly tested and verified
- HTTPS/TLS Support: Added optional HTTPS server alongside HTTP for encrypted communication
🐛 Bug Fixes
-
Fixed Gemini compatibility (Issue #79):
- Root cause: Priority enum values were defined as numbers
[1, 2, 3, 4, null]but Gemini API expects strings - Solution: Updated priority enum to use string values
["1", "2", "3", "4", null]inupdate_taskandupdate_bulk_taskstools - Schema changes: Changed type from
"number"to"string"for priority field in affected tools - Backward compatibility: Maintained via existing
toTaskPriority()function that handles string-to-number conversion - Impact: Resolves schema validation errors in Cursor IDE and other Gemini-based MCP clients
- Affected tools:
update_task_ClickUp__Local_andupdate_bulk_tasks_ClickUp__Local_ - Testing: Verified priority setting and removal functionality works correctly
- Root cause: Priority enum values were defined as numbers
-
Fixed priority null handling in task updates (Issue #23):
- Fixed
update_tasktool failing when setting priority tonullto clear/remove priority - Modified
buildUpdateDatafunction to usetoTaskPriorityhelper for proper null value conversion - Priority updates now work correctly for both setting valid values (1-4) and clearing priority (null)
- Bulk task updates (
update_bulk_tasks) already worked correctly and continue to function properly
- Fixed
-
Fixed subtasks not being retrieved (Issue #69):
- Fixed
getSubtasksmethod intask-core.tsto include required query parameters - Added
subtasks=trueandinclude_subtasks=trueparameters to ClickUp API call - Subtasks are now properly retrieved and displayed when using
get_tasktool withsubtasks=true - Resolves issue where subtasks arrays were always empty despite subtasks existing in ClickUp
- Fixed
🔧 Compatibility Improvements
- Enhanced MCP Client Support: Improved compatibility with Cursor IDE and Gemini-based MCP clients
- Schema Standardization: Aligned tool schemas with MCP protocol best practices for broader client support
- Testing Coverage: Verified functionality across multiple MCP client implementations
v0.8.3
v0.8.3 Release Notes
🚀 New Features & Improvements
-
Enhanced workspace tasks filtering with Views API support (Issue #43):
-
Enhanced list filtering: When
list_idsare provided,get_workspace_tasksnow uses ClickUp's Views API for comprehensive task coverage -
Multi-list task support: Now retrieves tasks that are associated with specified lists, including tasks created elsewhere and added to multiple lists
-
Two-tier filtering strategy:
- Server-side filtering: Supported filters applied at ClickUp API level for efficiency (statuses, assignees, dates, etc.)
- Client-side filtering: Additional filters applied after data retrieval (tags, folder_ids, space_ids)
-
API endpoints used:
GET /list/{listId}/view- Retrieves list views and identifies default list viewGET /view/{viewId}/task- Retrieves all tasks associated with the view/list
-
Performance optimizations:
- Concurrent API calls for multiple lists using
Promise.all() - Task deduplication to prevent duplicate results
- Automatic summary format switching for large result sets
- Safety limits to prevent infinite pagination loops
- Concurrent API calls for multiple lists using
-
Robust error handling: Graceful degradation when some lists fail, comprehensive logging
-
Backward compatibility: Existing functionality unchanged when
list_idsnot provided -
Impact: Addresses ClickUp's "tasks in multiple lists" feature, providing complete task coverage for list-based queries
Thanks @dantearaujo for the help!
-
-
Added ENABLED_TOOLS configuration option (PR #39 & Issue #50):
- Added
ENABLED_TOOLSenvironment variable and command line argument support - Allows specifying exactly which tools should be available via comma-separated list
- Provides complementary functionality to existing
DISABLED_TOOLSoption - Precedence logic:
ENABLED_TOOLStakes precedence overDISABLED_TOOLSwhen both are specified - Configuration options:
ENABLED_TOOLS=tool1,tool2- Only enable specified toolsDISABLED_TOOLS=tool1,tool2- Disable specified tools (legacy approach)- If neither specified, all tools are available (default behavior)
- Enhanced tool filtering:
- Updated
ListToolsRequestSchemahandler to use new filtering logic - Updated
CallToolRequestSchemahandler with improved error messages - Clear distinction between "disabled" vs "not in enabled tools list" errors
- Updated
- Impact: Users can now precisely control tool availability for security, context limitations, or workflow optimization
- Backward compatibility: Existing
DISABLED_TOOLSfunctionality unchanged
Thanks @somework & @colinmollenhour for the help!
- Added
🛠️ Bug Fixes
- Fixed automatic priority assignment in task creation:
- Fixed issue where
create_taskandcreate_bulk_taskstools were automatically setting priorities even when users didn't specify one - Root cause: Priority field was unconditionally included in API requests as
undefined, which ClickUp interpreted as a request to set a default priority - Solution: Priority field is now only included in API requests when explicitly provided by the user
- Impact: Tasks created without specifying a priority will now have
priority: nullinstead of an automatically assigned priority - Affected tools:
create_task_ClickUp__Local_andcreate_bulk_tasks_ClickUp__Local_ - Backward compatibility: Tasks created with explicit priority values continue to work unchanged
- Fixed issue where
v0.8.2
v0.8.2 Release Notes
🎯 Critical Bug Fixes & Enhanced Functionality
v0.8.2 is a significant patch release that fixes critical task assignment functionality and enhances workspace task visibility. This release resolves major issues that were preventing users from properly assigning tasks and accessing subtasks.
🛠️ Major Bug Fixes
Fixed Task Assignment Feature Not Working (Issue #48)
- Issue: Task assignees were not being properly assigned despite successful API responses
- Root Cause: Missing assignee resolution logic in task creation and update handlers
- Solution: Added comprehensive assignee resolution supporting multiple input formats:
- Numeric user IDs (e.g.,
96055451) - Email addresses (e.g.,
"[email protected]") - Usernames (e.g.,
"John Doe") - Mixed format arrays (e.g.,
[96055451, "[email protected]"])
- Numeric user IDs (e.g.,
Enhanced Task Handlers with Automatic Assignee Resolution
create_task- Now resolves assignees before task creationupdate_task- Now resolves assignees during task updatescreate_bulk_tasks- Now resolves assignees for each task in bulk operations- Smart deduplication for duplicate assignees in mixed format requests
- Graceful error handling for unresolvable assignees (continues with resolved ones)
Fixed Task Due Date Updates Not Working (Issue #49)
- Issue:
update_taskreturned success but didn't actually update due dates - Root Cause:
updateTaskHandlerwas not callingbuildUpdateData()to parse date strings into timestamps - Enhanced natural language date parsing to support complex formats:
- Day names: "Monday", "Friday", "Saturday", etc.
- Time parsing: "Monday at 3pm EST", "Friday at 2:30pm", etc.
- "Next" prefix handling: "next Friday", "next Monday", etc.
- Improved fallback parsing with multiple strategies and validation
Fixed Subtask Visibility in Workspace Tasks (Issue #56)
- Issue: Users couldn't see subtasks through workspace-wide queries
- Solution: Added missing
subtasksparameter toget_workspace_taskstool - Enhanced parameters: Added
include_subtasks,include_compact_time_entries, andcustom_fieldsfor completeness - Clarified behavior: Subtasks must still match other filter criteria (tags, lists, etc.) to appear in results
- Alternative: Use
get_tasktool withsubtasks=trueto see all subtasks regardless of filters
🎯 Impact & Benefits
Task Assignment Now Fully Functional
- ✅ All documented assignee formats work correctly: User IDs, emails, usernames, and mixed arrays
- ✅ Seamless integration: Works across create, update, and bulk operations
- ✅ Smart resolution: Automatically converts emails/usernames to user IDs
- ✅ Error resilience: Continues with resolved assignees even if some fail
Enhanced Date Handling
- ✅ Natural language support: "tomorrow", "Monday at 3pm EST", "next Friday"
- ✅ Multiple formats: Unix timestamps, "MM/DD/YYYY", relative times like "2 hours from now"
- ✅ Reliable updates: Due date changes now persist correctly
Improved Workspace Visibility
- ✅ Subtask access: View subtasks through workspace-wide queries when they match criteria
- ✅ Enhanced filtering: More comprehensive parameter support for workspace tasks
- ✅ Clear documentation: Better understanding of how subtask filtering works
🧪 Testing & Validation
This release underwent comprehensive testing with real ClickUp API integration:
- ✅ Task assignment with user IDs - Direct numeric user ID assignment
- ✅ Task assignment with emails - Email address resolved to user ID
- ✅ Task assignment with usernames - Username resolved to user ID
- ✅ Task updates with assignees - Existing task updated with assignee via email
- ✅ Bulk task creation - Multiple tasks created with different assignee formats
- ✅ Mixed format assignment - User ID and email in same request (properly deduplicated)
🔗 Issues Resolved
- #48: Task Assignment Feature Not Working through ClickUp MCP Integration API
- #49: update_task not updating due dates
- #56: Can't see sub-tasks
🚀 Quick Start
No configuration changes required - all fixes are automatically available:
# STDIO Transport (Default)
npx @taazkareem/clickup-mcp-server \
--env CLICKUP_API_KEY=your-key \
--env CLICKUP_TEAM_ID=your-team-id
# HTTP Streamable Transport
ENABLE_SSE=true PORT=3231 npx @taazkareem/clickup-mcp-server \
--env CLICKUP_API_KEY=your-key \
--env CLICKUP_TEAM_ID=your-team-id🔄 Migration Notes
✅ Zero Breaking Changes
- All existing integrations continue to work unchanged
- Enhanced functionality is automatically available
- No configuration changes required
- All existing tools preserved and enhanced
🙏 Thank You
Special thanks to our community for reporting these critical issues:
- Issue reporters who identified the task assignment and due date problems
- Users who provided detailed reproduction steps
- Contributors who helped validate the fixes
Your feedback continues to drive improvements and make ClickUp MCP Server better for everyone!
v0.8.1
v0.8.1 Release Notes
🛠️ Critical Schema Fix
v0.8.1 is a patch release that fixes a critical schema validation issue that prevented the MCP server from starting.
Bug Fix
- Fixed JSON Schema Validation Error: Removed invalid
optional: truekeywords from document tool schemas- Issue: Server failed to start with error:
Invalid schema for tool list_document_pages: strict mode: unknown keyword: "optional" - Root Cause: Document tools were using
optional: truewhich is not a valid JSON Schema keyword - Solution: Removed
optionalkeywords from all document tool schemas (optional properties are handled by therequiredarray) - Tools Fixed:
list_document_pages,get_document_pages,create_document_page,update_document_page
- Issue: Server failed to start with error:
Impact
- ✅ Server now starts correctly without schema validation errors
- ✅ All tools load properly and are fully functional
- ✅ Zero breaking changes - all existing functionality preserved
- ✅ Immediate fix for users experiencing startup issues
Technical Details
In JSON Schema specification, optional properties are defined by omitting them from the required array, not by using an optional keyword. This fix ensures compliance with strict JSON Schema validation.
v0.8.0 Release Notes
🎉 Major Release: Architectural Revolution & Member Management
We're thrilled to announce v0.8.0 - our most significant release yet! This version delivers a complete architectural overhaul, massive performance improvements, and powerful new member management capabilities.
🏗️ Massive Architectural Improvements
70% Codebase Reduction
- Before: 1,566 total lines across server files
- After: 466 total lines
- Eliminated 1,100+ lines of duplicated code (89% reduction in SSE server)
- Single source of truth for server configuration
- Unified architecture supporting all transport types
Transport Architecture Revolution
- HTTP Streamable Transport: Modern MCP protocol support
- Legacy SSE Transport: Backward compatibility maintained
- STDIO Transport: Enhanced and optimized
- Unified Server Configuration: All transports share the same tool definitions
- Zero Code Duplication: Clean, maintainable architecture
🚀 New Features
Member Management Tools
Three powerful new tools for workspace member management:
get_workspace_members- Retrieve all workspace members with complete detailsfind_member_by_name- Find specific members by name or email addressresolve_assignees- Convert names/emails to ClickUp user IDs
Enhanced Task Assignment
- Assignees parameter added to
create_task,update_task,create_bulk_tasks, andupdate_bulk_tasks - Complete assignment workflow: Create tasks with assignees AND update existing task assignments
- Flexible assignment: Support for user IDs, emails, or usernames
- Seamless integration: Works across all transport types
🔧 Configuration & Endpoints
Updated Configuration Options
| Option | Description | Default |
|---|---|---|
ENABLE_SSE |
Enable HTTP/SSE transport | false |
PORT |
HTTP server port | 3231 |
ENABLE_STDIO |
Enable STDIO transport | true |
HTTP Server Endpoints
/mcp- HTTP Streamable endpoint (MCP Inspector compatible)/sse- Legacy SSE endpoint (backward compatibility)
🚀 Quick Start
STDIO Transport (Default)
npx @taazkareem/clickup-mcp-server \
--env CLICKUP_API_KEY=your-key \
--env CLICKUP_TEAM_ID=your-team-idHTTP Streamable Transport
ENABLE_SSE=true PORT=3231 npx @taazkareem/clickup-mcp-server \
--env CLICKUP_API_KEY=your-key \
--env CLICKUP_TEAM_ID=your-team-idTest with MCP Inspector
# Start server
ENABLE_SSE=true PORT=3231 npm start
# In another terminal
npx @modelcontextprotocol/inspector
# Connect to: http://127.0.0.1:3231/mcp🔄 Migration Notes
✅ Zero Breaking Changes
- All existing integrations continue to work unchanged
- STDIO transport remains the default
- All 30 original tools preserved and enhanced
- Backward compatibility maintained for SSE endpoints
� Performance Impact
Before v0.8.0
- Duplicated tool definitions across transport files
- Maintenance overhead from code duplication
- Inconsistent tool availability across transports
After v0.8.0
- Unified tool registry - consistent experience across all transports
- Clean architecture - faster development of new features
- Zero regressions - all existing functionality preserved
📦 Dependencies
- All existing dependencies remain unchanged
- No new dependencies added (leverages existing express/cors from previous versions)
- Maintained compatibility with all MCP SDK versions
🧪 Testing & Validation
This release underwent comprehensive testing:
- ✅ All 36 tools validated (33 original + 3 new member tools)
- ✅ STDIO transport - Full functionality verified
- ✅ HTTP Streamable transport - MCP Inspector compatibility confirmed
- ✅ Legacy SSE transport - Backward compatibility maintained
- ✅ Member management - Real ClickUp API integration tested
🙏 Thank You
This release represents the most significant architectural improvement in ClickUp MCP Server's history. The unified architecture, massive code reduction, and new member management capabilities make this server more powerful, maintainable, and user-friendly than ever before.
Key Contributors:
- Architectural design and implementation
- Comprehensive testing and validation
- Documentation and release preparation
Your feedback and contributions continue to drive this project forward!
Previous Release: v0.7.2 (2025-04-25)
🛠️ Bug Fixes
- Fixed time estimate support in task updates:
- Removed redundant field-specific validation check in task update operations
- Simplified validation to check only for the presence of update fields
- Fixed "At least one field to update must be provided" error when using time_estimate
- Added time string parsing for converting formats like "2h 30m" to minutes
- Improved tool description for clear guidance on supported formats
- Ensures compatibility with all fields defined in the UpdateTaskData type
🙏 Thank You
Special thanks to our contributors
Your feedback helps make ClickUp MCP Server better for everyone!
v0.8.0
v0.8.0 Release Notes
🎉 Major Release: Architectural Revolution & Member Management
We're thrilled to announce v0.8.0 - our most significant release yet! This version delivers a complete architectural overhaul, massive performance improvements, and powerful new member management capabilities.
🏗️ Massive Architectural Improvements
70% Codebase Reduction
- Before: 1,566 total lines across server files
- After: 466 total lines
- Eliminated 1,100+ lines of duplicated code (89% reduction in SSE server)
- Single source of truth for server configuration
- Unified architecture supporting all transport types
Transport Architecture Revolution
- HTTP Streamable Transport: Modern MCP protocol support
- Legacy SSE Transport: Backward compatibility maintained
- STDIO Transport: Enhanced and optimized
- Unified Server Configuration: All transports share the same tool definitions
- Zero Code Duplication: Clean, maintainable architecture
🚀 New Features
Member Management Tools
Three powerful new tools for workspace member management:
get_workspace_members- Retrieve all workspace members with complete detailsfind_member_by_name- Find specific members by name or email addressresolve_assignees- Convert names/emails to ClickUp user IDs
Enhanced Task Assignment
- Assignees parameter added to
create_task,update_task,create_bulk_tasks, andupdate_bulk_tasks - Complete assignment workflow: Create tasks with assignees AND update existing task assignments
- Flexible assignment: Support for user IDs, emails, or usernames
- Seamless integration: Works across all transport types
🔧 Configuration & Endpoints
Updated Configuration Options
| Option | Description | Default |
|---|---|---|
ENABLE_SSE |
Enable HTTP/SSE transport | false |
PORT |
HTTP server port | 3231 |
ENABLE_STDIO |
Enable STDIO transport | true |
HTTP Server Endpoints
/mcp- HTTP Streamable endpoint (MCP Inspector compatible)/sse- Legacy SSE endpoint (backward compatibility)
🚀 Quick Start
STDIO Transport (Default)
npx @taazkareem/clickup-mcp-server \
--env CLICKUP_API_KEY=your-key \
--env CLICKUP_TEAM_ID=your-team-idHTTP Streamable Transport
ENABLE_SSE=true PORT=3231 npx @taazkareem/clickup-mcp-server \
--env CLICKUP_API_KEY=your-key \
--env CLICKUP_TEAM_ID=your-team-idTest with MCP Inspector
# Start server
ENABLE_SSE=true PORT=3231 npm start
# In another terminal
npx @modelcontextprotocol/inspector
# Connect to: http://127.0.0.1:3231/mcp🔄 Migration Notes
✅ Zero Breaking Changes
- All existing integrations continue to work unchanged
- STDIO transport remains the default
- All 30 original tools preserved and enhanced
- Backward compatibility maintained for SSE endpoints
� Performance Impact
Before v0.8.0
- Duplicated tool definitions across transport files
- Maintenance overhead from code duplication
- Inconsistent tool availability across transports
After v0.8.0
- 70% smaller codebase - easier to maintain and extend
- Unified tool registry - consistent experience across all transports
- Clean architecture - faster development of new features
- Zero regressions - all existing functionality preserved
📦 Dependencies
- All existing dependencies remain unchanged
- No new dependencies added (leverages existing express/cors from previous versions)
- Maintained compatibility with all MCP SDK versions
🧪 Testing & Validation
This release underwent comprehensive testing:
- ✅ All 36 tools validated (33 original + 3 new member tools)
- ✅ STDIO transport - Full functionality verified
- ✅ HTTP Streamable transport - MCP Inspector compatibility confirmed
- ✅ Legacy SSE transport - Backward compatibility maintained
- ✅ Member management - Real ClickUp API integration tested
🙏 Thank You
This release represents the most significant architectural improvement in ClickUp MCP Server's history. The unified architecture, massive code reduction, and new member management capabilities make this server more powerful, maintainable, and user-friendly than ever before.
Key Contributors:
- Architectural design and implementation
- Comprehensive testing and validation
- Documentation and release preparation
Your feedback and contributions continue to drive this project forward!
Previous Release: v0.7.2 (2025-04-25)
🛠️ Bug Fixes
- Fixed time estimate support in task updates:
- Removed redundant field-specific validation check in task update operations
- Simplified validation to check only for the presence of update fields
- Fixed "At least one field to update must be provided" error when using time_estimate
- Added time string parsing for converting formats like "2h 30m" to minutes
- Improved tool description for clear guidance on supported formats
- Ensures compatibility with all fields defined in the UpdateTaskData type
🙏 Thank You
Special thanks to our contributors who reported and helped fix this issue:
- @m-roberts - Reporting and suggesting fix for the time estimate update issue
Your feedback helps make ClickUp MCP Server better for everyone!
v0.7.2
v0.7.2 Release Notes (2025-04-25)
🛠️ Bug Fixes
- Fixed time estimate support in task updates:
- Removed redundant field-specific validation check in task update operations
- Simplified validation to check only for the presence of update fields
- Fixed "At least one field to update must be provided" error when using time_estimate
- Added time string parsing for converting formats like "2h 30m" to minutes
- Improved tool description for clear guidance on supported formats
- Ensures compatibility with all fields defined in the UpdateTaskData type
📦 Dependencies
- No dependency changes in this release
🙏 Thank You
Special thanks to our contributors who reported and helped fix this issue:
- @m-roberts - Reporting and suggesting fix for the time estimate update issue
Your feedback helps make ClickUp MCP Server better for everyone!
v0.7.1
v0.7.1 Release Notes (2025-04-24)
🚀 New Features & Improvements
-
Added Documents Module with comprehensive capabilities:
- Complete document lifecycle management (create, list, search, update)
- Page-level operations for creating and modifying document content
- Optional activation via
DOCUMENT_SUPPORT=trueenvironment variable - Full compatibility with ClickUp API V3 for document operations
- Seamless integration with existing workspace navigation
-
Added Time Tracking Suite with comprehensive tools:
- View and manage time entries for tasks with flexible filtering
- Start/stop time tracking with one command
- Add manual time entries with natural language duration support
- Track billable and non-billable time
- Delete unwanted time entries
- Monitor currently running timers across workspace
-
Added Command Disabling Capability:
- Selective tool access via
DISABLED_TOOLSenvironment variable - Comma-separated command list for granular control
- Compatible with both environment variables and command line arguments
- Clear error messages when attempting to use disabled commands
- Enhanced security for production deployments
- Selective tool access via
🛠️ Bug Fixes & Improvements
-
Fixed custom task ID lookup in
getTaskByCustomIdmethod:- Corrected API endpoint from
/task/custom_task_idsto/task/{id}with proper parameters - Added required
custom_task_ids=trueandteam_idparameters for proper authentication - Fixed "Authorization failed" error when retrieving tasks by custom ID
- Improved error handling and logging for custom ID operations
- Corrected API endpoint from
-
Fixed JSON schema compatibility issues for third-party integrations
-
Enhanced custom field handling in task update operations
-
Improved error handling and validation across all new tools
-
Optimized response formatting for consistent output
📦 Dependencies
- No dependency changes in this release
🔄 Repository Updates
- Comprehensive documentation updates for all new features
- Enhanced API reference with examples for document and time tracking operations
- Added configuration guides for new environment variables
- Improved tool descriptions and parameter documentation
🙏 Thank You
Special thanks to our contributors who made this release possible:
- @jsb989 - Document support implementation
- @quitequinn - Time tracking functionality
- @somework - Tool disabling feature
- @Nemo64 - JSON schema compatibility improvements
- @FruitSwimer - Custom field update fixes
Your contributions have significantly improved the ClickUp MCP Server!
v0.7.0
v0.7.0 Release Notes (2025-04-24)
🚀 New Features & Improvements
-
Added Documents Module with comprehensive capabilities:
- Complete document lifecycle management (create, list, search, update)
- Page-level operations for creating and modifying document content
- Optional activation via
DOCUMENT_SUPPORT=trueenvironment variable - Full compatibility with ClickUp API V3 for document operations
- Seamless integration with existing workspace navigation
-
Added Time Tracking Suite with comprehensive tools:
- View and manage time entries for tasks with flexible filtering
- Start/stop time tracking with one command
- Add manual time entries with natural language duration support
- Track billable and non-billable time
- Delete unwanted time entries
- Monitor currently running timers across workspace
-
Added Command Disabling Capability:
- Selective tool access via
DISABLED_TOOLSenvironment variable - Comma-separated command list for granular control
- Compatible with both environment variables and command line arguments
- Clear error messages when attempting to use disabled commands
- Enhanced security for production deployments
- Selective tool access via
🛠️ Bug Fixes & Improvements
- Fixed JSON schema compatibility issues for third-party integrations
- Enhanced custom field handling in task update operations
- Improved error handling and validation across all new tools
- Optimized response formatting for consistent output
📦 Dependencies
- No dependency changes in this release
🔄 Repository Updates
- Comprehensive documentation updates for all new features
- Enhanced API reference with examples for document and time tracking operations
- Added configuration guides for new environment variables
- Improved tool descriptions and parameter documentation
🙏 Thank You
Special thanks to our contributors who made this release possible:
- @jsb989 - Document support implementation
- @quitequinn - Time tracking functionality
- @somework - Command disabling feature
- @Nemo64 - JSON schema compatibility improvements
- @FruitSwimer - Custom field update fixes
Your contributions have significantly improved the ClickUp MCP Server!
v0.6.9
v0.6.9 Release Notes (2025-04-03)
🚀 New Features & Improvements
- Enhanced token limit protection for workspace tasks:
- Added handler-level token limit validation with 50,000 token threshold
- Implemented dual-layer protection at both service and handler levels
- Smart response format switching based on estimated response size
- Automatic fallback to summary format for large responses
- Added token estimation utilities for accurate size prediction
- Improved logging for format switching events
- Zero configuration required - works automatically
- Maintains backward compatibility with existing implementations
📦 Dependencies
- No dependency changes in this release
🔄 Repository Updates
- Updated task handler implementation with token limit checks
- Added token estimation utilities for task responses
- Enhanced documentation with token limit behavior details