This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+8 more
Affected surfaces
Summary
AI summaryUpdates Minor Changes, mcp, and req across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Security | High |
Enforces session tenant binding, rejecting mismatched session IDs to prevent cross‑tenant replay. Enforces session tenant binding, rejecting mismatched session IDs to prevent cross‑tenant replay. Source: llm_adapter@2026-07-13 Confidence: high |
— |
| Feature | Medium |
Adds capability-aware tool registration to MCP server. Adds capability-aware tool registration to MCP server. Source: llm_adapter@2026-07-13 Confidence: high |
— |
| Feature | Medium |
Introduces `instructions` support in CreateServerOptions threading to clients. Introduces `instructions` support in CreateServerOptions threading to clients. Source: llm_adapter@2026-07-13 Confidence: high |
— |
| Feature | Medium |
Adds `openWorldHint: false` to all 19 tool annotations, restricting tools to configured repository. Adds `openWorldHint: false` to all 19 tool annotations, restricting tools to configured repository. Source: llm_adapter@2026-07-13 Confidence: high |
— |
Full changelog
Minor Changes
-
1387ce1: feat(mcp): capability-aware tool listing, server instructions, openWorldHint, session tenant binding
@contentrain/mcp: the MCP surface now tells the truth about what it can do, per session.
- Capability-aware registration.
createServerconsults a new declarative requirement map (TOOL_REQUIREMENTS, exported from@contentrain/mcp/tools/availabilitytogether withisToolAvailable) and only registers tools the resolved provider +projectRootpair can satisfy. Local stdio/CLI flows keep the full 19-tool surface; remote-provider sessions (Studio MCP Cloud, GitHub/GitLab providers) now list only the remote-safe subset instead of advertising tools that always failed with a capability error. Input-dependent checks (validate --fix,applyreuse) remain call-time guards. instructionssupport.CreateServerOptions.instructionsthreads the MCPinstructionsstring to clients atinitialize. Defaults to a newDEFAULT_INSTRUCTIONS(< 512 chars, describes the describe-format-first and dry-run-first operating rules); pass''to omit.openWorldHint: falseadded to all 19 tool annotations — every tool operates on the configured repository only.- Session tenant binding. Multi-tenant HTTP mode accepts
sessionFingerprint(req): the fingerprint captured at session creation must match on every follow-up request carrying thatMcp-Session-Id; a mismatch answers404 Session not foundso the client re-initializes against its own provider. Closes cross-tenant session-id replay.
- Capability-aware registration.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Contentrain/ai
Local-first MCP server for AI content governance — 13 tools for model/content CRUD, validation, normalization, and i18n across any framework.
Related context
Earlier breaking changes
- v@contentrain/[email protected] `validateModelDefinition` now returns `{ errors, warnings }` instead of a string array.
- v@contentrain/[email protected] `model_save` rejects models with unknown keys, `min > max`, invalid constraints, and `unique` on singletons.
- v@contentrain/[email protected] `content_save` now validates before committing and rejects invalid content.
- v@contentrain/[email protected] `validateModelDefinition` now returns `{ errors, warnings }` instead of a string array.
- v@contentrain/[email protected] `model_save` rejects models with unknown keys, `min > max`, invalid constraints, and `unique` on singletons.
Beta — feedback welcome: [email protected]