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 ID
  • wrike_create_task - Create new task
  • wrike_update_task - Update task properties
  • wrike_delete_task - Delete task
  • wrike_search_tasks - Search tasks by title/description
  • wrike_add_dependency - Add task dependency
  • wrike_get_dependencies - Get task dependencies
  • wrike_remove_dependency - Remove task dependency

Folders & Projects (8 tools)

  • wrike_list_folders - List all folders/projects
  • wrike_get_folder - Get folder details
  • wrike_create_folder - Create new folder
  • wrike_create_project - Create new project
  • wrike_update_folder - Update folder/project
  • wrike_delete_folder - Delete folder
  • wrike_copy_folder - Copy folder with options
  • wrike_get_folder_tree - Get folder tree structure

Comments (5 tools)

  • wrike_list_comments - List comments on task/folder
  • wrike_get_comment - Get comment details
  • wrike_create_comment - Create new comment
  • wrike_update_comment - Update comment
  • wrike_delete_comment - Delete comment

Attachments (7 tools)

  • wrike_list_attachments - List attachments
  • wrike_get_attachment - Get attachment details
  • wrike_download_attachment - Get download URL
  • wrike_get_attachment_preview - Get preview URL
  • wrike_get_attachment_url - Get public URL
  • wrike_update_attachment - Update attachment name
  • wrike_delete_attachment - Delete attachment

Time Tracking (6 tools)

  • wrike_list_timelogs - List time logs with filters
  • wrike_get_timelog - Get timelog details
  • wrike_create_timelog - Create time entry
  • wrike_update_timelog - Update time entry
  • wrike_delete_timelog - Delete time entry
  • wrike_list_timelog_categories - List time categories

Contacts & Users (3 tools)

  • wrike_list_contacts - List all contacts/users
  • wrike_get_contact - Get contact details
  • wrike_update_contact - Update contact

Spaces (5 tools)

  • wrike_list_spaces - List all spaces
  • wrike_get_space - Get space details
  • wrike_create_space - Create new space
  • wrike_update_space - Update space
  • wrike_delete_space - Delete space

Groups (5 tools)

  • wrike_list_groups - List all groups
  • wrike_get_group - Get group details
  • wrike_create_group - Create new group
  • wrike_update_group - Update group
  • wrike_delete_group - Delete group

Workflows & Custom Statuses (10 tools)

  • wrike_list_workflows - List all workflows
  • wrike_get_workflow - Get workflow details
  • wrike_create_workflow - Create custom workflow
  • wrike_update_workflow - Update workflow
  • wrike_list_custom_statuses - List custom statuses
  • wrike_get_custom_status - Get custom status
  • wrike_create_custom_status - Create custom status
  • wrike_update_custom_status - Update custom status
  • wrike_delete_custom_status - Delete custom status

Custom Fields (5 tools)

  • wrike_list_custom_fields - List custom field definitions
  • wrike_get_custom_field - Get custom field details
  • wrike_create_custom_field - Create custom field
  • wrike_update_custom_field - Update custom field
  • wrike_delete_custom_field - Delete custom field

Approvals (6 tools)

  • wrike_list_approvals - List approvals with filters
  • wrike_get_approval - Get approval details
  • wrike_create_approval - Create new approval
  • wrike_update_approval - Update approval
  • wrike_delete_approval - Delete approval
  • wrike_submit_approval_decision - Submit approve/reject decision

Webhooks (5 tools)

  • wrike_list_webhooks - List all webhooks
  • wrike_get_webhook - Get webhook details
  • wrike_create_webhook - Create new webhook
  • wrike_update_webhook - Update webhook
  • wrike_delete_webhook - Delete webhook

Work Schedules, Export, Audit & More (10 tools)

  • wrike_list_work_schedules - List work schedules
  • wrike_get_work_schedule - Get work schedule details
  • wrike_start_data_export - Start data export job
  • wrike_get_data_export_status - Get export status
  • wrike_get_audit_log - Get audit log entries
  • wrike_list_blueprints - List blueprints/templates
  • wrike_get_blueprint - Get blueprint details
  • wrike_launch_blueprint - Launch blueprint to create project
  • wrike_get_account - Get account information
  • wrike_get_version - Get API version
  • wrike_list_invitations - List pending invitations
  • wrike_invite_user - Invite user to account
  • wrike_delete_invitation - Cancel invitation
  • wrike_list_colors - List available colors
  • wrike_query_ids - Convert permalinks to IDs

🎨 20 Interactive React Apps

All apps built with React + Vite, client-side interactivity, and graceful degradation:

  1. task-dashboard - Task overview with status breakdown and filters
  2. task-detail - Full task detail view with edit capabilities
  3. task-board - Kanban board with drag-drop
  4. project-dashboard - Project overview with health status
  5. project-detail - Detailed project view with timeline
  6. folder-tree - Interactive folder hierarchy browser
  7. gantt-view - Gantt chart visualization for tasks
  8. time-tracker - Time tracking interface
  9. time-report - Time log reports and analytics
  10. comment-thread - Comment conversation view
  11. attachment-gallery - Attachment preview gallery
  12. team-workload - Team capacity and workload view
  13. workflow-editor - Custom workflow designer
  14. custom-fields-manager - Custom fields configuration
  15. approval-dashboard - Approval status overview
  16. space-overview - Space management dashboard
  17. blueprint-gallery - Template/blueprint browser
  18. audit-log-viewer - Audit log explorer
  19. search-results - Advanced search results view
  20. 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

  1. Log in to your Wrike account
  2. Go to Settings → Apps & Integrations → API
  3. Click "Create token"
  4. Copy the generated token
  5. 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