# Wrike MCP Server A complete Model Context Protocol (MCP) server for Wrike API v4, providing 60+ tools and 22 React-based UI apps for comprehensive project management integration. ## Features ### 60+ MCP Tools **Tasks (9 tools)** - `wrike_list_tasks` - List tasks with filters - `wrike_get_task` - Get task details - `wrike_create_task` - Create new task - `wrike_update_task` - Update task - `wrike_delete_task` - Delete task - `wrike_list_subtasks` - List subtasks - `wrike_create_subtask` - Create subtask - `wrike_list_dependencies` - List task dependencies - `wrike_add_dependency` - Add task dependency **Folders (7 tools)** - `wrike_list_folders` - List folders - `wrike_get_folder` - Get folder details - `wrike_create_folder` - Create folder - `wrike_update_folder` - Update folder - `wrike_delete_folder` - Delete folder - `wrike_list_folder_tasks` - List tasks in folder - `wrike_copy_folder` - Copy folder **Projects (6 tools)** - `wrike_list_projects` - List projects - `wrike_get_project` - Get project details - `wrike_create_project` - Create project - `wrike_update_project` - Update project - `wrike_delete_project` - Delete project - `wrike_list_project_tasks` - List project tasks **Spaces (5 tools)** - `wrike_list_spaces` - List spaces - `wrike_get_space` - Get space details - `wrike_create_space` - Create space - `wrike_update_space` - Update space - `wrike_delete_space` - Delete space **Contacts (3 tools)** - `wrike_list_contacts` - List contacts/users - `wrike_get_contact` - Get contact details - `wrike_update_contact` - Update contact **Comments (5 tools)** - `wrike_list_comments` - List comments - `wrike_get_comment` - Get comment - `wrike_create_comment` - Create comment - `wrike_update_comment` - Update comment - `wrike_delete_comment` - Delete comment **Timelogs (5 tools)** - `wrike_list_timelogs` - List time logs - `wrike_get_timelog` - Get timelog - `wrike_create_timelog` - Create timelog - `wrike_update_timelog` - Update timelog - `wrike_delete_timelog` - Delete timelog **Attachments (4 tools)** - `wrike_list_attachments` - List attachments - `wrike_get_attachment` - Get attachment details - `wrike_download_attachment` - Download attachment - `wrike_delete_attachment` - Delete attachment **Workflows (4 tools)** - `wrike_list_workflows` - List workflows - `wrike_get_workflow` - Get workflow - `wrike_create_workflow` - Create workflow - `wrike_update_workflow` - Update workflow **Custom Fields (4 tools)** - `wrike_list_custom_fields` - List custom fields - `wrike_get_custom_field` - Get custom field - `wrike_create_custom_field` - Create custom field - `wrike_update_custom_field` - Update custom field **Approvals (5 tools)** - `wrike_list_approvals` - List approvals - `wrike_get_approval` - Get approval - `wrike_create_approval` - Create approval - `wrike_update_approval` - Update approval - `wrike_delete_approval` - Delete approval **Groups (5 tools)** - `wrike_list_groups` - List groups - `wrike_get_group` - Get group - `wrike_create_group` - Create group - `wrike_update_group` - Update group - `wrike_delete_group` - Delete group **Invitations (4 tools)** - `wrike_list_invitations` - List invitations - `wrike_create_invitation` - Create invitation - `wrike_update_invitation` - Update invitation - `wrike_delete_invitation` - Delete invitation **Webhooks (4 tools)** - `wrike_list_webhooks` - List webhooks - `wrike_create_webhook` - Create webhook - `wrike_update_webhook` - Update webhook - `wrike_delete_webhook` - Delete webhook ### 22 React MCP Apps All apps feature dark theme and client-side state management: 1. **task-dashboard** - Overview of all tasks with filters 2. **task-detail** - Detailed task view and editor 3. **task-grid** - Tabular task view 4. **task-board** - Kanban-style task board 5. **project-dashboard** - Project overview with status 6. **project-detail** - Detailed project view 7. **project-grid** - Tabular project view 8. **folder-tree** - Hierarchical folder navigation 9. **space-overview** - Space management dashboard 10. **gantt-view** - Timeline/Gantt visualization 11. **time-dashboard** - Time tracking overview 12. **time-entries** - Create time log entries 13. **member-workload** - Team member workload view 14. **comment-thread** - Task comment threads 15. **approval-manager** - Approval requests manager 16. **workflow-editor** - Workflow configuration 17. **custom-fields-manager** - Custom field management 18. **attachment-gallery** - File attachment gallery 19. **search-results** - Search tasks and folders 20. **activity-feed** - Recent activity stream 21. **sprint-board** - Sprint planning board 22. **reports-dashboard** - Analytics and reports ## Installation ```bash npm install npm run build ``` ## Configuration Set your Wrike API token as an environment variable: ```bash export WRIKE_API_TOKEN="your-api-token-here" ``` You can get a permanent API token from your Wrike account: 1. Go to Apps & Integrations 2. Click on API 3. Create a new permanent token ## Usage ### As MCP Server Add to your MCP client configuration: ```json { "mcpServers": { "wrike": { "command": "node", "args": ["/path/to/wrike-mcp-server/dist/main.js"], "env": { "WRIKE_API_TOKEN": "your-api-token" } } } } ``` ### Standalone ```bash npm start ``` ## Architecture ``` wrike/ ├── src/ │ ├── clients/ │ │ └── wrike.ts # Wrike API client │ ├── tools/ │ │ ├── tasks-tools.ts # Task management tools │ │ ├── folders-tools.ts # Folder tools │ │ ├── projects-tools.ts # Project tools │ │ ├── spaces-tools.ts # Space tools │ │ ├── contacts-tools.ts # Contact tools │ │ ├── comments-tools.ts # Comment tools │ │ ├── timelogs-tools.ts # Time tracking tools │ │ ├── attachments-tools.ts # Attachment tools │ │ ├── workflows-tools.ts # Workflow tools │ │ ├── custom-fields-tools.ts # Custom field tools │ │ ├── approvals-tools.ts # Approval tools │ │ ├── groups-tools.ts # Group tools │ │ ├── invitations-tools.ts # Invitation tools │ │ └── webhooks-tools.ts # Webhook tools │ ├── types/ │ │ └── wrike.ts # TypeScript type definitions │ ├── ui/ │ │ └── react-app/ # 22 React MCP apps │ ├── server.ts # MCP server implementation │ └── main.ts # Entry point ├── package.json ├── tsconfig.json └── README.md ``` ## API Coverage This server implements the complete Wrike API v4: - ✅ Tasks & Subtasks - ✅ Folders & Projects - ✅ Spaces - ✅ Contacts & Groups - ✅ Comments - ✅ Time Tracking - ✅ Attachments - ✅ Workflows & Custom Statuses - ✅ Custom Fields - ✅ Approvals - ✅ Invitations - ✅ Webhooks - ✅ Dependencies ## Authentication Supports both: - **OAuth2 Bearer Token** - For user-specific access - **Permanent API Token** - For service accounts and automation ## Error Handling The server includes comprehensive error handling: - API request failures - Rate limiting - Invalid parameters - Network errors - Authentication errors ## Contributing Contributions welcome! Please ensure: - TypeScript types are complete - Tools follow MCP standards - React apps maintain dark theme - Error handling is comprehensive ## License MIT ## Resources - [Wrike API Documentation](https://developers.wrike.com/api/v4/) - [Model Context Protocol](https://modelcontextprotocol.io/) - [MCP SDK](https://github.com/modelcontextprotocol/sdk)