Bump to 2.0.0 and widen SDK peer ranges to ^2.0.0

The client, core and server packages become ^2.0.0 peers and client is
now a required peer (App and AppBridge extend its Protocol class);
server stays optional for View-only consumers. Examples move to
zod ^4.2.0 to match the library peer range.

The root package is not yet published at 2.0.0, so the lockfile now
links the examples' @modelcontextprotocol/ext-apps dependency to the
repository root instead of a registry copy. This drops the stale 1.x
tarball (and its sdk 1.x peer) from the lockfile and makes
scripts/link-self.mjs a no-op.
This commit is contained in:
Olivier Chafik 2026-09-07 15:24:13 +01:00
commit 50eb30ec8d
26 changed files with 163 additions and 357 deletions

View file

@ -1,7 +1,7 @@
{
"homepage": "https://github.com/modelcontextprotocol/ext-apps/tree/main/examples/basic-host",
"name": "@modelcontextprotocol/ext-apps-basic-host",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"scripts": {
"build": "tsc --noEmit && concurrently \"cross-env INPUT=index.html vite build\" \"cross-env INPUT=sandbox.html vite build\"",
@ -11,11 +11,11 @@
"dev": "cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve\""
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/express": "^5.0.0",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-basic-preact",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Basic MCP App Server example using Preact",
"repository": {
@ -25,14 +25,14 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"preact": "^10.0.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@preact/preset-vite": "^2.0.0",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-basic-react",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Basic MCP App Server example using React",
"repository": {
@ -35,15 +35,15 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-basic-solid",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Basic MCP App Server example using Solid",
"repository": {
@ -25,14 +25,14 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"solid-js": "1.9.10",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-basic-svelte",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Basic MCP App Server example using Svelte",
"repository": {
@ -25,14 +25,14 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"svelte": "^5.0.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@sveltejs/vite-plugin-svelte": "^5.0.0",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-basic-vanillajs",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Basic MCP App Server example using vanilla JavaScript",
"repository": {
@ -25,13 +25,13 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-basic-vue",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Basic MCP App Server example using Vue",
"repository": {
@ -25,14 +25,14 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"vue": "^3.5.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-budget-allocator",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Budget allocator MCP App Server with interactive visualization",
"repository": {
@ -26,14 +26,14 @@
"serve": "bun --watch main.ts"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"chart.js": "^4.4.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-cohort-heatmap",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Cohort heatmap MCP App Server for retention analysis",
"repository": {
@ -26,15 +26,15 @@
"serve": "bun --watch main.ts"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-customer-segmentation",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Customer segmentation MCP App Server with filtering",
"repository": {
@ -26,14 +26,14 @@
"serve": "bun --watch main.ts"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"chart.js": "^4.4.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-debug",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Debug MCP App Server for testing all SDK capabilities",
"repository": {
@ -34,11 +34,11 @@
"prepublishOnly": "npm run build"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "integration-server",
"version": "1.7.5",
"version": "2.0.0",
"private": true,
"type": "module",
"scripts": {
@ -16,15 +16,15 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-lazy-auth",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "MCP App example demonstrating lazy (on-demand) OAuth: public tools work unauthenticated, protected tools return 401 + WWW-Authenticate so the host runs the OAuth flow only when needed",
"repository": {
@ -22,13 +22,13 @@
"prepublishOnly": "npm run build"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"jose": "^6.0.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-map",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "MCP App Server example with CesiumJS 3D globe and geocoding",
"repository": {
@ -27,13 +27,13 @@
},
"dependencies": {
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-pdf",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "MCP server for loading and extracting text from PDF files with chunked pagination and interactive viewer",
"repository": {
@ -27,14 +27,14 @@
"dependencies": {
"@cantoo/pdf-lib": "^2.6.5",
"@modelcontextprotocol/client": "2.0.0",
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"pdfjs-dist": "^5.0.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-qr",
"version": "1.7.5",
"version": "2.0.0",
"private": true,
"scripts": {
"start": "uv run server.py",
@ -8,6 +8,6 @@
"build": "echo 'No build step needed for Python server'"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0"
"@modelcontextprotocol/ext-apps": "^2.0.0"
}
}

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/quickstart",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"private": true,
"description": "Quickstart MCP App Server example",
@ -15,13 +15,13 @@
"start": "concurrently --raw \"cross-env NODE_ENV=development INPUT=mcp-app.html vite build --watch\" \"tsx watch main.ts\""
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-say",
"version": "1.7.5",
"version": "2.0.0",
"private": true,
"description": "Streaming TTS MCP App Server with karaoke-style text highlighting",
"repository": {
@ -15,6 +15,6 @@
"build": "echo 'No build step needed for Python server'"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0"
"@modelcontextprotocol/ext-apps": "^2.0.0"
}
}

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-scenario-modeler",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "Financial scenario modeling MCP App Server",
"repository": {
@ -26,8 +26,8 @@
"serve": "bun --watch main.ts"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"chart.js": "^4.4.0",
@ -35,7 +35,7 @@
"express": "^5.1.0",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

View file

@ -1,6 +1,6 @@
{
"name": "@modelcontextprotocol/server-shadertoy",
"version": "1.7.5",
"version": "2.0.0",
"type": "module",
"description": "MCP App Server example for rendering ShaderToy-compatible GLSL shaders",
"repository": {
@ -24,13 +24,13 @@
"prepublishOnly": "npm run build"
},
"dependencies": {
"@modelcontextprotocol/ext-apps": "^1.7.0",
"@modelcontextprotocol/express": "2.0.0",
"@modelcontextprotocol/ext-apps": "^2.0.0",
"@modelcontextprotocol/node": "2.0.0",
"@modelcontextprotocol/server": "2.0.0",
"cors": "^2.8.5",
"express": "^5.1.0",
"zod": "^4.1.13"
"zod": "^4.2.0"
},
"devDependencies": {
"@types/cors": "^2.8.19",

Some files were not shown because too many files have changed in this diff Show more