---
summary: "@cyanheads/mcp-ts-core ^0.9.21 → ^0.10.6 — truncation enrichment signals on every tool, explicit server identity, hardened MCPB bundle packaging"
breaking: false
security: false
---

# 0.5.10 — 2026-06-12

## Added

- **Truncation enrichment** — `hn_get_stories`, `hn_get_thread`, `hn_get_user`, and `hn_search_content` emit `truncated`/`shown`/`cap` enrichment fields via `ctx.enrich.truncated()` when a result is capped by its count/`maxComments`/`submissionCount` parameter.
- **`HEALTHCHECK`** — the Docker image now probes `/healthz` (30s interval) so orchestrators see container health.

## Changed

- **`@cyanheads/mcp-ts-core` ^0.9.21 → ^0.10.6** — framework adoption.
- **Server identity** — `createApp()` now sets `name`/`title` to `hn-mcp-server` explicitly; `.codex-plugin` `displayName` drops the npm scope.
- **`bundle`** — runs `scripts/clean-mcpb.ts` after `mcpb pack`: official dev-dependency prune plus an exact-name strip of dependency-shipped agent docs (`skills/`, `.claude/`, `.agents/`, `SKILL.md`) nested under `node_modules/` that root-anchored `.mcpbignore` patterns cannot reach.
- **`lint:packaging`** — adds bundle-content guards (root dev dirs excluded, `.mcpbignore` patterns anchored, critical runtime paths preserved, built `.mcpb` free of agent-doc entries) and an identity check (`name`/`title`/manifest `display_name` equal the unscoped package name).
- **`check-framework-antipatterns`** — adds a `z.coerce.boolean()` env-flag rule (`Boolean("false")` is `true` — use `z.stringbool()`) and skips comment lines so documented mentions don't trip the scan.
- **`.mcpbignore`** — root dev-dir patterns anchored with a leading `/`; `.agents/` and `skills/` added.
- **Skill sync** — vendored skills resynced to the framework version; `add-export`, `add-provider`, and `techniques` added; `skills/README.md` added.
- **`hono` ^4.12.23 → ^4.12.25**, **`@types/node` ^25.9.1 → ^25.9.3**.
- **`typescript` ^6.0.3 → ^5.9.3** — pinned to 5.x (TS 6 not yet adopted); allowlisted in `devcheck` outdated.
