feat: add support for custom task IDs (e.g., CHIEF-5804)#15
Open
jon-daniels-chief wants to merge 1 commit into
Open
feat: add support for custom task IDs (e.g., CHIEF-5804)#15jon-daniels-chief wants to merge 1 commit into
jon-daniels-chief wants to merge 1 commit into
Conversation
All task-related tools now accept custom task IDs in addition to internal IDs. When a custom task ID is detected (format: PREFIX-NUMBER), the API calls automatically include custom_task_ids=true and team_id parameters as required by the ClickUp API. Changes: - Add isCustomTaskId() helper function to detect custom ID format - Update isTaskId() to validate both internal and custom ID formats - Relax task_id validation across all tools (getTaskById, updateTask, addComment, searchTasks, getTimeEntries, createTimeEntry) - Inject custom_task_ids=true and team_id params for API calls with custom IDs - Update tool descriptions to document custom ID support Co-Authored-By: Claude <noreply@anthropic.com>
Author
|
@Nemo64 I tried to add as much context here as possible to make it easy to see. Also wanted to say thanks cuz I've been using and loving this MCP so far! |
Alorse
added a commit
to Alorse/clickup-mcp
that referenced
this pull request
Mar 20, 2026
Merged from hauptsacheNet#15 by jon-daniels-chief. All task-related tools now accept custom task IDs in addition to internal IDs. When a custom task ID is detected (format: PREFIX-NUMBER), the API calls automatically include custom_task_ids=true and team_id parameters as required by the ClickUp API. Changes: - Add isCustomTaskId() helper function to detect custom ID format - Update isTaskId() to validate both internal and custom ID formats - Relax task_id validation across all tools (getTaskById, updateTask, addComment, searchTasks, getTimeEntries, createTimeEntry) - Inject custom_task_ids=true and team_id params for API calls with custom IDs - Update tool descriptions to document custom ID support Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds support for custom task IDs (e.g.,
CHIEF-5804) in addition to internal IDs (e.g.,86b852ppx). When a custom task ID is detected, the API calls automatically includecustom_task_ids=trueandteam_idparameters as required by the ClickUp API.Problem
The MCP currently only accepts internal 6-9 character task IDs. Users who use ClickUp's custom task ID feature cannot reference tasks by their custom IDs.
Solution
^[A-Z]+-\d+$(e.g.,CHIEF-5804,PROJ-123)custom_task_ids=trueandteam_idquery parameters for API calls when custom IDs are usedFiles Changed
isCustomTaskId()helper, updatedisTaskId()to validate both formatsloadTaskContent,loadTaskComments,loadTimeInStatusHistoryaddCommentandupdateTask, added custom ID params to all API calls (fetch, update, tag add/remove, refresh)getTimeEntriesandcreateTimeEntryTesting Done
npm run build✅Test Plan for Reviewer
getTaskByIdwith custom ID (e.g.,CHIEF-5804) - should fetch task correctlygetTaskByIdwith internal ID (e.g.,86b852ppx) - should still work (backwards compatible)updateTaskwith custom IDaddCommentwith custom IDsearchTaskswith custom ID in terms array - should find via direct fetchgetTimeEntrieswith custom ID filtercreateTimeEntrywith custom IDNotes
CLICKUP_TEAM_IDenv var is already required by this MCP, so no new configuration is needed🤖 Generated with Claude Code