Planka MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Planka MCP Server show my projects"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Planka MCP Server
An MCP server that enables AI assistants (Claude, VS Code Copilot, etc.) to interact with Planka - a real-time Kanban board application.
Quick Start
Prerequisites
Node.js 18+ or Docker
Planka instance running and accessible
Planka user account with appropriate permissions
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"planka": {
"command": "npx",
"args": ["@chmald/planka-mcp"],
"env": {
"PLANKA_BASE_URL": "http://localhost:3000",
"PLANKA_API_KEY": "your-api-key"
}
}
}
}VS Code
Add to .vscode/mcp.json:
{
"servers": {
"planka": {
"type": "stdio",
"command": "npx",
"args": ["@chmald/planka-mcp"],
"env": {
"PLANKA_BASE_URL": "http://localhost:3000",
"PLANKA_API_KEY": "your-api-key"
}
}
}
}Docker
{
"mcpServers": {
"planka": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "PLANKA_BASE_URL=http://host.docker.internal:3000",
"-e", "PLANKA_API_KEY=your-api-key",
"chmald/planka-mcp:latest"
]
}
}
}Note: Use
host.docker.internalinstead oflocalhostwhen running Docker.
Related MCP server: kanban-mcp
Configuration
Environment Variables
Variable | Required | Default | Description |
| Yes |
| Your Planka instance URL |
| No* | - | Planka API key sent as |
| No* | - | Planka username or email |
| No* | - | Planka password |
| No |
| MCP transport mode: |
| No |
| HTTP port used when |
| No |
| Max retry attempts for transient HTTP/network failures per request |
| No |
| Base retry delay in milliseconds (exponential backoff) |
| No |
| Enable all 27 tools |
| No |
| Enable admin tools |
| No |
| Enable optional tools |
* Authentication is required. Provide either PLANKA_API_KEY, or both PLANKA_USERNAME and PLANKA_PASSWORD.
Authentication Modes
API key (recommended): Set
PLANKA_API_KEY.Username/password: Set
PLANKA_USERNAMEandPLANKA_PASSWORD.If both are set, the server uses
PLANKA_API_KEY.
Retry Behavior
Retries apply to transient failures (
408,429,5xx) and network request errors.Delay uses exponential backoff:
PLANKA_HTTP_RETRY_BASE_DELAY_MS * 2^attempt.PLANKA_HTTP_MAX_RETRIEScontrols additional attempts after the initial request.
Tool Categories
By default, 10 core tools are enabled for essential Kanban operations:
Category | Tools | Description |
Core | 10 | Auth, projects, boards, lists, cards, tasks, comments, labels (always enabled) |
Optional | 13 | Attachments, custom fields, notifications, etc. |
Admin | 4 | User management, webhooks, config |
Enable more tools:
"env": {
"ENABLE_ALL_TOOLS": "true"
}Available Tools
Each tool uses an action parameter. Example: { "action": "list" } or { "action": "get", "id": "123" }
Tool | Actions |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tool | Actions |
|
|
|
|
|
|
|
|
Tool | Actions |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Multi-Client Mode (SSE)
For team deployments where multiple clients share one server:
docker run -d \
--name planka-mcp \
-p 3001:3001 \
-e MCP_TRANSPORT=sse \
-e PLANKA_BASE_URL=http://your-planka-server:3000 \
-e PLANKA_API_KEY=your-api-key \
chmald/planka-mcp:latestConnect clients to http://localhost:3001/sse.
Troubleshooting
"Authentication failed"
Verify your API key (or username/password) is correct
Check that
PLANKA_BASE_URLis accessible
"Connection refused" with Docker
Use
host.docker.internalinstead oflocalhostEnsure Planka is running
npx fails
Ensure Node.js 18+ is installed:
node --versionTry:
npm cache clean --force
Debug logs
npx @chmald/planka-mcp 2>&1 | tee debug.logUpgrade Notes
Check CHANGELOG.md for full version-by-version details.
Upgrading to 2.0.3
The
authtool moved from optional tools to core tools and is now always available.API key authentication is now supported with
PLANKA_API_KEY(X-Api-Key).If both API key and username/password are configured,
PLANKA_API_KEYis used.
Links
GitHub Issues - Report bugs
Planka - The Kanban board application
CONTRIBUTING.md - Development & publishing guide
CHANGELOG.md - Versioned API and tooling updates
SECURITY.md - Security policy
License
MIT - see LICENSE
Available Tools
10 toolsauthB
Authentication operations for login flows, token management, and terms acceptance.
Inputs: action (required), data, query.
boardsC
Manage Planka boards. Boards contain lists and cards for organizing work.
Inputs: action (required), id, data.
bootstrapB
Get Planka application bootstrap data including current user, projects, boards, and notifications.
Inputs: action (required).
cardMembersC
Manage user assignments on Planka cards.
Inputs: action (required), id, data.
cardsC
Manage Planka cards. Cards are individual work items on a board.
Inputs: action (required), id, data, query.
commentsC
Manage comments on Planka cards.
Inputs: action (required), id, data, query.
labelsB
Manage labels on Planka boards and cards. Labels help categorize and filter cards.
Inputs: action (required), id, data.
listsB
Manage Planka lists. Lists are columns on a board that contain cards.
Inputs: action (required), id, data.
projectsB
Manage Planka projects. Projects are top-level containers for boards.
Inputs: action (required), id, data.
tasksB
Manage task lists and tasks on Planka cards. Tasks are checklist items within a card.
Inputs: action (required), id, data.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 10 tools
Each tool targets a distinct Planka resource or function: projects, boards, lists, cards, comments, tasks, labels, cardMembers, plus bootstrap and auth. There is no overlap in primary purpose, and even the potentially confusing lists vs. tasks are clearly differentiated by their descriptions (columns vs. checklist items).
Tool names are mostly single lowercase nouns representing resources (projects, boards, lists, cards), which is a consistent pattern. However, 'cardMembers' uses camelCase breaking the all-lowercase convention, and 'bootstrap' and 'auth' are not resource CRUD names, creating minor semantic deviation.
With 10 tools covering core Planka entities and operations, the count is well-scoped for the domain. It is neither too thin nor overly heavy, fitting comfortably within the typical 3-15 tool range for a focused CRUD server.
The tool set covers the primary resource lifecycle for projects, boards, lists, cards, comments, tasks, labels, and members, which is sufficient for most workflow needs. Minor gaps exist (e.g., no explicit search, activity log, or attachment support), but these are not critical for baseline operations.
Maintenance
Related MCP Connectors
Read and manage your EasyKanban kanban boards: to-do summaries, create, update, and move cards.
Remote MCP for Kanban AI boards—manage projects, tasks, and comments from AI tools.
Task & board management for AI agents + humans. Kanban, comments, digests via MCP.
Create and manage MeisterTask projects, tasks, and notes from your AI assistant.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI-powered project management by connecting Claude to Planka kanban boards via 75+ MCP tools for creating, updating, and managing projects, boards, lists, and cards.1GPL 3.0
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage Planka kanban boards, including creating, updating, and organizing tasks, lists, and cards via MCP.15 npm65MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to manage Kanban tasks, boards, teams, and checklists via natural language, with full CRUD operations and live updates.126 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables users to interact with Planka (a Trello-like kanban tool) through natural language, using their own Planka access tokens for authentication and permissions. Supports remote hosting via HTTP, allowing multi-user MCP access to boards, lists, cards, and more.15 npmMIT