@denisixnpm/planka-mcp 2.3.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 CHANGED
@@ -11,8 +11,25 @@ No build step, no Docker required — `npx` runs the prebuilt package over stdio
11
11
 
12
12
  ## Install
13
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
+
14
19
  ### Claude Code
15
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
+
16
33
  ```bash
17
34
  claude mcp add planka \
18
35
  --env PLANKA_BASE_URL=http://localhost:3000 \
@@ -20,7 +37,7 @@ claude mcp add planka \
20
37
  -- npx -y @denisixnpm/planka-mcp
21
38
  ```
22
39
 
23
- Or in `claude_desktop_config.json` / `.mcp.json`:
40
+ Or in `claude_desktop_config.json` / `.mcp.json` (username/password form — works on both versions):
24
41
 
25
42
  ```json
26
43
  {
@@ -28,7 +45,7 @@ Or in `claude_desktop_config.json` / `.mcp.json`:
28
45
  "planka": {
29
46
  "command": "npx",
30
47
  "args": ["-y", "@denisixnpm/planka-mcp"],
31
- "env": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_API_KEY": "your-api-key" }
48
+ "env": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_USERNAME": "your-email-or-username", "PLANKA_PASSWORD": "your-password" }
32
49
  }
33
50
  }
34
51
  }
@@ -36,6 +53,17 @@ Or in `claude_desktop_config.json` / `.mcp.json`:
36
53
 
37
54
  ### Codex (`~/.codex/config.toml`)
38
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
+
39
67
  ```toml
40
68
  [mcp_servers.planka]
41
69
  command = "npx"
@@ -45,6 +73,22 @@ env = { PLANKA_BASE_URL = "http://localhost:3000", PLANKA_API_KEY = "your-api-ke
45
73
 
46
74
  ### opencode (`opencode.json`)
47
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
+
48
92
  ```json
49
93
  {
50
94
  "mcp": {
@@ -64,8 +108,8 @@ Requires Node.js ≥ 22.19 (or run the same command with Bun ≥ 1.3). Debug: `n
64
108
  | Variable | Default | Description |
65
109
  |----------|---------|-------------|
66
110
  | `PLANKA_BASE_URL` | `http://localhost:3000` | Planka instance URL |
67
- | `PLANKA_API_KEY` | — | API key auth (recommended; wins if both are set) |
68
- | `PLANKA_USERNAME` / `PLANKA_PASSWORD` | — | Login auth (alternative to API key) |
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 |
69
113
  | `PLANKA_HTTP_TIMEOUT_MS` | `30000` | Per-request timeout (aborts, then retries) |
70
114
  | `PLANKA_HTTP_MAX_RETRIES` | `2` | Retries for `408`/`429`/`5xx` and network errors |
71
115
  | `PLANKA_HTTP_RETRY_BASE_DELAY_MS` | `250` | Exponential backoff base (`base * 2^attempt`) |
package/dist/server.js CHANGED
@@ -342,7 +342,7 @@ if (!process.argv.includes("--healthcheck")) {
342
342
  function createMcpServer() {
343
343
  const server = new McpServer({
344
344
  name: "planka-mcp",
345
- version: "2.3.0",
345
+ version: "2.3.1",
346
346
  }, {
347
347
  capabilities: {
348
348
  tools: {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@denisixnpm/planka-mcp",
3
- "version": "2.3.0",
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",