Repository navigation
v0.10.4 — MCP servers that start, and a publish that can't ship a stale build
MCP servers no longer open red in a fresh workspace
init used to write server definitions Kiro could not start. Five separate causes, all fixed:
${WORKSPACE_ROOT}was written verbatim into args — Kiro does not interpolate it, so the filesystem server got a literal path. It is now resolved at write time.- Credentialed servers were "disabled" by renaming the key to
_disabled_<name>, which is not a Kiro convention — Kiro saw a server literally named_disabled_githuband tried to launch it. They now use Kiro's own"disabled": truefield with a_commentnaming the variable to set. Existing_disabled_*keys migrate on the nextinit. uvxservers (git, fetch) shipped enabled but need theuvPython toolchain. They now ship disabled with install instructions.- An unresolved
${VAR}in a server'senvdisables that server instead of letting it fail at launch. - MCP setup was nested inside the "Configuring Powers" task, so
--powers nonesilently skipped it. It is its own task now, and both.mcp.jsonand.kiro/settings/mcp.jsoncome from one normalised config.
A server you enabled by hand is never switched back off, and user-defined servers are still never overwritten.
A stale dist/ can no longer be published
npm publish packs whatever sits in dist/, and nothing rebuilt it first — so kiro-kit@0.10.3 on npm shipped a build from 20 May: 7 presets instead of 10 (no sa, kiro-kit-dev, ai-engineer), none of the MCP fixes above, plus 41 stray .coverage files. That version is now deprecated on npm — use 0.10.4.
packages/cli now runs prepublishOnly: clean && build, so publishing always rebuilds from source.
Also fixed
- A backup/restore property test generated
.as a filename, so the write failed with EISDIR on some seeds — read as CI flake rather than a generator bug. - Documents named after an
Object.prototypekey (toString,constructor, …) no longer break the parity-sync rebrander:gray-matter's cache is a plain object, so those names hit the prototype and parsed tobody: undefined.
Verified in the published package
10 preset directories, the MCP normaliser present in the bundle, zero stray files, and npx kiro-kit init --preset sa produces a workspace whose mcp.json has no _disabled_ keys and no unresolved ${WORKSPACE_ROOT}.
npx kiro-kit@0.10.4 init