Another Planka MCP
An MCP server that enables AI assistants to interact with self-hosted Planka boards through the Planka REST API. It allows users to list, search, create, and update projects, boards, and cards using natural language.
README
Another Planka MCP
A Model Context Protocol (MCP) server that enables AI Chat clients to read and update your Planka boards using the Planka REST API.
Overview
Another Planka MCP Server provides you with a lightweight bridge between MCP clients and your self‑hosted Planka instance. It exposes projects, boards, lists, cards, tasks, and labels through MCP tools, allowing assistants to retrieve workspace data and perform write operations such as creating or updating cards.
Features
- List projects, boards, lists, labels, and members.
- Search and retrieve cards with multiple detail levels.
- Create and update cards (title, description, labels, tasks).
- Move cards between lists.
- Efficient token usage through structured MCP tools.
- Works with Claude Desktop and any MCP‑compatible client.
Example use cases:
- “Show all ‘In Progress’ cards across my workspace.”
- “Create a new card in
<Board> / TODOwith subtasks…” - “Find the ‘Login bug’ card and list all tasks.”
Prerequisites
- Python 3.10+
- Access to a Planka instance
- Planka API credentials (see below)
Obtaining API Credentials
Generate a JWT access token by authenticating via API:
curl -X POST https://your-planka-instance.com/api/access-tokens \
-H "Content-Type: application/json" \
-d '{
"emailOrUsername": "your-email@example.com",
"password": "your-password"
}'
Response:
{
"item": {
"accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
}
Copy the accessToken value and use it as PLANKA_API_TOKEN in your .env file.
Note: JWT tokens may expire. If you get authentication errors, generate a new token.
Email/Password (Fallback)
Use your Planka login credentials directly. The MCP server will authenticate automatically at startup:
PLANKA_EMAIL=your-email@example.com
PLANKA_PASSWORD=your-password
User Requirements:
- Any registered Planka user can authenticate
- No special permissions or admin role required
- API access permissions match your Planka user permissions
- Admin users have full access; regular users can only access boards they're members of
Setup
-
Clone the repo:
git clone https://github.com/roelven/another-planka-mcp cd another-planka-mcp -
Create environment:
python -m venv venv source venv/bin/activate pip install -r requirements.txt -
Copy env file:
cp .env.example .env -
Fill in:
PLANKA_BASE_URLPLANKA_API_TOKEN(recommended)
-
Start the server:
python planka_mcp.pyNote: For direct MCP protocol communication (recommended for Claude Desktop), you can also run:
python mcp_server.pyThis provides better compatibility with MCP clients and includes proper protocol handling.
-
Add to Claude Desktop config:
{ "mcpServers": { "planka": { "command": "/absolute/path/to/venv/bin/python", "args": ["mcp_server.py"], "env": { "PLANKA_BASE_URL": "https://your.domain", "PLANKA_API_TOKEN": "<token>" } } } }Note: Updated to use
mcp_server.pyfor better MCP protocol compatibility.
Tools & Capabilities
| Tool | Type | Purpose |
|---|---|---|
planka_get_workspace |
Read | Retrieve boards, lists, users, labels |
planka_list_cards |
Read | Filter and list cards with detail levels |
planka_find_and_get_card |
Read | Search and fetch a specific card |
planka_create_card |
Write | Create a new card |
planka_update_card |
Write | Update an existing card |
Usage Examples
Ask your assistant:
- “List all my boards.”
- “Search for cards mentioning ‘invoice’.”
- “Create a card named ‘App release checklist’ with these subtasks…”
- “Move the ‘Integrate payment API’ card to ‘Done’.”
Security & Permissions
- The MCP server accesses only what the authenticated Planka user can access.
- API token recommended over email/password.
- Use HTTPS when exposing Planka externally.
- Consider using a dedicated Planka service user with restricted permissions.
Troubleshooting & FAQ
401 Unauthorized
Check token validity and .env configuration.
Client cannot connect to server
Verify:
- correct Python path
- firewall rules
- execution permissions
No boards or cards returned
Confirm the Planka user has workspace access.
Development Notes
Editable Installation: This project uses an editable installation (via pip install -e . or the equivalent in the virtual environment), which means the src directory is automatically added to your Python path. This eliminates the need to manually set PYTHONPATH when running tests or the server.
Setting up editable mode: If you need to reinstall the package in editable mode, you can run:
pip install -e .
This creates a .pth file in your virtual environment that points to the src directory, making all imports work seamlessly.
Running Tests
The project includes a comprehensive test suite with >90% code coverage.
Since the package is installed in editable mode, you can run tests directly without setting PYTHONPATH:
# Install test dependencies
pip install -r requirements.txt
# Run all tests
pytest --cov=src/planka_mcp --cov-report=term-missing
# Run specific test file
pytest tests/test_cards.py -v
# View coverage report
open htmlcov/index.html
Alternatively, you can use the virtual environment's pytest directly:
venv/bin/pytest --cov=src/planka_mcp --cov-report=term-missing
Test with MCP Inspector
npx @modelcontextprotocol/inspector python planka_mcp.py
Run directly
python planka_mcp.py
Acknowledgements
- Planka project: https://github.com/plankanban/planka
- Model Context Protocol: https://modelcontextprotocol.io/
License
MIT License. See LICENSE.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。