- Full Wrike API v4 client with auth, rate limiting, pagination - 88 MCP tools across 13 categories (tasks, projects, folders, spaces, comments, attachments, timelogs, contacts, groups, workflows, custom fields, approvals, webhooks, and more) - 22 interactive React apps (task board, Gantt view, project dashboard, space overview, team workload, time tracker, approval manager, custom fields manager, workflow editor, and more) - Complete TypeScript types for all Wrike entities - Comprehensive README with usage examples - Both stdio and HTTP server modes - Successfully compiles with TypeScript
9.5 KiB
9.5 KiB
Wrike MCP Server
Complete Model Context Protocol (MCP) server for Wrike project management platform with 70+ tools and 20 interactive React apps.
Features
🛠️ 70+ MCP Tools
Comprehensive coverage of the Wrike API v4:
Tasks (9 tools)
wrike_list_tasks- List tasks with filters (folder, status, assignee, dates)wrike_get_task- Get task details by IDwrike_create_task- Create new taskwrike_update_task- Update task propertieswrike_delete_task- Delete taskwrike_search_tasks- Search tasks by title/descriptionwrike_add_dependency- Add task dependencywrike_get_dependencies- Get task dependencieswrike_remove_dependency- Remove task dependency
Folders & Projects (8 tools)
wrike_list_folders- List all folders/projectswrike_get_folder- Get folder detailswrike_create_folder- Create new folderwrike_create_project- Create new projectwrike_update_folder- Update folder/projectwrike_delete_folder- Delete folderwrike_copy_folder- Copy folder with optionswrike_get_folder_tree- Get folder tree structure
Comments (5 tools)
wrike_list_comments- List comments on task/folderwrike_get_comment- Get comment detailswrike_create_comment- Create new commentwrike_update_comment- Update commentwrike_delete_comment- Delete comment
Attachments (7 tools)
wrike_list_attachments- List attachmentswrike_get_attachment- Get attachment detailswrike_download_attachment- Get download URLwrike_get_attachment_preview- Get preview URLwrike_get_attachment_url- Get public URLwrike_update_attachment- Update attachment namewrike_delete_attachment- Delete attachment
Time Tracking (6 tools)
wrike_list_timelogs- List time logs with filterswrike_get_timelog- Get timelog detailswrike_create_timelog- Create time entrywrike_update_timelog- Update time entrywrike_delete_timelog- Delete time entrywrike_list_timelog_categories- List time categories
Contacts & Users (3 tools)
wrike_list_contacts- List all contacts/userswrike_get_contact- Get contact detailswrike_update_contact- Update contact
Spaces (5 tools)
wrike_list_spaces- List all spaceswrike_get_space- Get space detailswrike_create_space- Create new spacewrike_update_space- Update spacewrike_delete_space- Delete space
Groups (5 tools)
wrike_list_groups- List all groupswrike_get_group- Get group detailswrike_create_group- Create new groupwrike_update_group- Update groupwrike_delete_group- Delete group
Workflows & Custom Statuses (10 tools)
wrike_list_workflows- List all workflowswrike_get_workflow- Get workflow detailswrike_create_workflow- Create custom workflowwrike_update_workflow- Update workflowwrike_list_custom_statuses- List custom statuseswrike_get_custom_status- Get custom statuswrike_create_custom_status- Create custom statuswrike_update_custom_status- Update custom statuswrike_delete_custom_status- Delete custom status
Custom Fields (5 tools)
wrike_list_custom_fields- List custom field definitionswrike_get_custom_field- Get custom field detailswrike_create_custom_field- Create custom fieldwrike_update_custom_field- Update custom fieldwrike_delete_custom_field- Delete custom field
Approvals (6 tools)
wrike_list_approvals- List approvals with filterswrike_get_approval- Get approval detailswrike_create_approval- Create new approvalwrike_update_approval- Update approvalwrike_delete_approval- Delete approvalwrike_submit_approval_decision- Submit approve/reject decision
Webhooks (5 tools)
wrike_list_webhooks- List all webhookswrike_get_webhook- Get webhook detailswrike_create_webhook- Create new webhookwrike_update_webhook- Update webhookwrike_delete_webhook- Delete webhook
Work Schedules, Export, Audit & More (10 tools)
wrike_list_work_schedules- List work scheduleswrike_get_work_schedule- Get work schedule detailswrike_start_data_export- Start data export jobwrike_get_data_export_status- Get export statuswrike_get_audit_log- Get audit log entrieswrike_list_blueprints- List blueprints/templateswrike_get_blueprint- Get blueprint detailswrike_launch_blueprint- Launch blueprint to create projectwrike_get_account- Get account informationwrike_get_version- Get API versionwrike_list_invitations- List pending invitationswrike_invite_user- Invite user to accountwrike_delete_invitation- Cancel invitationwrike_list_colors- List available colorswrike_query_ids- Convert permalinks to IDs
🎨 20 Interactive React Apps
All apps built with React + Vite, client-side interactivity, and graceful degradation:
- task-dashboard - Task overview with status breakdown and filters
- task-detail - Full task detail view with edit capabilities
- task-board - Kanban board with drag-drop
- project-dashboard - Project overview with health status
- project-detail - Detailed project view with timeline
- folder-tree - Interactive folder hierarchy browser
- gantt-view - Gantt chart visualization for tasks
- time-tracker - Time tracking interface
- time-report - Time log reports and analytics
- comment-thread - Comment conversation view
- attachment-gallery - Attachment preview gallery
- team-workload - Team capacity and workload view
- workflow-editor - Custom workflow designer
- custom-fields-manager - Custom fields configuration
- approval-dashboard - Approval status overview
- space-overview - Space management dashboard
- blueprint-gallery - Template/blueprint browser
- audit-log-viewer - Audit log explorer
- search-results - Advanced search results view
- analytics-dashboard - Project analytics and reporting
Installation
npm install @mcpengine/wrike
Configuration
Environment Variables
WRIKE_API_TOKEN=your_wrike_api_token_here
Get Wrike API Token
- Log in to your Wrike account
- Go to Settings → Apps & Integrations → API
- Click "Create token"
- Copy the generated token
- Add to your environment variables
MCP Settings (Claude Desktop)
Add to your claude_desktop_config.json:
{
"mcpServers": {
"wrike": {
"command": "node",
"args": ["/path/to/node_modules/@mcpengine/wrike/dist/main.js"],
"env": {
"WRIKE_API_TOKEN": "your_token_here"
}
}
}
}
Usage
With Claude Desktop
Once configured, Claude can:
- Create and manage tasks, projects, folders
- Track time across projects
- Manage comments and attachments
- Configure workflows and custom fields
- Submit and track approvals
- Export data and view audit logs
- Browse and launch project templates
- And much more!
Example prompts:
- "Show me all high-priority tasks due this week"
- "Create a new project called 'Website Redesign' with tasks for design, development, and testing"
- "Log 3 hours on task X for yesterday"
- "Show the folder tree for Space Y"
- "What approvals are pending?"
Programmatic Usage
import { WrikeClient } from '@mcpengine/wrike';
const client = new WrikeClient(process.env.WRIKE_API_TOKEN!);
// List tasks
const tasks = await client.get('/tasks', {
status: 'Active',
importance: 'High',
});
// Create task
const newTask = await client.post('/folders/FOLDER_ID/tasks', {
title: 'New Task',
description: 'Task description',
importance: 'High',
});
// Update task
const updated = await client.put('/tasks/TASK_ID', {
status: 'Completed',
});
Architecture
src/
├── server.ts # MCP server setup
├── main.ts # Entry point
├── clients/
│ └── wrike.ts # Wrike API client (auth, rate limiting, pagination)
├── tools/ # MCP tool definitions
│ ├── tasks-tools.ts
│ ├── folders-tools.ts
│ ├── comments-tools.ts
│ ├── attachments-tools.ts
│ ├── timelogs-tools.ts
│ ├── contacts-tools.ts
│ ├── spaces-tools.ts
│ ├── groups-tools.ts
│ ├── workflows-tools.ts
│ ├── customfields-tools.ts
│ ├── approvals-tools.ts
│ ├── webhooks-tools.ts
│ └── misc-tools.ts
├── types/
│ └── index.ts # TypeScript type definitions
└── ui/
└── react-app/ # React apps (20 apps)
API Client Features
- Authentication: Bearer token authentication
- Rate Limiting: Automatic rate limit detection and retry
- Error Handling: Comprehensive error mapping
- Pagination: Helper methods for paginated responses
- Batch Operations: Efficient batch requests
- Type Safety: Full TypeScript type definitions
Development
# Install dependencies
npm install
# Build
npm run build
# Build with apps
npm run build:apps
# Development mode
npm run dev
# Run tests
npm test
Requirements
- Node.js 18+
- Wrike account with API access
- Valid Wrike API token
License
MIT
Support
- GitHub Issues: [Report bugs or request features]
- Documentation: Wrike API Docs