---
summary: "mcp-ts-core ^0.9.21 → ^0.10.6: identity pair, sampling removed, elicitation wired, DataCanvas SQL gate hardened; enrichment key renames totalCount; bundle cleaner; skill sync"
breaking: false
security: false
---

# 0.7.1 — 2026-06-11

## Changed

- **`createApp()`** — explicit `name: 'openalex-mcp-server'` / `title: 'openalex-mcp-server'` identity pair added to `src/index.ts`; required by `lint:packaging` check 9 (0.10.6).
- **`openalex_analyze_trends`** — enrichment trailer key renamed: `entityTotal` → `totalCount`. Matches the framework's `capped-list-no-truncation` lint rule convention; output field Zod schema and `enrichmentTrailer` label updated, `ctx.enrich()` call updated, tests updated.
- **`openalex_get_citation_graph`** — enrichment trailer key renamed: `totalEdges` → `totalCount`. Same convention alignment; output field Zod schema and `enrichmentTrailer` label updated, `ctx.enrich()` call updated, tests updated.
- **`.mcpbignore`** — `/.claude/` and `/.agents/` re-anchored to root (from `.claude/`, `.agents/`); prevents patterns from matching nested `node_modules/` runtime paths (framework fix [#207](https://github.com/cyanheads/mcp-ts-core/issues/207)).
- **`bundle` script** — appended `&& bun run scripts/clean-mcpb.ts dist/openalex-mcp-server.mcpb`; the post-pack cleaner strips `node_modules/**` agent-doc entries that root-anchored `.mcpbignore` cannot reach (0.10.6).
- **`scripts/build.ts`** — removed unused `copyAssets` function and its `copyFile`/`mkdir` imports; no field-catalog JSON to copy in this server.
- **Skills sync** — `add-prompt`, `add-resource`, `add-service`, `add-test`, `add-tool`, `api-canvas`, `api-config`, `api-context`, `api-linter`, `api-mirror`, `api-testing`, `api-workers`, `code-simplifier`, `design-mcp-server`, `orchestrations`, `polish-docs-meta`, `release-and-publish`, `report-issue-framework`, `security-pass` — all updated from mcp-ts-core 0.10.x; new `techniques/` skill directory added.
- **`scripts/lint-packaging.ts`** — large update: post-bundle content guard (check 8), entrypoint identity checks (check 9), `AGENT_DOC_ENTRY` regex, `KNOWN_DEV_DIRS`/`CRITICAL_RUNTIME_PATHS` exports.
- **`scripts/check-framework-antipatterns.ts`** — updated to skip comment lines (prevents false-positives on docs that name an antipattern).

## Dependencies

- `@cyanheads/mcp-ts-core` ^0.9.21 → ^0.10.6 (picks up 0.10.0–0.10.6; relevant changes below)
- `@types/node` ^25.9.2 → ^25.9.3

### Framework 0.10.x changes relevant to this server

- **`ctx.sample` removed** (0.10.3) — sampling surface deleted from `Context`; `AGENTS.md`/`CLAUDE.md` references to `ctx.sample` removed accordingly.
- **`ctx.elicit` wired on the wire** (0.10.3) — presence is now gated at request time on the client's advertised capability; previously always `undefined`.
- **`createApp()` identity fields** (0.10.3/0.10.6) — `name`, `title`, `websiteUrl`, `description` forwarded to `initialize` serverInfo and `/.well-known/mcp.json`; `lint:packaging` check 9 enforces the `name`/`title` pair matches the unscoped package name.
- **DataCanvas SQL gate hardened** (0.10.1) — non-SELECT statements fail closed; `pragma_*` table functions denied across the gate. Applies to any future canvas use in this server.
- **`ctx.enrich.truncated()` helper** (0.10.2) — eliminates cap-disclosure boilerplate; `capped-list-no-truncation` lint rule now warns on missing `truncated`/`totalCount` (the enrichment key renames above satisfy it).
- **Env-boolean stringbool** (0.10.0) — unrecognized boolean env values now throw at startup rather than silently coercing to false.
- **Bundle cleaner** (0.10.6) — `scripts/clean-mcpb.ts` strips agent-doc entries that root-anchored `.mcpbignore` cannot reach; synced to `bundle` script.
