---
summary: "Framework adoption to mcp-ts-core 0.12.3 (MCP SDK v2) — strict tool inputs, JSON Schema 2020-12, protocol revision 2026-07-28"
breaking: false
security: false
---

# 0.3.10 — 2026-08-25

## Changed

- **`@cyanheads/mcp-ts-core`** framework adoption crosses the breaking `0.12.0` MCP SDK v2 line (see Dependencies). `src/` is untouched — the jump is client-visible only: every HTTP endpoint now serves protocol revision `2026-07-28` alongside the 2025-era revisions; tool arguments are strict (an undeclared argument key is refused by name instead of silently dropped); advertised `inputSchema`/`outputSchema` are JSON Schema 2020-12 (previously draft-07), and `outputSchema` now declares the error envelope; input-validation failures read as flat `path: message` sentences; an unknown or disabled tool now rejects with `-32602`.
- **`.github/SECURITY.md`** vulnerability-report contact changed to `security@caseyjhand.com`.
- **`.env.example`** documents `MCP_SESSION_MODE`'s `stateless` option and names the real default (`auto`, which resolves to `stateful`).
- **Bun** pinned to `1.4.0` in both `Dockerfile` stages and `packageManager`; `engines.bun` deliberately stays `>=1.3.0`.
- **`tsconfig.json`** now typechecks `tests/` in addition to `src/`; the emit-only config (`rootDir: src`, `noEmit: false`) moved to `tsconfig.build.json`.

## Added

- **`tests/tools/input-strictness.test.ts`** characterizes the strict-input and 2020-12 advertised-schema behavior across every tool.
- **`.github/CONTRIBUTING.md`** and **`.github/CODE_OF_CONDUCT.md`** community-health files.

431 tests pass; `bun run devcheck` and `bun run rebuild` clean.

## Dependencies

- `@cyanheads/mcp-ts-core` `^0.11.1` → `^0.12.3`
- `@biomejs/biome` (dev) `^2.5.7` → `^2.5.10`
- `@types/node` (dev) `^26.1.2` → `^26.2.0`
- `tsc-alias` (dev) `^1.9.1` → `^1.9.2`
- `vitest` (dev) `^4.1.9` → `^4.1.11`
- Lockfile-only advisory clears: `brace-expansion` `2.1.2` → `2.1.4`, `fast-uri` `3.1.3` → `3.1.5`, `ip-address` `10.2.0` → `10.3.1`, `js-yaml` `3.15.0` → `3.15.1`, `nanoid` `3.3.15` → `3.3.18`, `postcss` `8.5.16` → `8.5.23`
