planka-mcp
README.md
# PLANKA MCP Server
A Model Context Protocol (MCP) server for [PLANKA](https://planka.app) kanban boards, purpose-built for Claude and other AI agents.
## Features
- Full PLANKA 2.0 API support
- Type-safe with Zod validation
- Optimized for agent workflows (combined operations, sensible defaults)
- 13 tools covering cards, tasks, labels, comments, and lists
## Installation
```bash
npm install @gogogadgetbytes/planka-mcp
```
Or run directly:
```bash
npx @gogogadgetbytes/planka-mcp
```
## Configuration
### Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| `PLANKA_BASE_URL` | Yes | Your PLANKA server URL |
| `PLANKA_AGENT_EMAIL` | Yes | Agent user email |
| `PLANKA_AGENT_PASSWORD` | Yes | Agent user password |
### Claude Desktop
Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
```json
{
"mcpServers": {
"planka": {
"command": "npx",
"args": ["@gogogadgetbytes/planka-mcp"],
"env": {
"PLANKA_BASE_URL": "https://planka.example.com",
"PLANKA_AGENT_EMAIL": "agent@example.com",
"PLANKA_AGENT_PASSWORD": "your-password"
}
}
}
}
```
### Claude Code
Add to `~/.claude.json`:
```json
{
"mcpServers": {
"planka": {
"command": "npx",
"args": ["@gogogadgetbytes/planka-mcp"],
"env": {
"PLANKA_BASE_URL": "https://planka.example.com",
"PLANKA_AGENT_EMAIL": "agent@example.com",
"PLANKA_AGENT_PASSWORD": "your-password"
}
}
}
}
```
## Available Tools
### Navigation
| Tool | Description |
|------|-------------|
| `planka_get_structure` | Get projects, boards, and lists hierarchy |
| `planka_get_board` | Get a board with all cards, lists, and labels |
### Cards
| Tool | Description |
|------|-------------|
| `planka_create_card` | Create a card (optionally with tasks) |
| `planka_update_card` | Update card properties |
| `planka_move_card` | Move card to different list/position |
| `planka_get_card` | Get card details with tasks/comments |
| `planka_delete_card` | Delete a card |
### Tasks
| Tool | Description |
|------|-------------|
| `planka_create_tasks` | Add tasks (checklist items) to a card |
| `planka_update_task` | Update task name or completion |
| `planka_delete_task` | Delete a task |
### Labels
| Tool | Description |
|------|-------------|
| `planka_manage_labels` | Create/update/delete board labels |
| `planka_set_card_labels` | Add/remove labels from a card |
### Comments
| Tool | Description |
|------|-------------|
| `planka_add_comment` | Add a comment to a card |
| `planka_get_comments` | Get all comments on a card |
### Lists
| Tool | Description |
|------|-------------|
| `planka_manage_lists` | Create/update/delete lists |
## Usage Examples
### Get board structure
```
Use planka_get_structure to see all projects and boards
```
### Create a card with tasks
```
Use planka_create_card with:
- listId: "abc123"
- name: "Implement feature X"
- tasks: ["Research", "Design", "Implement", "Test"]
```
### Move card through workflow
```
Use planka_move_card to move card from "To Do" to "In Progress"
```
## PLANKA 2.0 Compatibility
This server is designed for PLANKA 2.0 and handles the API differences from 1.x:
- Card creation includes required `type` field
- Label endpoints use `/card-labels` path
- Optional fields handled gracefully
## Development
```bash
# Clone
git clone https://github.com/gogogadgetbytes/planka-mcp.git
cd planka-mcp
# Install
npm install
# Build
npm run build
# Test
npm test
```
## License
MIT
## Links
- [PLANKA](https://planka.app) - The kanban board
- [MCP SDK](https://github.com/modelcontextprotocol/sdk) - Model Context Protocol
- [Design Document](./DESIGN.md) - Technical design details
TDQS
A3.7/5.0
Scored across 15 tools
Disambiguation5/5
Each tool targets a distinct action (create, delete, update, get) on a specific resource (card, task, comment, label, list, board), with no overlapping purposes.
Naming Consistency5/5
All tools follow a consistent 'planka_verb_noun' pattern using snake_case, such as 'create_card', 'delete_task', 'get_board', making them predictable and easy to navigate.
Tool Count5/5
With 15 tools, the set covers the essential operations for a project management board without being excessive or sparse, striking a good balance for its scope.
Completeness4/5
Core CRUD operations for cards, tasks, labels, and lists are covered, and comments are readable and addable, but lacking delete/update comment and attachment management represents minor gaps.
Maintenance
ActivityInactive
ResponsivenessUnresponsive