clickup-mcp-server
The project integrates the ClickUp MCP server with Supergateway, enabling its use as an SSE endpoint for n8n nodes or other clients. It supports deployment with Node.js and Docker, as well as on Railway, and provides API endpoints for subscribing to events and sending messages.
ClickUp MCP Server with Supergateway
This integration runs the ClickUp MCP server through Supergateway, exposing it as an SSE endpoint that can be used by n8n nodes or other clients.
Prerequisites
- Node.js 18 or higher
- Docker and Docker Compose (for containerized deployment)
- ClickUp API key and Team ID
Local Development
Running with Node.js
-
Install dependencies:
npm install -g supergateway @taazkareem/clickup-mcp-server
-
Set environment variables:
export CLICKUP_API_KEY=pk_94547006_D8DFEXXFDOX7RUOJBBPLM2BSVRFXPZE9 export CLICKUP_TEAM_ID=2357720
-
Run the integration script:
./run-clickup-mcp.sh
-
Customize configuration (optional):
./run-clickup-mcp.sh --port 9000 --base-url http://example.com --cors "http://localhost:8080,http://localhost:3000"
Running with Docker Compose
-
Create a
.env
file based on.env.example
:cp .env.example .env
-
Edit the
.env
file with your ClickUp API key and Team ID. -
Start the container:
docker-compose up -d
-
View logs:
docker-compose logs -f
Deployment to Railway
-
Create a new project on Railway.
-
Connect your GitHub repository or use the Railway CLI to deploy.
-
Set the following environment variables in Railway:
CLICKUP_API_KEY
: Your ClickUp API keyCLICKUP_TEAM_ID
: Your ClickUp Team IDPORT
: 8000 (or your preferred port)BASE_URL
: Your Railway app URL (e.g., https://your-app-name.up.railway.app)SSE_PATH
: /sse (or your preferred path)MESSAGE_PATH
: /message (or your preferred path)LOG_LEVEL
: info (or debug for more verbose logging)DOCUMENT_SUPPORT
: false (or true if needed)CORS_ORIGINS
: * (or a comma-separated list of allowed origins)
-
Deploy the application.
Usage with n8n
-
In n8n, add a new "MCP" node.
-
Configure the node with the following settings:
- Server URL: Your Railway app URL + SSE path (e.g., https://your-app-name.up.railway.app/sse)
- Message Path: Your message path (e.g., /message)
-
Select the desired ClickUp tool from the available tools.
-
Configure the tool parameters as needed.
-
Connect the node to your workflow.
API Endpoints
-
SSE Endpoint:
{BASE_URL}{SSE_PATH}
(e.g., http://localhost:8000/sse)- Method: GET
- Description: Subscribe to server-sent events
-
Message Endpoint:
{BASE_URL}{MESSAGE_PATH}
(e.g., http://localhost:8000/message)- Method: POST
- Description: Send messages to the server
- Content-Type: application/json
- Body: JSON-RPC 2.0 formatted message
-
Healthcheck Endpoint:
{BASE_URL}/healthz
(e.g., http://localhost:8000/healthz)- Method: GET
- Description: Check if the service is running correctly
- Response: "ok" if the service is healthy
Troubleshooting
- Connection Issues: Ensure your firewall allows connections to the specified port.
- Authentication Errors: Verify your ClickUp API key and Team ID are correct.
- CORS Errors: Configure the CORS_ORIGINS environment variable to include your client's origin.