@denisixnpm/planka-mcp 2.2.0 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -4
- package/dist/server.js +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/@denisixnpm/planka-mcp)
|
|
4
4
|
[](https://github.com/denisix/planka-mcp/releases)
|
|
5
|
+
[](https://hub.docker.com/r/denisix/planka-mcp)
|
|
5
6
|
[](https://opensource.org/licenses/MIT)
|
|
6
7
|
|
|
7
8
|
MCP server for [Planka](https://planka.app/) (real-time Kanban), tuned for AI coding agents:
|
|
@@ -10,8 +11,25 @@ No build step, no Docker required — `npx` runs the prebuilt package over stdio
|
|
|
10
11
|
|
|
11
12
|
## Install
|
|
12
13
|
|
|
14
|
+
Two auth modes: **username/password** works on every Planka version (the server logs in
|
|
15
|
+
automatically, caches the token, and silently re-logins on expiry); **API key** is Planka **v2
|
|
16
|
+
only** — generate one in your Planka user settings → *API keys* (v1.26.x has no API keys; verified:
|
|
17
|
+
`X-Api-Key` returns 401 there).
|
|
18
|
+
|
|
13
19
|
### Claude Code
|
|
14
20
|
|
|
21
|
+
**Planka v1 (≤ 1.26.x) — username/password:**
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
claude mcp add planka \
|
|
25
|
+
--env PLANKA_BASE_URL=http://localhost:3000 \
|
|
26
|
+
--env PLANKA_USERNAME=your-email-or-username \
|
|
27
|
+
--env PLANKA_PASSWORD=your-password \
|
|
28
|
+
-- npx -y @denisixnpm/planka-mcp
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Planka v2 — API key (username/password above works too):**
|
|
32
|
+
|
|
15
33
|
```bash
|
|
16
34
|
claude mcp add planka \
|
|
17
35
|
--env PLANKA_BASE_URL=http://localhost:3000 \
|
|
@@ -19,7 +37,7 @@ claude mcp add planka \
|
|
|
19
37
|
-- npx -y @denisixnpm/planka-mcp
|
|
20
38
|
```
|
|
21
39
|
|
|
22
|
-
Or in `claude_desktop_config.json` / `.mcp.json
|
|
40
|
+
Or in `claude_desktop_config.json` / `.mcp.json` (username/password form — works on both versions):
|
|
23
41
|
|
|
24
42
|
```json
|
|
25
43
|
{
|
|
@@ -27,7 +45,7 @@ Or in `claude_desktop_config.json` / `.mcp.json`:
|
|
|
27
45
|
"planka": {
|
|
28
46
|
"command": "npx",
|
|
29
47
|
"args": ["-y", "@denisixnpm/planka-mcp"],
|
|
30
|
-
"env": { "PLANKA_BASE_URL": "http://localhost:3000", "
|
|
48
|
+
"env": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_USERNAME": "your-email-or-username", "PLANKA_PASSWORD": "your-password" }
|
|
31
49
|
}
|
|
32
50
|
}
|
|
33
51
|
}
|
|
@@ -35,6 +53,17 @@ Or in `claude_desktop_config.json` / `.mcp.json`:
|
|
|
35
53
|
|
|
36
54
|
### Codex (`~/.codex/config.toml`)
|
|
37
55
|
|
|
56
|
+
**Planka v1 (≤ 1.26.x):**
|
|
57
|
+
|
|
58
|
+
```toml
|
|
59
|
+
[mcp_servers.planka]
|
|
60
|
+
command = "npx"
|
|
61
|
+
args = ["-y", "@denisixnpm/planka-mcp"]
|
|
62
|
+
env = { PLANKA_BASE_URL = "http://localhost:3000", PLANKA_USERNAME = "your-email-or-username", PLANKA_PASSWORD = "your-password" }
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**Planka v2 (API key):**
|
|
66
|
+
|
|
38
67
|
```toml
|
|
39
68
|
[mcp_servers.planka]
|
|
40
69
|
command = "npx"
|
|
@@ -44,6 +73,22 @@ env = { PLANKA_BASE_URL = "http://localhost:3000", PLANKA_API_KEY = "your-api-ke
|
|
|
44
73
|
|
|
45
74
|
### opencode (`opencode.json`)
|
|
46
75
|
|
|
76
|
+
**Planka v1 (≤ 1.26.x):**
|
|
77
|
+
|
|
78
|
+
```json
|
|
79
|
+
{
|
|
80
|
+
"mcp": {
|
|
81
|
+
"planka": {
|
|
82
|
+
"type": "local",
|
|
83
|
+
"command": ["npx", "-y", "@denisixnpm/planka-mcp"],
|
|
84
|
+
"environment": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_USERNAME": "your-email-or-username", "PLANKA_PASSWORD": "your-password" }
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Planka v2 (API key):**
|
|
91
|
+
|
|
47
92
|
```json
|
|
48
93
|
{
|
|
49
94
|
"mcp": {
|
|
@@ -63,8 +108,8 @@ Requires Node.js ≥ 22.19 (or run the same command with Bun ≥ 1.3). Debug: `n
|
|
|
63
108
|
| Variable | Default | Description |
|
|
64
109
|
|----------|---------|-------------|
|
|
65
110
|
| `PLANKA_BASE_URL` | `http://localhost:3000` | Planka instance URL |
|
|
66
|
-
| `
|
|
67
|
-
| `
|
|
111
|
+
| `PLANKA_USERNAME` / `PLANKA_PASSWORD` | — | Login auth — **all Planka versions**; token is fetched, cached, and refreshed automatically |
|
|
112
|
+
| `PLANKA_API_KEY` | — | API key auth — **Planka v2 only** (user settings → API keys); wins if both are set |
|
|
68
113
|
| `PLANKA_HTTP_TIMEOUT_MS` | `30000` | Per-request timeout (aborts, then retries) |
|
|
69
114
|
| `PLANKA_HTTP_MAX_RETRIES` | `2` | Retries for `408`/`429`/`5xx` and network errors |
|
|
70
115
|
| `PLANKA_HTTP_RETRY_BASE_DELAY_MS` | `250` | Exponential backoff base (`base * 2^attempt`) |
|
|
@@ -119,6 +164,7 @@ loopback (`MCP_HOST=0.0.0.0`) — without it, anyone who can reach the port has
|
|
|
119
164
|
A `--healthcheck` mode is built in for orchestrators.
|
|
120
165
|
|
|
121
166
|
Prefer a container? The image is published on Docker Hub:
|
|
167
|
+
[`hub.docker.com/r/denisix/planka-mcp`](https://hub.docker.com/r/denisix/planka-mcp)
|
|
122
168
|
|
|
123
169
|
|
|
124
170
|
```bash
|
package/dist/server.js
CHANGED
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@denisixnpm/planka-mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.1",
|
|
4
4
|
"description": "MCP server for Planka - Real-Time Collaborative Kanban Board",
|
|
5
5
|
"main": "dist/server.js",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"bin": {
|
|
8
|
-
"planka-mcp": "
|
|
8
|
+
"planka-mcp": "dist/server.js"
|
|
9
9
|
},
|
|
10
10
|
"files": [
|
|
11
11
|
"dist"
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"license": "MIT",
|
|
37
37
|
"repository": {
|
|
38
38
|
"type": "git",
|
|
39
|
-
"url": "https://github.com/denisix/planka-mcp.git"
|
|
39
|
+
"url": "git+https://github.com/denisix/planka-mcp.git"
|
|
40
40
|
},
|
|
41
41
|
"homepage": "https://github.com/denisix/planka-mcp#readme",
|
|
42
42
|
"bugs": {
|