diff --git a/.changeset/mcp-manifest-audit-fixes.md b/.changeset/mcp-manifest-audit-fixes.md deleted file mode 100644 index 17cfbb9..0000000 --- a/.changeset/mcp-manifest-audit-fixes.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -"@senderkit/sdk": minor -"@senderkit/cli": minor ---- - -MCP manifest fixes from the 2026-07-31 connectors-directory audit — the shared -manifest now states the real wire contract, so the hosted server no longer needs -app-side overrides for these: - -- **`ToolAnnotations` widened to admit non-destructive writes.** The union was - `readOnlyHint: true` XOR `destructiveHint: true`, but MCP also has additive, - non-destructive writes (`destructiveHint: false`) — e.g. the app's - `templates_create` / `inbound_addresses_create`. `destructiveHint` now accepts - either boolean (still exactly one hint per tool). -- **cc/bcc descriptions no longer leak CLI input conventions.** On the MCP wire - these fields are plain JSON arrays; "(CLI: comma-separated or JSON array)" is - gone from the manifest, and the schema now also enforces the API's 50-recipient - cap (`maxItems: 50`). The CLI keeps documenting comma-separated input in its - own flag help via the new `Command.flagHelp` per-flag override. -- **List limits are bounded.** `messagesListInput.limit` advertises the service - clamp (1-200, default 50) instead of an unbounded positive int, and - `inboundMessagesListInput.limit` now enforces the 1-100 bounds its description - already claimed. Out-of-range values fail at the schema instead of being - silently clamped server-side. diff --git a/examples/nextjs-basic/CHANGELOG.md b/examples/nextjs-basic/CHANGELOG.md index 4505c23..fc1fbbb 100644 --- a/examples/nextjs-basic/CHANGELOG.md +++ b/examples/nextjs-basic/CHANGELOG.md @@ -1,5 +1,12 @@ # @senderkit-examples/nextjs-basic +## 0.0.15 + +### Patch Changes + +- Updated dependencies [ca9d5ec] + - @senderkit/sdk@0.14.0 + ## 0.0.14 ### Patch Changes diff --git a/examples/nextjs-basic/package.json b/examples/nextjs-basic/package.json index 354d2f9..47d660a 100644 --- a/examples/nextjs-basic/package.json +++ b/examples/nextjs-basic/package.json @@ -1,6 +1,6 @@ { "name": "@senderkit-examples/nextjs-basic", - "version": "0.0.14", + "version": "0.0.15", "private": true, "scripts": { "dev": "next dev", diff --git a/examples/node-basic/CHANGELOG.md b/examples/node-basic/CHANGELOG.md index 30da4f4..cc94a5e 100644 --- a/examples/node-basic/CHANGELOG.md +++ b/examples/node-basic/CHANGELOG.md @@ -1,5 +1,12 @@ # @senderkit-examples/node-basic +## 0.0.15 + +### Patch Changes + +- Updated dependencies [ca9d5ec] + - @senderkit/sdk@0.14.0 + ## 0.0.14 ### Patch Changes diff --git a/examples/node-basic/package.json b/examples/node-basic/package.json index 3dabdf6..392c805 100644 --- a/examples/node-basic/package.json +++ b/examples/node-basic/package.json @@ -1,6 +1,6 @@ { "name": "@senderkit-examples/node-basic", - "version": "0.0.14", + "version": "0.0.15", "private": true, "type": "module", "scripts": { diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 45b5392..619cc50 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,34 @@ # @senderkit/cli +## 0.9.0 + +### Minor Changes + +- ca9d5ec: MCP manifest fixes from the 2026-07-31 connectors-directory audit — the shared + manifest now states the real wire contract, so the hosted server no longer needs + app-side overrides for these: + + - **`ToolAnnotations` widened to admit non-destructive writes.** The union was + `readOnlyHint: true` XOR `destructiveHint: true`, but MCP also has additive, + non-destructive writes (`destructiveHint: false`) — e.g. the app's + `templates_create` / `inbound_addresses_create`. `destructiveHint` now accepts + either boolean (still exactly one hint per tool). + - **cc/bcc descriptions no longer leak CLI input conventions.** On the MCP wire + these fields are plain JSON arrays; "(CLI: comma-separated or JSON array)" is + gone from the manifest, and the schema now also enforces the API's 50-recipient + cap (`maxItems: 50`). The CLI keeps documenting comma-separated input in its + own flag help via the new `Command.flagHelp` per-flag override. + - **List limits are bounded.** `messagesListInput.limit` advertises the service + clamp (1-200, default 50) instead of an unbounded positive int, and + `inboundMessagesListInput.limit` now enforces the 1-100 bounds its description + already claimed. Out-of-range values fail at the schema instead of being + silently clamped server-side. + +### Patch Changes + +- Updated dependencies [ca9d5ec] + - @senderkit/sdk@0.14.0 + ## 0.8.0 ### Minor Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index 454f003..34233fb 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@senderkit/cli", - "version": "0.8.0", + "version": "0.9.0", "description": "SenderKit command-line interface and MCP server — send notifications and inspect templates/messages from your terminal or AI assistant.", "license": "MIT", "homepage": "https://github.com/senderkit/senderkit-sdk#readme", diff --git a/packages/sdk/CHANGELOG.md b/packages/sdk/CHANGELOG.md index 0f1ffa3..81a1db7 100644 --- a/packages/sdk/CHANGELOG.md +++ b/packages/sdk/CHANGELOG.md @@ -1,5 +1,29 @@ # @senderkit/sdk +## 0.14.0 + +### Minor Changes + +- ca9d5ec: MCP manifest fixes from the 2026-07-31 connectors-directory audit — the shared + manifest now states the real wire contract, so the hosted server no longer needs + app-side overrides for these: + + - **`ToolAnnotations` widened to admit non-destructive writes.** The union was + `readOnlyHint: true` XOR `destructiveHint: true`, but MCP also has additive, + non-destructive writes (`destructiveHint: false`) — e.g. the app's + `templates_create` / `inbound_addresses_create`. `destructiveHint` now accepts + either boolean (still exactly one hint per tool). + - **cc/bcc descriptions no longer leak CLI input conventions.** On the MCP wire + these fields are plain JSON arrays; "(CLI: comma-separated or JSON array)" is + gone from the manifest, and the schema now also enforces the API's 50-recipient + cap (`maxItems: 50`). The CLI keeps documenting comma-separated input in its + own flag help via the new `Command.flagHelp` per-flag override. + - **List limits are bounded.** `messagesListInput.limit` advertises the service + clamp (1-200, default 50) instead of an unbounded positive int, and + `inboundMessagesListInput.limit` now enforces the 1-100 bounds its description + already claimed. Out-of-range values fail at the schema instead of being + silently clamped server-side. + ## 0.13.0 ### Minor Changes diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 3908040..ce54e03 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@senderkit/sdk", - "version": "0.13.0", + "version": "0.14.0", "description": "Official TypeScript SDK for SenderKit — notification infrastructure for modern SaaS apps.", "license": "MIT", "homepage": "https://github.com/senderkit/senderkit-sdk#readme",