@alanse/clickup-multi-mcp-server 1.0.0 → 1.0.1

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.
package/README.md CHANGED
@@ -1,9 +1,21 @@
1
- # ClickUp Multi-Workspace MCP Server
1
+ <p align="center">
2
+ <img src="assets/images/clickup-social.png" alt="ClickUp Multi-Workspace MCP Server" width="100%">
3
+ </p>
2
4
 
3
- [![GitHub Stars](https://img.shields.io/github/stars/da-okazaki/clickup-multi-mcp-server?style=flat&logo=github)](https://github.com/da-okazaki/clickup-multi-mcp-server/stargazers)
4
- [![NPM Version](https://img.shields.io/npm/v/@alanse/clickup-multi-mcp-server.svg?style=flat&logo=npm)](https://www.npmjs.com/package/@alanse/clickup-multi-mcp-server)
5
+ <h1 align="center">ClickUp Multi-Workspace MCP Server</h1>
5
6
 
6
- A Model Context Protocol (MCP) server for integrating **multiple ClickUp workspaces** with AI applications. This server allows AI agents to interact with tasks, spaces, lists, and folders across different ClickUp workspaces through a standardized protocol.
7
+ <p align="center">
8
+ <a href="https://github.com/da-okazaki/clickup-multi-mcp-server/stargazers">
9
+ <img src="https://img.shields.io/github/stars/da-okazaki/clickup-multi-mcp-server?style=flat&logo=github" alt="GitHub Stars">
10
+ </a>
11
+ <a href="https://www.npmjs.com/package/@alanse/clickup-multi-mcp-server">
12
+ <img src="https://img.shields.io/npm/v/@alanse/clickup-multi-mcp-server.svg?style=flat&logo=npm" alt="NPM Version">
13
+ </a>
14
+ </p>
15
+
16
+ <p align="center">
17
+ A Model Context Protocol (MCP) server for integrating <strong>multiple ClickUp workspaces</strong> with AI applications. This server allows AI agents to interact with tasks, spaces, lists, and folders across different ClickUp workspaces through a standardized protocol.
18
+ </p>
7
19
 
8
20
  ## 🎯 Key Feature: Multi-Workspace Support
9
21
 
@@ -22,6 +34,27 @@ Based on the excellent [clickup-mcp-server](https://github.com/taazkareem/clicku
22
34
 
23
35
  ## Quick Start
24
36
 
37
+ ### Claude Code CLI Setup
38
+
39
+ The easiest way to add this MCP server to Claude Code:
40
+
41
+ **Single Workspace:**
42
+ ```bash
43
+ claude mcp add clickup \
44
+ -e CLICKUP_API_KEY=your_api_key_here \
45
+ -e CLICKUP_TEAM_ID=your_team_id_here \
46
+ -- npx -y @alanse/clickup-multi-mcp-server@latest
47
+ ```
48
+
49
+ **Multiple Workspaces:**
50
+ ```bash
51
+ claude mcp add clickup \
52
+ -e CLICKUP_WORKSPACES='{"default":"work","workspaces":{"work":{"token":"pk_xxx_work","teamId":"123456"},"personal":{"token":"pk_xxx_personal","teamId":"789012"}}}' \
53
+ -- npx -y @alanse/clickup-multi-mcp-server@latest
54
+ ```
55
+
56
+ ### Manual Configuration
57
+
25
58
  ### Single Workspace (Backwards Compatible)
26
59
 
27
60
  The traditional single workspace setup still works exactly as before:
package/build/config.js CHANGED
@@ -125,7 +125,6 @@ const configuration = {
125
125
  clickupApiKey: envArgs.clickupApiKey || process.env.CLICKUP_API_KEY || '',
126
126
  clickupTeamId: envArgs.clickupTeamId || process.env.CLICKUP_TEAM_ID || '',
127
127
  clickupWorkspaces: parseWorkspaces(),
128
- enableSponsorMessage: process.env.ENABLE_SPONSOR_MESSAGE !== 'false',
129
128
  documentSupport: envArgs.documentSupport || process.env.DOCUMENT_SUPPORT || process.env.DOCUMENT_MODULE || process.env.DOCUMENT_MODEL || 'false',
130
129
  logLevel: parseLogLevel(envArgs.logLevel || process.env.LOG_LEVEL),
131
130
  disabledTools: ((envArgs.disabledTools || process.env.DISABLED_TOOLS || process.env.DISABLED_COMMANDS)?.split(',').map(cmd => cmd.trim()).filter(cmd => cmd !== '') || []),
@@ -1,37 +1,26 @@
1
1
  /**
2
2
  * SPDX-FileCopyrightText: © 2025 Talib Kareem <taazkareem@icloud.com>
3
+ * SPDX-FileCopyrightText: © 2025 Daichi Okazaki (Alanse)
3
4
  * SPDX-License-Identifier: MIT
4
5
  *
5
- * Sponsor Service Module
6
+ * Response Service Module
6
7
  *
7
- * Provides configuration and utilities for sponsorship functionality
8
+ * Provides utilities for creating standardized MCP responses
8
9
  */
9
10
  import { Logger } from '../logger.js';
10
- import config from '../config.js';
11
11
  // Create logger instance for this module
12
- const logger = new Logger('SponsorService');
12
+ const logger = new Logger('ResponseService');
13
13
  /**
14
- * SponsorService - Provides sponsorship configuration and message handling
14
+ * ResponseService - Provides standardized response formatting
15
15
  */
16
- export class SponsorService {
16
+ export class ResponseService {
17
17
  constructor() {
18
- this.sponsorUrl = 'https://github.com/sponsors/taazkareem';
19
- this.isEnabled = config.enableSponsorMessage;
20
- logger.info('SponsorService initialized', { enabled: this.isEnabled });
18
+ logger.info('ResponseService initialized');
21
19
  }
22
20
  /**
23
- * Get sponsor information (for documentation/reference purposes)
21
+ * Creates a standardized response
24
22
  */
25
- getSponsorInfo() {
26
- return {
27
- isEnabled: this.isEnabled,
28
- url: this.sponsorUrl
29
- };
30
- }
31
- /**
32
- * Creates a response with optional sponsorship message
33
- */
34
- createResponse(data, includeSponsorMessage = false) {
23
+ createResponse(data, _includeSponsorMessage = false) {
35
24
  const content = [];
36
25
  // Special handling for workspace hierarchy which contains a preformatted tree
37
26
  if (data && typeof data === 'object' && 'hierarchy' in data && typeof data.hierarchy === 'string') {
@@ -55,13 +44,6 @@ export class SponsorService {
55
44
  text: JSON.stringify(data, null, 2)
56
45
  });
57
46
  }
58
- // Then add sponsorship message if enabled
59
- if (this.isEnabled && includeSponsorMessage) {
60
- content.push({
61
- type: "text",
62
- text: `\n♥ Support this project by sponsoring the developer at ${this.sponsorUrl}`
63
- });
64
- }
65
47
  return { content };
66
48
  }
67
49
  /**
@@ -74,7 +56,7 @@ export class SponsorService {
74
56
  });
75
57
  }
76
58
  /**
77
- * Creates a bulk operation response with sponsorship message
59
+ * Creates a bulk operation response
78
60
  */
79
61
  createBulkResponse(result) {
80
62
  return this.createResponse({
@@ -86,8 +68,9 @@ export class SponsorService {
86
68
  id: failure.item?.id || failure.item,
87
69
  error: failure.error.message
88
70
  }))
89
- }, true); // Always include sponsor message for bulk operations
71
+ });
90
72
  }
91
73
  }
92
- // Export a singleton instance
93
- export const sponsorService = new SponsorService();
74
+ // Export a singleton instance for backwards compatibility
75
+ // (keeping the name 'sponsorService' to avoid changing all imports)
76
+ export const sponsorService = new ResponseService();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alanse/clickup-multi-mcp-server",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "ClickUp MCP Server with Multi-Workspace Support - Integrate multiple ClickUp workspaces with AI through Model Context Protocol",
5
5
  "type": "module",
6
6
  "main": "build/index.js",