Planka MCP Server

Planka MCP Server

Enables AI assistants to interact with Planka, a real-time Kanban board application, for managing projects, boards, lists, cards, and more.

Category
Visit Server

README

Planka MCP Server

npm version Docker Image Version License: MIT

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.internal instead of localhost when running Docker.


Configuration

Environment Variables

Variable Required Default Description
PLANKA_BASE_URL Yes http://localhost:3000 Your Planka instance URL
PLANKA_API_KEY No* - Planka API key sent as X-Api-Key
PLANKA_USERNAME No* - Planka username or email
PLANKA_PASSWORD No* - Planka password
MCP_TRANSPORT No stdio MCP transport mode: stdio or sse
MCP_PORT No 3001 HTTP port used when MCP_TRANSPORT=sse
PLANKA_HTTP_MAX_RETRIES No 2 Max retry attempts for transient HTTP/network failures per request
PLANKA_HTTP_RETRY_BASE_DELAY_MS No 250 Base retry delay in milliseconds (exponential backoff)
ENABLE_ALL_TOOLS No false Enable all 27 tools
ENABLE_ADMIN_TOOLS No false Enable admin tools
ENABLE_OPTIONAL_TOOLS No false 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_USERNAME and PLANKA_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_RETRIES controls 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" }

<details> <summary><strong>Core Tools</strong> (always enabled)</summary>

Tool Actions
auth login, logout, acceptTerms, oidcExchange, revokePending, getTerms
bootstrap get - Get app data, user info, projects
projects list, get, create, update, delete
boards get, create, update, delete
lists get, create, update, delete
cards list, get, create, update, delete
comments list, create
tasks getList, createList, create, update
labels create, update, delete, addToCard, removeFromCard
cardMembers add, remove

</details>

<details> <summary><strong>Admin Tools</strong> (ENABLE_ADMIN_TOOLS=true)</summary>

Tool Actions
config get, update, testSmtp
users list, create, update, delete, updateEmail, updatePassword, etc.
webhooks list, create, update, delete
projectManagers add, remove

</details>

<details> <summary><strong>Optional Tools</strong> (ENABLE_OPTIONAL_TOOLS=true)</summary>

Tool Actions
attachments create, update, delete
boardMembers add, update, remove
customFields createBaseGroup, createField, setValue, etc.
notifications list, get, markRead, markAllRead, markCardRead, createUserService, createBoardService, updateService, deleteService, testService
actions boardActions, cardActions
cardExtras duplicate
commentExtras update, delete
listExtras clear, moveCards, sort
taskExtras updateList, deleteList, deleteTask
labelExtras update, delete, removeFromCard
cardMemberExtras remove
backgroundImages upload, delete
userInfo get

</details>


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:latest

Connect clients to http://localhost:3001/sse.


Troubleshooting

"Authentication failed"

  • Verify your API key (or username/password) is correct
  • Check that PLANKA_BASE_URL is accessible

"Connection refused" with Docker

  • Use host.docker.internal instead of localhost
  • Ensure Planka is running

npx fails

  • Ensure Node.js 18+ is installed: node --version
  • Try: npm cache clean --force

Debug logs

npx @chmald/planka-mcp 2>&1 | tee debug.log

Upgrade Notes

Check CHANGELOG.md for full version-by-version details.

Upgrading to 2.0.3

  • The auth tool 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_KEY is used.

Links

License

MIT - see LICENSE

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured