@taazkareem/clickup-mcp-server 0.4.18 → 0.4.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/build/index.js +260 -245
  2. package/package.json +2 -3
package/build/index.js CHANGED
@@ -49,264 +49,279 @@ catch (error) {
49
49
  * Sets up capabilities, tools, and error handling
50
50
  */
51
51
  logDebug('mcp', { status: 'creating' });
52
- const server = new Server({
53
- name: "clickup-mcp-server",
54
- version: "0.4.14",
55
- transport: new StdioServerTransport(),
56
- capabilities: {
57
- tools: {
58
- workspace_hierarchy: {
59
- description: "List complete hierarchy of the ClickUp workspace",
60
- inputSchema: {
61
- type: "object",
62
- properties: {},
63
- required: []
64
- }
65
- },
66
- create_task: {
67
- description: "Create a new task in ClickUp",
68
- inputSchema: {
69
- type: "object",
70
- properties: {
71
- listId: {
72
- type: "string",
73
- description: "ID of the list to create the task in (optional if listName is provided)"
74
- },
75
- listName: {
76
- type: "string",
77
- description: "Name of the list to create the task in (optional if listId is provided)"
78
- },
79
- name: {
80
- type: "string",
81
- description: "Name of the task"
82
- },
83
- description: {
84
- type: "string",
85
- description: "Description of the task"
86
- },
87
- status: {
88
- type: "string",
89
- description: "Status of the task"
90
- },
91
- priority: {
92
- type: "number",
93
- description: "Priority of the task (1-4)"
94
- },
95
- dueDate: {
96
- type: "string",
97
- description: "Due date of the task (ISO string)"
98
- }
52
+ // Define server capabilities
53
+ const serverCapabilities = {
54
+ tools: {
55
+ workspace_hierarchy: {
56
+ description: "List complete hierarchy of the ClickUp workspace",
57
+ inputSchema: {
58
+ type: "object",
59
+ properties: {},
60
+ required: []
61
+ }
62
+ },
63
+ create_task: {
64
+ description: "Create a new task in ClickUp",
65
+ inputSchema: {
66
+ type: "object",
67
+ properties: {
68
+ listId: {
69
+ type: "string",
70
+ description: "ID of the list to create the task in (optional if listName is provided)"
99
71
  },
100
- required: ["name"]
101
- }
102
- },
103
- create_bulk_tasks: {
104
- description: "Create multiple tasks simultaneously in a list",
105
- inputSchema: {
106
- type: "object",
107
- properties: {
108
- listId: {
109
- type: "string",
110
- description: "ID of the list to create tasks in (optional if listName is provided)"
111
- },
112
- listName: {
113
- type: "string",
114
- description: "Name of the list to create tasks in (optional if listId is provided)"
115
- },
116
- tasks: {
117
- type: "array",
118
- description: "Array of tasks to create",
119
- items: {
120
- type: "object",
121
- properties: {
122
- name: {
123
- type: "string",
124
- description: "Name of the task"
125
- },
126
- description: {
127
- type: "string",
128
- description: "Description of the task"
129
- },
130
- status: {
131
- type: "string",
132
- description: "Status of the task"
133
- },
134
- priority: {
135
- type: "number",
136
- description: "Priority of the task (1-4)"
137
- },
138
- dueDate: {
139
- type: "string",
140
- description: "Due date of the task (ISO string)"
141
- }
72
+ listName: {
73
+ type: "string",
74
+ description: "Name of the list to create the task in (optional if listId is provided)"
75
+ },
76
+ name: {
77
+ type: "string",
78
+ description: "Name of the task"
79
+ },
80
+ description: {
81
+ type: "string",
82
+ description: "Description of the task"
83
+ },
84
+ status: {
85
+ type: "string",
86
+ description: "Status of the task"
87
+ },
88
+ priority: {
89
+ type: "number",
90
+ description: "Priority of the task (1-4)"
91
+ },
92
+ dueDate: {
93
+ type: "string",
94
+ description: "Due date of the task (ISO string)"
95
+ }
96
+ },
97
+ required: ["name"]
98
+ }
99
+ },
100
+ create_bulk_tasks: {
101
+ description: "Create multiple tasks simultaneously in a list",
102
+ inputSchema: {
103
+ type: "object",
104
+ properties: {
105
+ listId: {
106
+ type: "string",
107
+ description: "ID of the list to create tasks in (optional if listName is provided)"
108
+ },
109
+ listName: {
110
+ type: "string",
111
+ description: "Name of the list to create tasks in (optional if listId is provided)"
112
+ },
113
+ tasks: {
114
+ type: "array",
115
+ description: "Array of tasks to create",
116
+ items: {
117
+ type: "object",
118
+ properties: {
119
+ name: {
120
+ type: "string",
121
+ description: "Name of the task"
122
+ },
123
+ description: {
124
+ type: "string",
125
+ description: "Description of the task"
126
+ },
127
+ status: {
128
+ type: "string",
129
+ description: "Status of the task"
130
+ },
131
+ priority: {
132
+ type: "number",
133
+ description: "Priority of the task (1-4)"
142
134
  },
143
- required: ["name"]
144
- }
135
+ dueDate: {
136
+ type: "string",
137
+ description: "Due date of the task (ISO string)"
138
+ }
139
+ },
140
+ required: ["name"]
145
141
  }
142
+ }
143
+ },
144
+ required: ["tasks"]
145
+ }
146
+ },
147
+ create_list: {
148
+ description: "Create a new list in a space",
149
+ inputSchema: {
150
+ type: "object",
151
+ properties: {
152
+ spaceId: {
153
+ type: "string",
154
+ description: "ID of the space (optional if spaceName is provided)"
146
155
  },
147
- required: ["tasks"]
148
- }
149
- },
150
- create_list: {
151
- description: "Create a new list in a space",
152
- inputSchema: {
153
- type: "object",
154
- properties: {
155
- spaceId: {
156
- type: "string",
157
- description: "ID of the space (optional if spaceName is provided)"
158
- },
159
- spaceName: {
160
- type: "string",
161
- description: "Name of the space (optional if spaceId is provided)"
162
- },
163
- name: {
164
- type: "string",
165
- description: "Name of the list"
166
- },
167
- content: {
168
- type: "string",
169
- description: "List description"
170
- }
156
+ spaceName: {
157
+ type: "string",
158
+ description: "Name of the space (optional if spaceId is provided)"
171
159
  },
172
- required: ["name"]
173
- }
174
- },
175
- create_folder: {
176
- description: "Create a new folder in a space",
177
- inputSchema: {
178
- type: "object",
179
- properties: {
180
- spaceId: {
181
- type: "string",
182
- description: "ID of the space (optional if spaceName is provided)"
183
- },
184
- spaceName: {
185
- type: "string",
186
- description: "Name of the space (optional if spaceId is provided)"
187
- },
188
- name: {
189
- type: "string",
190
- description: "Name of the folder"
191
- },
192
- override_statuses: {
193
- type: "boolean",
194
- description: "Whether to override space statuses"
195
- }
160
+ name: {
161
+ type: "string",
162
+ description: "Name of the list"
196
163
  },
197
- required: ["name"]
198
- }
199
- },
200
- create_list_in_folder: {
201
- description: "Create a new list within a folder",
202
- inputSchema: {
203
- type: "object",
204
- properties: {
205
- folderId: {
206
- type: "string",
207
- description: "ID of the folder (optional if using folderName)"
208
- },
209
- folderName: {
210
- type: "string",
211
- description: "Name of the folder"
212
- },
213
- spaceId: {
214
- type: "string",
215
- description: "ID of the space (required if using folderName)"
216
- },
217
- spaceName: {
218
- type: "string",
219
- description: "Name of the space (alternative to spaceId)"
220
- },
221
- name: {
222
- type: "string",
223
- description: "Name of the list"
224
- },
225
- content: {
226
- type: "string",
227
- description: "List description"
228
- }
164
+ content: {
165
+ type: "string",
166
+ description: "List description"
167
+ }
168
+ },
169
+ required: ["name"]
170
+ }
171
+ },
172
+ create_folder: {
173
+ description: "Create a new folder in a space",
174
+ inputSchema: {
175
+ type: "object",
176
+ properties: {
177
+ spaceId: {
178
+ type: "string",
179
+ description: "ID of the space (optional if spaceName is provided)"
229
180
  },
230
- required: ["name"]
231
- }
232
- },
233
- move_task: {
234
- description: "Move a task to a different list",
235
- inputSchema: {
236
- type: "object",
237
- properties: {
238
- taskId: {
239
- type: "string",
240
- description: "ID of the task to move"
241
- },
242
- listId: {
243
- type: "string",
244
- description: "ID of destination list (optional if listName is provided)"
245
- },
246
- listName: {
247
- type: "string",
248
- description: "Name of destination list (optional if listId is provided)"
249
- }
181
+ spaceName: {
182
+ type: "string",
183
+ description: "Name of the space (optional if spaceId is provided)"
250
184
  },
251
- required: ["taskId"]
252
- }
253
- },
254
- duplicate_task: {
255
- description: "Create a copy of a task in a specified list",
256
- inputSchema: {
257
- type: "object",
258
- properties: {
259
- taskId: {
260
- type: "string",
261
- description: "ID of the task to duplicate"
262
- },
263
- listId: {
264
- type: "string",
265
- description: "ID of destination list (optional if listName is provided)"
266
- },
267
- listName: {
268
- type: "string",
269
- description: "Name of destination list (optional if listId is provided)"
270
- }
185
+ name: {
186
+ type: "string",
187
+ description: "Name of the folder"
271
188
  },
272
- required: ["taskId"]
273
- }
274
- },
275
- update_task: {
276
- description: "Update an existing task",
277
- inputSchema: {
278
- type: "object",
279
- properties: {
280
- taskId: {
281
- type: "string",
282
- description: "ID of the task to update"
283
- },
284
- name: {
285
- type: "string",
286
- description: "New task name"
287
- },
288
- description: {
289
- type: "string",
290
- description: "New description"
291
- },
292
- status: {
293
- type: "string",
294
- description: "New status"
295
- },
296
- priority: {
297
- type: "number",
298
- description: "New priority level (1-4)"
299
- },
300
- dueDate: {
301
- type: "string",
302
- description: "New due date (ISO string)"
303
- }
189
+ override_statuses: {
190
+ type: "boolean",
191
+ description: "Whether to override space statuses"
192
+ }
193
+ },
194
+ required: ["name"]
195
+ }
196
+ },
197
+ create_list_in_folder: {
198
+ description: "Create a new list within a folder",
199
+ inputSchema: {
200
+ type: "object",
201
+ properties: {
202
+ folderId: {
203
+ type: "string",
204
+ description: "ID of the folder (optional if using folderName)"
205
+ },
206
+ folderName: {
207
+ type: "string",
208
+ description: "Name of the folder"
209
+ },
210
+ spaceId: {
211
+ type: "string",
212
+ description: "ID of the space (required if using folderName)"
304
213
  },
305
- required: ["taskId"]
306
- }
214
+ spaceName: {
215
+ type: "string",
216
+ description: "Name of the space (alternative to spaceId)"
217
+ },
218
+ name: {
219
+ type: "string",
220
+ description: "Name of the list"
221
+ },
222
+ content: {
223
+ type: "string",
224
+ description: "List description"
225
+ }
226
+ },
227
+ required: ["name"]
228
+ }
229
+ },
230
+ move_task: {
231
+ description: "Move a task to a different list",
232
+ inputSchema: {
233
+ type: "object",
234
+ properties: {
235
+ taskId: {
236
+ type: "string",
237
+ description: "ID of the task to move"
238
+ },
239
+ listId: {
240
+ type: "string",
241
+ description: "ID of destination list (optional if listName is provided)"
242
+ },
243
+ listName: {
244
+ type: "string",
245
+ description: "Name of destination list (optional if listId is provided)"
246
+ }
247
+ },
248
+ required: ["taskId"]
249
+ }
250
+ },
251
+ duplicate_task: {
252
+ description: "Create a copy of a task in a specified list",
253
+ inputSchema: {
254
+ type: "object",
255
+ properties: {
256
+ taskId: {
257
+ type: "string",
258
+ description: "ID of the task to duplicate"
259
+ },
260
+ listId: {
261
+ type: "string",
262
+ description: "ID of destination list (optional if listName is provided)"
263
+ },
264
+ listName: {
265
+ type: "string",
266
+ description: "Name of destination list (optional if listId is provided)"
267
+ }
268
+ },
269
+ required: ["taskId"]
270
+ }
271
+ },
272
+ update_task: {
273
+ description: "Update an existing task",
274
+ inputSchema: {
275
+ type: "object",
276
+ properties: {
277
+ taskId: {
278
+ type: "string",
279
+ description: "ID of the task to update"
280
+ },
281
+ name: {
282
+ type: "string",
283
+ description: "New task name"
284
+ },
285
+ description: {
286
+ type: "string",
287
+ description: "New description"
288
+ },
289
+ status: {
290
+ type: "string",
291
+ description: "New status"
292
+ },
293
+ priority: {
294
+ type: "number",
295
+ description: "New priority level (1-4)"
296
+ },
297
+ dueDate: {
298
+ type: "string",
299
+ description: "New due date (ISO string)"
300
+ }
301
+ },
302
+ required: ["taskId"]
307
303
  }
308
304
  }
309
305
  },
306
+ prompts: {
307
+ summarize_tasks: {
308
+ description: "Summarize all ClickUp tasks"
309
+ },
310
+ analyze_task_priorities: {
311
+ description: "Analyze task priorities"
312
+ }
313
+ },
314
+ resources: {
315
+ list: true,
316
+ read: true
317
+ }
318
+ };
319
+ // Create server instance with capabilities
320
+ const server = new Server({
321
+ name: "clickup-mcp-server",
322
+ version: "0.4.18",
323
+ transport: new StdioServerTransport(),
324
+ capabilities: serverCapabilities,
310
325
  errorHandler: (error) => {
311
326
  logError('mcp', error);
312
327
  }
package/package.json CHANGED
@@ -1,12 +1,11 @@
1
1
  {
2
2
  "name": "@taazkareem/clickup-mcp-server",
3
- "version": "0.4.18",
3
+ "version": "0.4.19",
4
4
  "description": "ClickUp MCP Server - Integrate ClickUp tasks with AI through Model Context Protocol",
5
5
  "type": "module",
6
6
  "main": "./build/index.js",
7
7
  "bin": {
8
- "clickup-mcp-server": "build/index.js",
9
- "@taazkareem/clickup-mcp-server": "build/index.js"
8
+ "clickup-mcp-server": "build/index.js"
10
9
  },
11
10
  "files": [
12
11
  "build",