Skip to main content
Glama
README.md6.07 kB
# ClickUp MCP - Optimized AI Integration A high-performance Model Context Protocol (MCP) server for integrating ClickUp with AI applications. This optimized fork features consolidated tools, response optimization, and intelligent caching for superior performance. ## 🚀 Key Optimizations This repository builds on the original ClickUp MCP server with significant performance and efficiency improvements: - **Tool Consolidation**: Reduced from 36 tools to 15 consolidated, action-based tools following MCP design principles - **Response Optimization**: 54% token reduction through intelligent field filtering and data flattening - **Intelligent Caching**: 15-minute TTL workspace hierarchy cache with 85% performance improvement - **Hybrid Lookups**: Direct API calls when IDs available, fallback to cached hierarchy when needed - **AI-First Design**: Tools designed around user intent rather than API structure ### Performance Results | Operation | Before | After | Improvement | |-----------|--------|-------|-------------| | Response tokens (7 tasks) | 723 | 331 | **54% reduction** | | Workspace lookup (warm) | 2400ms | 350ms | **85% faster** | | Task search (cached) | 3000ms | 350ms | **88% faster** | ## Requirements - **Node.js v18.0.0 or higher** (required for MCP SDK compatibility) - ClickUp API key and Team ID ## Installation ### Quick Start (Recommended) Add this to your Claude Desktop config file: **Windows**: `%APPDATA%\Claude\claude_desktop_config.json` **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json` ```json { "mcpServers": { "ClickUp": { "command": "npx", "args": [ "-y", "@twofeetup/clickup-mcp@latest" ], "env": { "CLICKUP_API_KEY": "your-api-key-here", "CLICKUP_TEAM_ID": "your-team-id-here" } } } } ``` **Get your credentials:** - ClickUp API key: [ClickUp Settings](https://app.clickup.com/settings/apps) - Team ID: Found in your ClickUp workspace URL Restart Claude Desktop and the server will be automatically installed and ready to use! ### Local Development Setup 1. Clone this repository: ```bash git clone https://github.com/TwoFeetUp/clickup-mcp.git cd clickup-mcp ``` 2. Install dependencies: ```bash npm install ``` 3. Build the project: ```bash npm run build ``` 4. Get your credentials: - ClickUp API key from [ClickUp Settings](https://app.clickup.com/settings/apps) - Team ID from your ClickUp workspace URL 5. Configure your MCP client (e.g., Claude Desktop): Add this entry to your client's MCP settings JSON file: ```json { "mcpServers": { "ClickUp": { "command": "node", "args": [ "/path/to/clickup-mcp/build/index.js" ], "env": { "CLICKUP_API_KEY": "your-api-key", "CLICKUP_TEAM_ID": "your-team-id" } } } } ``` ## Consolidated Tools This server provides 15 consolidated tools instead of the original 36: ### Task Management - **manage_task**: Create, update, delete, move, or duplicate tasks with action-based routing - **search_tasks**: Find tasks by ID, list, or workspace-wide filters with configurable detail levels - **task_comments**: Get or create task comments - **task_time_tracking**: Manage time entries (get, start, stop, add, delete) - **attach_file_to_task**: Attach files to tasks ### Container Management - **manage_container**: Create, update, delete, or get lists and folders - **get_container**: Retrieve container details ### Document Management - **manage_document**: Create, update, delete documents - **manage_document_page**: Create, update, delete document pages - **list_documents**: List all documents in workspace ### Organization - **find_members**: Search workspace members by name/email - **operate_tags**: Create, update, delete, or list tags ### Bulk Operations - **bulk_create_tasks**: Create multiple tasks efficiently - **bulk_update_tasks**: Update multiple tasks at once - **bulk_delete_tasks**: Delete multiple tasks in one operation ## Key Features ### AI-First Tool Design - Tools organized by user intent, not API structure - Natural language parameter names - Support for flexible task identification (ID, name, or custom ID) - Detail level control (minimal, standard, detailed) ### Response Optimization - Automatic field filtering and null removal - Nested object flattening (status → string, assignees → usernames) - Configurable detail levels for token efficiency - Pagination support for large result sets ### Performance Features - 15-minute TTL workspace hierarchy cache - Direct API lookups when IDs provided - Graceful fallback to cached hierarchy - Automatic cache invalidation - Rate limit awareness (600ms spacing) ### Developer Experience - Comprehensive TypeScript types - Detailed logging with operation tracking - Consistent error handling - Input validation with helpful messages ## Configuration Environment variables: - `CLICKUP_API_KEY`: Your ClickUp API key (required) - `CLICKUP_TEAM_ID`: Your ClickUp team/workspace ID (required) - `LOG_LEVEL`: Logging verbosity (default: "info") ## Development ```bash # Install dependencies npm install # Build npm run build # Watch mode (for development) npm run dev # Run tests node test-cache-performance.js node test-optimized-response.js ``` ## Architecture This server follows MCP design principles: - **Tool Consolidation**: Related operations grouped into single tools with action parameters - **Token Efficiency**: Optimized response formats with field selection and detail levels - **Performance**: Intelligent caching and direct API fallbacks - **Maintainability**: Clear separation of concerns, consistent patterns See [MCP_DESIGN_PRINCIPLES.md](MCP_DESIGN_PRINCIPLES.md) for detailed design philosophy. ## License MIT ## Credits This optimized version builds upon the original [ClickUp MCP Server](https://github.com/TaazKareem/clickup-mcp-server) by Talib Kareem, with significant architectural improvements and performance optimizations. Optimizations by Sjoerd Tiemensma.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TwoFeetUp/clickup-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server