v2.3.0 — first release on the new distribution
Install
npx -y @denisixnpm/planka-mcp # Claude Code / Codex / opencode (stdio)
docker pull denisix/planka-mcp:2.3.0 # SSE multi-client mode
Release pipeline
- npm publish via trusted publishing (OIDC) from GitHub Actions — no token secret; triggers on
v* tags and published GitHub Releases, with an already-published guard.
- Docker Hub image
denisix/planka-mcp — multi-arch (amd64/arm64), tags 2.3.0 / 2.3 / 2 / latest, README-synced description, SBOM attached to the build.
- Automatic GitHub Release creation from this file.
package.json normalized for npm (bin without ./ — npm silently dropped the bin entry otherwise, breaking npx; git+https repository URL).
Features shipping in this release (from 2.2.0)
- Working context (
context tool): select project/board/list/card once; scoped tools fill omitted ids (set returns an overview of what you opened). Per SSE session; higher levels reset deeper ones.
- Condensed agent output (default on): whitelisted fields,
included sidecars reduced, secrets/audit metadata stripped, long text truncated. Escape hatches: per-call raw: true, PLANKA_CONDENSED_OUTPUT=false.
- Security hardening: 0
npm audit findings; loopback-only SSE default, timing-safe bearer auth, no wildcard CORS, validated login responses, single-flight login, per-request timeouts with bounded retries.
- Planka ≤ 1.26.x compatibility: renamed v1 routes retried transparently on 404 (memberships incl. query-param remove, project managers, card labels); v2-only features fail with clean 404s.
- Engine fixes:
data values win over generic id in path params; plural /custom-field-values/ path.
- Lean runtime: one production dependency (MCP SDK), built-in
fetch, compiled Bun binary on distroless, --healthcheck CLI mode.
- 117 tests: live E2E against real Planka 2.0.3 and 1.26.2 stacks, SSE protocol round-trips, engine/context/condense edge suites.