feat(builder)!: remove deprecated SSE transport - Streamable HTTP only (2.0.0)

BREAKING CHANGE: GET /sse and POST /messages now answer 404. Every client
connects over Streamable HTTP at /mcp. The sse remote is removed from
server.json.

- Add unauthenticated GET /health ({status, version}); no session, no
  rate-limit touch.
- Add any-origin CORS across the whole HTTP surface, incl. OPTIONS
  preflight and error responses; mcp-session-id exposed to browsers.
- Unify every version string at 2.0.0; both McpServer identities now read
  the version from package.json at build time instead of hardcoding it.
- Raise @modelcontextprotocol/sdk floor to ^1.30.0 and sync the local
  install with the lockfile.
- Tests: retire the SSE-shaped auth-gating suite (its unique
  process-liveness test is ported to streamable-http-gating), move the
  shared harness and rate-limit suite to StreamableHTTPClientTransport,
  and add http-surface.test.ts for CORS//health//sse-404 coverage.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
david
2026-08-17 14:06:42 +02:00
parent e56f15700c
commit cc6e0ce83c
16 changed files with 354 additions and 405 deletions

53
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@apexfusion/mcp-server-monorepo",
"version": "0.1.0",
"version": "2.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@apexfusion/mcp-server-monorepo",
"version": "0.1.0",
"version": "2.0.0",
"hasInstallScript": true,
"license": "ISC",
"workspaces": [
@@ -1754,9 +1754,6 @@
"arm"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1771,9 +1768,6 @@
"arm"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1788,9 +1782,6 @@
"arm64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1805,9 +1796,6 @@
"arm64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1822,9 +1810,6 @@
"loong64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1839,9 +1824,6 @@
"loong64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1856,9 +1838,6 @@
"ppc64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1873,9 +1852,6 @@
"ppc64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1890,9 +1866,6 @@
"riscv64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1907,9 +1880,6 @@
"riscv64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1924,9 +1894,6 @@
"s390x"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1941,9 +1908,6 @@
"x64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1958,9 +1922,6 @@
"x64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -5290,11 +5251,11 @@
},
"packages/builder": {
"name": "@apexfusion/vector-mcp-builder",
"version": "0.1.0",
"version": "2.0.0",
"dependencies": {
"@aws-sdk/client-s3": "^3.1027.0",
"@lucid-evolution/lucid": "^0.4.29",
"@modelcontextprotocol/sdk": "^1.4.1",
"@modelcontextprotocol/sdk": "^1.30.0",
"@noble/hashes": "^1.7.1",
"dotenv": "^16.4.5",
"zod": "^3.24.1"
@@ -5311,7 +5272,7 @@
},
"packages/shared": {
"name": "@apexfusion/vector-mcp-shared",
"version": "0.1.0",
"version": "2.0.0",
"dependencies": {
"@lucid-evolution/lucid": "^0.4.29",
"@noble/hashes": "^1.7.1"
@@ -5322,11 +5283,11 @@
},
"packages/signer": {
"name": "@apexfusion/vector-mcp-signer",
"version": "0.1.0",
"version": "2.0.0",
"dependencies": {
"@anastasia-labs/cardano-multiplatform-lib-nodejs": "6.0.2-3",
"@lucid-evolution/wallet": "^0.1.72",
"@modelcontextprotocol/sdk": "^1.4.1",
"@modelcontextprotocol/sdk": "^1.30.0",
"zod": "^3.24.1"
},
"bin": {