diff --git a/.github/workflows/update-snapshots.yml b/.github/workflows/update-snapshots.yml index acd20eb5..52795d68 100644 --- a/.github/workflows/update-snapshots.yml +++ b/.github/workflows/update-snapshots.yml @@ -7,23 +7,50 @@ on: description: "Branch to update snapshots on" required: true default: "main" - # Temporary: auto-run on this branch to update snapshots - push: - branches: - - "ochafik/fix-e2e-flaky-tests" - paths: - - ".github/workflows/update-snapshots.yml" + issue_comment: + types: [created] permissions: contents: write + pull-requests: write jobs: update-snapshots: + # Run on workflow_dispatch OR when someone comments "/update-snapshots" on a PR + if: > + github.event_name == 'workflow_dispatch' || + (github.event.issue.pull_request && contains(github.event.comment.body, '/update-snapshots')) runs-on: ubuntu-latest steps: + - name: Get PR branch + if: github.event_name == 'issue_comment' + id: pr + uses: actions/github-script@v7 + with: + script: | + const pr = await github.rest.pulls.get({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number + }); + core.setOutput('ref', pr.data.head.ref); + core.setOutput('sha', pr.data.head.sha); + + - name: Add reaction to comment + if: github.event_name == 'issue_comment' + uses: actions/github-script@v7 + with: + script: | + await github.rest.reactions.createForIssueComment({ + owner: context.repo.owner, + repo: context.repo.repo, + comment_id: context.payload.comment.id, + content: 'rocket' + }); + - uses: actions/checkout@v4 with: - ref: ${{ github.event.inputs.branch || github.ref }} + ref: ${{ github.event.inputs.branch || steps.pr.outputs.ref || github.ref }} token: ${{ secrets.GITHUB_TOKEN }} - uses: oven-sh/setup-bun@v2 @@ -45,9 +72,32 @@ jobs: run: npx playwright test --update-snapshots --reporter=list - name: Commit updated snapshots + id: commit run: | git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" git add tests/e2e/**/*.png - git diff --staged --quiet || git commit -m "chore: update e2e snapshots [skip ci]" - git push + if git diff --staged --quiet; then + echo "changed=false" >> $GITHUB_OUTPUT + echo "No snapshot changes to commit" + else + git commit -m "chore: update e2e snapshots [skip ci]" + git push + echo "changed=true" >> $GITHUB_OUTPUT + fi + + - name: Comment on PR + if: github.event_name == 'issue_comment' + uses: actions/github-script@v7 + with: + script: | + const changed = '${{ steps.commit.outputs.changed }}' === 'true'; + const body = changed + ? '✅ Snapshots updated and pushed to this branch.' + : '✅ No snapshot changes needed - all snapshots are up to date.'; + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.issue.number, + body + }); diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 81f776ab..37936222 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -79,6 +79,16 @@ npm run test:e2e:update -- --grep "Three.js" **Note**: Golden screenshots are platform-agnostic. Tests use canvas masking and tolerance thresholds to handle minor cross-platform rendering differences. +#### Updating Snapshots in CI + +If E2E tests fail in CI due to screenshot mismatches, you can update snapshots directly from your PR: + +1. Comment `/update-snapshots` on the PR +2. The workflow will update snapshots and push to your branch +3. A comment will confirm when complete + +Alternatively, use the [workflow dispatch](https://github.com/modelcontextprotocol/ext-apps/actions/workflows/update-snapshots.yml) to manually trigger updates for any branch. + ## Code of Conduct This project follows our [Code of Conduct](CODE_OF_CONDUCT.md). Please review it before contributing. diff --git a/examples/basic-host/package.json b/examples/basic-host/package.json index 9975de4b..d3ce4f97 100644 --- a/examples/basic-host/package.json +++ b/examples/basic-host/package.json @@ -1,7 +1,7 @@ { "homepage": "https://github.com/modelcontextprotocol/ext-apps/tree/main/examples/basic-host", "name": "@modelcontextprotocol/ext-apps-basic-host", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "scripts": { "build": "tsc --noEmit && concurrently \"cross-env INPUT=index.html vite build\" \"cross-env INPUT=sandbox.html vite build\"", @@ -11,7 +11,7 @@ "dev": "cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve\"" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "react": "^19.2.0", "react-dom": "^19.2.0", @@ -19,7 +19,7 @@ }, "devDependencies": { "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", diff --git a/examples/basic-server-preact/package.json b/examples/basic-server-preact/package.json index bbd31c76..d58b2f43 100644 --- a/examples/basic-server-preact/package.json +++ b/examples/basic-server-preact/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-basic-preact", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Basic MCP App Server example using Preact", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -33,7 +33,7 @@ "@preact/preset-vite": "^2.0.0", "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/basic-server-react/package.json b/examples/basic-server-react/package.json index 18ba6171..df612e09 100644 --- a/examples/basic-server-react/package.json +++ b/examples/basic-server-react/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-basic-react", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Basic MCP App Server example using React", "repository": { @@ -32,7 +32,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -43,7 +43,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", diff --git a/examples/basic-server-solid/package.json b/examples/basic-server-solid/package.json index aa71017a..313cc3f5 100644 --- a/examples/basic-server-solid/package.json +++ b/examples/basic-server-solid/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-basic-solid", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Basic MCP App Server example using Solid", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -32,7 +32,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/basic-server-svelte/package.json b/examples/basic-server-svelte/package.json index 4bfb9cb2..608311ea 100644 --- a/examples/basic-server-svelte/package.json +++ b/examples/basic-server-svelte/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-basic-svelte", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Basic MCP App Server example using Svelte", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -33,7 +33,7 @@ "@sveltejs/vite-plugin-svelte": "^5.0.0", "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/basic-server-vanillajs/package.json b/examples/basic-server-vanillajs/package.json index 35047e5a..3e0ad799 100644 --- a/examples/basic-server-vanillajs/package.json +++ b/examples/basic-server-vanillajs/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-basic-vanillajs", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Basic MCP App Server example using vanilla JavaScript", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -31,7 +31,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/basic-server-vue/package.json b/examples/basic-server-vue/package.json index 1dad2617..05e12cfa 100644 --- a/examples/basic-server-vue/package.json +++ b/examples/basic-server-vue/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-basic-vue", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Basic MCP App Server example using Vue", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -32,7 +32,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@vitejs/plugin-vue": "^5.0.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", diff --git a/examples/budget-allocator-server/package.json b/examples/budget-allocator-server/package.json index 7d269607..f362fea9 100644 --- a/examples/budget-allocator-server/package.json +++ b/examples/budget-allocator-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-budget-allocator", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Budget allocator MCP App Server with interactive visualization", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -36,7 +36,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/cohort-heatmap-server/package.json b/examples/cohort-heatmap-server/package.json index ce0a999b..070ccb8e 100644 --- a/examples/cohort-heatmap-server/package.json +++ b/examples/cohort-heatmap-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-cohort-heatmap", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Cohort heatmap MCP App Server for retention analysis", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -37,7 +37,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", diff --git a/examples/customer-segmentation-server/package.json b/examples/customer-segmentation-server/package.json index afa419e6..4a86c1ca 100644 --- a/examples/customer-segmentation-server/package.json +++ b/examples/customer-segmentation-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-customer-segmentation", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Customer segmentation MCP App Server with filtering", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -36,7 +36,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/debug-server/package.json b/examples/debug-server/package.json index 226f7e3e..d95f22f3 100644 --- a/examples/debug-server/package.json +++ b/examples/debug-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-debug", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Debug MCP App Server for testing all SDK capabilities", "repository": { @@ -23,14 +23,14 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "zod": "^4.1.13" }, "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cors": "^2.8.5", "cross-env": "^10.1.0", diff --git a/examples/integration-server/package.json b/examples/integration-server/package.json index 67538c94..0a7c1147 100644 --- a/examples/integration-server/package.json +++ b/examples/integration-server/package.json @@ -15,7 +15,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -26,7 +26,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", diff --git a/examples/map-server/package.json b/examples/map-server/package.json index da5f9f44..4cfab8fd 100644 --- a/examples/map-server/package.json +++ b/examples/map-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-map", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "MCP App Server example with CesiumJS 3D globe and geocoding", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -35,7 +35,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/pdf-server/package.json b/examples/pdf-server/package.json index 61d26697..d934737f 100644 --- a/examples/pdf-server/package.json +++ b/examples/pdf-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-pdf", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "MCP server for loading and extracting text from PDF files with chunked pagination and interactive viewer", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -32,7 +32,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/qr-server/package.json b/examples/qr-server/package.json index b83503b5..2da800bf 100644 --- a/examples/qr-server/package.json +++ b/examples/qr-server/package.json @@ -8,6 +8,6 @@ "build": "echo 'No build step needed for Python server'" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1" + "@modelcontextprotocol/ext-apps": "../.." } } diff --git a/examples/quickstart/package.json b/examples/quickstart/package.json index 86933d40..d616d6f8 100644 --- a/examples/quickstart/package.json +++ b/examples/quickstart/package.json @@ -15,7 +15,7 @@ "start": "concurrently 'cross-env NODE_ENV=development INPUT=mcp-app.html vite build --watch' 'tsx watch main.ts'" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0" @@ -24,7 +24,7 @@ "@types/cors": "^2.8.19", "concurrently": "^9.2.1", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.19.5", "cross-env": "^10.1.0", "tsx": "^4.21.0", "typescript": "^5.9.3", diff --git a/examples/say-server/package.json b/examples/say-server/package.json index dcf2128b..f7401cdf 100644 --- a/examples/say-server/package.json +++ b/examples/say-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-say", - "version": "0.4.1", + "version": "0.4.2", "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": "^0.4.1" + "@modelcontextprotocol/ext-apps": "../.." } } diff --git a/examples/scenario-modeler-server/package.json b/examples/scenario-modeler-server/package.json index c0bfc8ee..c2040ba3 100644 --- a/examples/scenario-modeler-server/package.json +++ b/examples/scenario-modeler-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-scenario-modeler", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Financial scenario modeling MCP App Server", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -38,7 +38,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", diff --git a/examples/shadertoy-server/package.json b/examples/shadertoy-server/package.json index bc5e6663..ea74b5f5 100644 --- a/examples/shadertoy-server/package.json +++ b/examples/shadertoy-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-shadertoy", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "MCP App Server example for rendering ShaderToy-compatible GLSL shaders", "repository": { @@ -24,7 +24,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -33,7 +33,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/sheet-music-server/package.json b/examples/sheet-music-server/package.json index 53e842e2..a2a2da28 100644 --- a/examples/sheet-music-server/package.json +++ b/examples/sheet-music-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-sheet-music", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "MCP App Server for rendering and playing sheet music from ABC notation", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "abcjs": "^6.4.4", "cors": "^2.8.5", @@ -32,7 +32,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/system-monitor-server/package.json b/examples/system-monitor-server/package.json index 84ac75ff..a6277ad5 100644 --- a/examples/system-monitor-server/package.json +++ b/examples/system-monitor-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-system-monitor", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "System monitor MCP App Server with real-time stats", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -37,7 +37,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/threejs-server/package.json b/examples/threejs-server/package.json index 36b6833e..f2b75578 100644 --- a/examples/threejs-server/package.json +++ b/examples/threejs-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-threejs", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Three.js 3D visualization MCP App Server", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -38,7 +38,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@types/three": "^0.181.0", diff --git a/examples/transcript-server/package.json b/examples/transcript-server/package.json index 4aeaab83..7d9b9573 100644 --- a/examples/transcript-server/package.json +++ b/examples/transcript-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-transcript", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "MCP App Server for live speech transcription", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -32,7 +32,7 @@ "@types/cors": "^2.8.19", "@types/dom-speech-recognition": "^0.0.7", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/video-resource-server/package.json b/examples/video-resource-server/package.json index 93617685..809855f9 100644 --- a/examples/video-resource-server/package.json +++ b/examples/video-resource-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-video-resource", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "MCP App Server demonstrating video resources served as base64 blobs", "repository": { @@ -22,7 +22,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -31,7 +31,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", diff --git a/examples/wiki-explorer-server/package.json b/examples/wiki-explorer-server/package.json index 20ad1605..6fdcee46 100644 --- a/examples/wiki-explorer-server/package.json +++ b/examples/wiki-explorer-server/package.json @@ -1,6 +1,6 @@ { "name": "@modelcontextprotocol/server-wiki-explorer", - "version": "0.4.1", + "version": "0.4.2", "type": "module", "description": "Wikipedia link explorer MCP App Server with graph visualization", "repository": { @@ -26,7 +26,7 @@ "serve": "bun --watch main.ts" }, "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cheerio": "^1.0.0", "cors": "^2.8.5", @@ -36,7 +36,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "force-graph": "^1.49.0", diff --git a/package-lock.json b/package-lock.json index c6372f9d..272f6790 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@modelcontextprotocol/ext-apps", - "version": "0.4.1", + "version": "0.4.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@modelcontextprotocol/ext-apps", - "version": "0.4.1", + "version": "0.4.2", "hasInstallScript": true, "license": "MIT", "workspaces": [ @@ -14,7 +14,7 @@ ], "devDependencies": { "@boneskull/typedoc-plugin-mermaid": "^0.2.0", - "@modelcontextprotocol/sdk": "^1.24.0", + "@modelcontextprotocol/sdk": "1.25.2", "@playwright/test": "1.57.0", "@types/bun": "^1.3.2", "@types/node": "20.19.27", @@ -79,9 +79,9 @@ }, "examples/basic-host": { "name": "@modelcontextprotocol/ext-apps-basic-host", - "version": "0.4.1", + "version": "0.4.2", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "react": "^19.2.0", "react-dom": "^19.2.0", @@ -89,7 +89,7 @@ }, "devDependencies": { "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", @@ -104,19 +104,24 @@ } }, "examples/basic-host/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/basic-host/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/basic-server-preact": { "name": "@modelcontextprotocol/server-basic-preact", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -130,7 +135,7 @@ "@preact/preset-vite": "^2.0.0", "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -139,19 +144,24 @@ } }, "examples/basic-server-preact/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/basic-server-preact/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/basic-server-react": { "name": "@modelcontextprotocol/server-basic-react", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -165,7 +175,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", @@ -177,19 +187,24 @@ } }, "examples/basic-server-react/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/basic-server-react/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/basic-server-solid": { "name": "@modelcontextprotocol/server-basic-solid", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -202,7 +217,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -212,19 +227,24 @@ } }, "examples/basic-server-solid/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/basic-server-solid/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/basic-server-svelte": { "name": "@modelcontextprotocol/server-basic-svelte", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -238,7 +258,7 @@ "@sveltejs/vite-plugin-svelte": "^5.0.0", "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -247,19 +267,24 @@ } }, "examples/basic-server-svelte/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/basic-server-svelte/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/basic-server-vanillajs": { "name": "@modelcontextprotocol/server-basic-vanillajs", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -271,7 +296,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -280,19 +305,24 @@ } }, "examples/basic-server-vanillajs/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/basic-server-vanillajs/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/basic-server-vue": { "name": "@modelcontextprotocol/server-basic-vue", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -305,7 +335,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@vitejs/plugin-vue": "^5.0.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", @@ -315,19 +345,24 @@ } }, "examples/basic-server-vue/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/basic-server-vue/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/budget-allocator-server": { "name": "@modelcontextprotocol/server-budget-allocator", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -340,7 +375,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -349,19 +384,24 @@ } }, "examples/budget-allocator-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/budget-allocator-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/cohort-heatmap-server": { "name": "@modelcontextprotocol/server-cohort-heatmap", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -375,7 +415,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", @@ -387,19 +427,24 @@ } }, "examples/cohort-heatmap-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/cohort-heatmap-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/customer-segmentation-server": { "name": "@modelcontextprotocol/server-customer-segmentation", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -412,7 +457,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -421,26 +466,31 @@ } }, "examples/customer-segmentation-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/customer-segmentation-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/debug-server": { "name": "@modelcontextprotocol/server-debug", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "zod": "^4.1.13" }, "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cors": "^2.8.5", "cross-env": "^10.1.0", @@ -451,19 +501,22 @@ } }, "examples/debug-server/node_modules/@types/node": { - "version": "22.19.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.7.tgz", - "integrity": "sha512-MciR4AKGHWl7xwxkBa6xUGxQJ4VBOmPTF7sL+iGzuahOFaO0jHCsuEfS80pan1ef4gWId1oWOweIhrDEYLuaOw==", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/debug-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/integration-server": { "version": "1.0.0", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -477,7 +530,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", @@ -488,19 +541,24 @@ } }, "examples/integration-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/integration-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/map-server": { "name": "@modelcontextprotocol/server-map", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -512,7 +570,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -521,19 +579,24 @@ } }, "examples/map-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/map-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/pdf-server": { "name": "@modelcontextprotocol/server-pdf", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -546,7 +609,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -555,18 +618,23 @@ } }, "examples/pdf-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/pdf-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/qr-server": { "name": "@modelcontextprotocol/server-qr", "version": "1.0.0", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1" + "@modelcontextprotocol/ext-apps": "../.." } }, "examples/quickstart": { @@ -574,7 +642,7 @@ "version": "0.4.1", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0" @@ -582,7 +650,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.19.5", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "tsx": "^4.21.0", @@ -592,36 +660,27 @@ } }, "examples/quickstart/node_modules/@types/node": { - "version": "22.19.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.7.tgz", - "integrity": "sha512-MciR4AKGHWl7xwxkBa6xUGxQJ4VBOmPTF7sL+iGzuahOFaO0jHCsuEfS80pan1ef4gWId1oWOweIhrDEYLuaOw==", + "version": "22.19.5", "dev": true, "license": "MIT", "dependencies": { "undici-types": "~6.21.0" } }, - "examples/quickstart/node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "dev": true, - "license": "MIT" - }, "examples/say-server": { "name": "@modelcontextprotocol/server-say", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1" + "@modelcontextprotocol/ext-apps": "../.." } }, "examples/scenario-modeler-server": { "name": "@modelcontextprotocol/server-scenario-modeler", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -636,7 +695,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@vitejs/plugin-react": "^4.3.4", @@ -648,19 +707,24 @@ } }, "examples/scenario-modeler-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/scenario-modeler-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/shadertoy-server": { "name": "@modelcontextprotocol/server-shadertoy", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -672,7 +736,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -681,19 +745,24 @@ } }, "examples/shadertoy-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/shadertoy-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/sheet-music-server": { "name": "@modelcontextprotocol/server-sheet-music", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "abcjs": "^6.4.4", "cors": "^2.8.5", @@ -706,7 +775,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -715,19 +784,24 @@ } }, "examples/sheet-music-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/sheet-music-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/system-monitor-server": { "name": "@modelcontextprotocol/server-system-monitor", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "chart.js": "^4.4.0", "cors": "^2.8.5", @@ -741,7 +815,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -750,19 +824,24 @@ } }, "examples/system-monitor-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/system-monitor-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/threejs-server": { "name": "@modelcontextprotocol/server-threejs", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -777,7 +856,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "@types/react": "^19.2.2", "@types/react-dom": "^19.2.2", "@types/three": "^0.181.0", @@ -790,19 +869,24 @@ } }, "examples/threejs-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/threejs-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/transcript-server": { "name": "@modelcontextprotocol/server-transcript", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -815,7 +899,7 @@ "@types/cors": "^2.8.19", "@types/dom-speech-recognition": "^0.0.7", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -824,13 +908,18 @@ } }, "examples/transcript-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/transcript-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/transcript-server/node_modules/zod": { "version": "3.25.76", "license": "MIT", @@ -840,10 +929,10 @@ }, "examples/video-resource-server": { "name": "@modelcontextprotocol/server-video-resource", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cors": "^2.8.5", "express": "^5.1.0", @@ -855,7 +944,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "typescript": "^5.9.3", @@ -864,19 +953,24 @@ } }, "examples/video-resource-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/video-resource-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "examples/wiki-explorer-server": { "name": "@modelcontextprotocol/server-wiki-explorer", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "dependencies": { - "@modelcontextprotocol/ext-apps": "^0.4.1", + "@modelcontextprotocol/ext-apps": "../..", "@modelcontextprotocol/sdk": "^1.24.0", "cheerio": "^1.0.0", "cors": "^2.8.5", @@ -889,7 +983,7 @@ "devDependencies": { "@types/cors": "^2.8.19", "@types/express": "^5.0.0", - "@types/node": "^22.0.0", + "@types/node": "22.10.0", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "force-graph": "^1.49.0", @@ -899,13 +993,18 @@ } }, "examples/wiki-explorer-server/node_modules/@types/node": { - "version": "22.19.3", + "version": "22.10.0", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~6.20.0" } }, + "examples/wiki-explorer-server/node_modules/undici-types": { + "version": "6.20.0", + "dev": true, + "license": "MIT" + }, "node_modules/@babel/code-frame": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.28.6.tgz", @@ -937,7 +1036,6 @@ "integrity": "sha512-H3mcG6ZDLTlYfaSNi0iOKkigqMFvkTKlGUYlD8GW7nNOYRrevuA46iTypPyv+06V3fEmvvazfntkBU34L0azAw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@babel/code-frame": "^7.28.6", "@babel/generator": "^7.28.6", @@ -1794,9 +1892,9 @@ } }, "node_modules/@hono/node-server": { - "version": "1.19.9", - "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.9.tgz", - "integrity": "sha512-vHL6w3ecZsky+8P5MD+eFfaGTyCeOHUIFYMGpQGbrBTSmNNoxv0if69rEZ5giu36weC5saFuznL411gRX7bJDw==", + "version": "1.19.7", + "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.7.tgz", + "integrity": "sha512-vUcD0uauS7EU2caukW8z5lJKtoGMokxNbJtBiwHgpqxEXokaHCBkQUmCHhjFB1VUTWdqj25QoMkMKzgjq+uhrw==", "license": "MIT", "engines": { "node": ">=18.14.1" @@ -2347,47 +2445,8 @@ "license": "MIT" }, "node_modules/@modelcontextprotocol/ext-apps": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@modelcontextprotocol/ext-apps/-/ext-apps-0.4.1.tgz", - "integrity": "sha512-LUw6NidwWInzWVF8OSPw/Mtdz5ES2qF+yBze2h+WRARdSbXf+agTkZLCGFtdkogI64W6mDlJnSTp/k5W+FZ84A==", - "hasInstallScript": true, - "license": "MIT", - "workspaces": [ - "examples/*" - ], - "optionalDependencies": { - "@oven/bun-darwin-aarch64": "^1.2.21", - "@oven/bun-darwin-x64": "^1.2.21", - "@oven/bun-darwin-x64-baseline": "^1.2.21", - "@oven/bun-linux-aarch64": "^1.2.21", - "@oven/bun-linux-aarch64-musl": "^1.2.21", - "@oven/bun-linux-x64": "^1.2.21", - "@oven/bun-linux-x64-baseline": "^1.2.21", - "@oven/bun-linux-x64-musl": "^1.2.21", - "@oven/bun-linux-x64-musl-baseline": "^1.2.21", - "@oven/bun-windows-x64": "^1.2.21", - "@oven/bun-windows-x64-baseline": "^1.2.21", - "@rollup/rollup-darwin-arm64": "^4.53.3", - "@rollup/rollup-darwin-x64": "^4.53.3", - "@rollup/rollup-linux-arm64-gnu": "^4.53.3", - "@rollup/rollup-linux-x64-gnu": "^4.53.3", - "@rollup/rollup-win32-arm64-msvc": "^4.53.3", - "@rollup/rollup-win32-x64-msvc": "^4.53.3" - }, - "peerDependencies": { - "@modelcontextprotocol/sdk": "^1.24.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0", - "zod": "^3.25.0 || ^4.0.0" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } - } + "resolved": "", + "link": true }, "node_modules/@modelcontextprotocol/ext-apps-basic-host": { "resolved": "examples/basic-host", @@ -2398,13 +2457,12 @@ "link": true }, "node_modules/@modelcontextprotocol/sdk": { - "version": "1.25.3", - "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.25.3.tgz", - "integrity": "sha512-vsAMBMERybvYgKbg/l4L1rhS7VXV1c0CtyJg72vwxONVX0l4ZfKVAnZEWTQixJGTzKnELjQ59e4NbdFDALRiAQ==", + "version": "1.25.2", + "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.25.2.tgz", + "integrity": "sha512-LZFeo4F9M5qOhC/Uc1aQSrBHxMrvxett+9KLHt7OhcExtoiRN9DKgbZffMP/nxjutWDQpfMDfP3nkHI4X9ijww==", "license": "MIT", - "peer": true, "dependencies": { - "@hono/node-server": "^1.19.9", + "@hono/node-server": "^1.19.7", "ajv": "^8.17.1", "ajv-formats": "^3.0.1", "content-type": "^1.0.5", @@ -3482,7 +3540,6 @@ "integrity": "sha512-Y1Cs7hhTc+a5E9Va/xwKlAJoariQyHY+5zBgCZg4PFWNYQ1nMN9sjK1zhw1gK69DuqVP++sht/1GZg1aRwmAXQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@sveltejs/vite-plugin-svelte-inspector": "^4.0.1", "debug": "^4.4.1", @@ -3689,7 +3746,6 @@ "integrity": "sha512-N2clP5pJhB2YnZJ3PIHFk5RkygRX5WO/5f0WC08tp0wd+sv0rsJk3MqWn3CbNmT2J505a5336jaQj4ph1AdMug==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "undici-types": "~6.21.0" } @@ -3714,7 +3770,6 @@ "integrity": "sha512-Lpo8kgb/igvMIPeNV2rsYKTgaORYdO1XGVZ4Qz3akwOj0ySGYMPlQWa8BaLn0G63D1aSaAQ5ldR06wCpChQCjA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "csstype": "^3.2.2" } @@ -4117,7 +4172,6 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -4336,9 +4390,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.9.17", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.17.tgz", - "integrity": "sha512-agD0MgJFUP/4nvjqzIB29zRPUuCF7Ge6mEv9s8dHrtYD7QWXRcx75rOADE/d5ah1NI+0vkDl0yorDd5U852IQQ==", + "version": "2.9.18", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.18.tgz", + "integrity": "sha512-e23vBV1ZLfjb9apvfPk4rHVu2ry6RIr2Wfs+O324okSidrX7pTAnEJPCh/O5BtRlr7QtZI7ktOP3vsqr7Z5XoA==", "dev": true, "license": "Apache-2.0", "bin": { @@ -4459,7 +4513,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "baseline-browser-mapping": "^2.9.0", "caniuse-lite": "^1.0.30001759", @@ -5175,7 +5228,6 @@ "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", "dev": true, "license": "ISC", - "peer": true, "engines": { "node": ">=12" } @@ -5648,7 +5700,6 @@ "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz", "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==", "license": "MIT", - "peer": true, "dependencies": { "accepts": "^2.0.0", "body-parser": "^2.2.1", @@ -7198,7 +7249,6 @@ "resolved": "https://registry.npmjs.org/preact/-/preact-10.28.2.tgz", "integrity": "sha512-lbteaWGzGHdlIuiJ0l2Jq454m6kcpI1zNje6d8MlGAFlYvP2GO4ibnat7P74Esfz4sPTdM6UxtTwh/d3pwM9JA==", "license": "MIT", - "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/preact" @@ -7408,7 +7458,6 @@ "integrity": "sha512-9FwVqlgUHzbXtDg9RCMgodF3Ua4Na6Gau+Sdt9vyCN4RhHfVKX2DCHy3BjMLTDd47ITDhYAnTwGulWTblJSDLg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/estree": "1.0.8" }, @@ -7530,7 +7579,6 @@ "resolved": "https://registry.npmjs.org/seroval/-/seroval-1.4.1.tgz", "integrity": "sha512-9GOc+8T6LN4aByLN75uRvMbrwY5RDBW6lSlknsY4LEa9ZmWcxKcRe1G/Q3HZXjltxMHTrStnvrwAICxZrhldtg==", "license": "MIT", - "peer": true, "engines": { "node": ">=10" } @@ -7821,11 +7869,10 @@ "resolved": "https://registry.npmjs.org/solid-js/-/solid-js-1.9.10.tgz", "integrity": "sha512-Coz956cos/EPDlhs6+jsdTxKuJDPT7B5SVIWgABwROyxjY7Xbr8wkzD68Et+NxnV7DLJ3nJdAC2r9InuV/4Jew==", "license": "MIT", - "peer": true, "dependencies": { "csstype": "^3.1.0", - "seroval": "~1.5.0", - "seroval-plugins": "~1.5.0" + "seroval": "~1.3.0", + "seroval-plugins": "~1.3.0" } }, "node_modules/solid-refresh": { @@ -7996,11 +8043,10 @@ } }, "node_modules/svelte": { - "version": "5.48.0", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.48.0.tgz", - "integrity": "sha512-+NUe82VoFP1RQViZI/esojx70eazGF4u0O/9ucqZ4rPcOZD+n5EVp17uYsqwdzjUjZyTpGKunHbDziW6AIAVkQ==", + "version": "5.48.2", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.48.2.tgz", + "integrity": "sha512-VPWD+UyoSFZ7Nxix5K/F8yWiKWOiROkLlWYXOZReE0TUycw+58YWB3D6lAKT+57xmN99wRX4H3oZmw0NPy7y3Q==", "license": "MIT", - "peer": true, "dependencies": { "@jridgewell/remapping": "^2.3.4", "@jridgewell/sourcemap-codec": "^1.5.0", @@ -8023,9 +8069,9 @@ } }, "node_modules/systeminformation": { - "version": "5.30.5", - "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.30.5.tgz", - "integrity": "sha512-DpWmpCckhwR3hG+6udb6/aQB7PpiqVnvSljrjbKxNSvTRsGsg7NVE3/vouoYf96xgwMxXFKcS4Ux+cnkFwYM7A==", + "version": "5.30.6", + "resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.30.6.tgz", + "integrity": "sha512-LEIyK1aEv5P3BhAPW3swdlIyCihxwEq/Gki+kcONieU4PIeRCSLDuGkk0Va/56PSBgjVgEksOM88dmY6YqOyfQ==", "license": "MIT", "os": [ "darwin", @@ -8328,7 +8374,6 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -9028,7 +9073,6 @@ "integrity": "sha512-x4xW77QC3i5DUFMBp0qjukOTnr/sSg+oEs86nB3LjDslvAmwe/PUGDWbe3GrIqt59oTqoXK5GRK9tAa0sYMiog==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { "@gerrit0/mini-shiki": "^3.17.0", "lunr": "^2.3.9", @@ -9092,7 +9136,6 @@ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "devOptional": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -9116,9 +9159,9 @@ "license": "MIT" }, "node_modules/undici": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-7.19.0.tgz", - "integrity": "sha512-Heho1hJD81YChi+uS2RkSjcVO+EQLmLSyUlHyp7Y/wFbxQaGb4WXVKD073JytrjXJVkSZVzoE2MCSOKugFGtOQ==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/undici/-/undici-7.19.1.tgz", + "integrity": "sha512-Gpq0iNm5M6cQWlyHQv9MV+uOj1jWk7LpkoE5vSp/7zjb4zMdAcUD+VL5y0nH4p9EbUklq00eVIIX/XcDHzu5xg==", "license": "MIT", "engines": { "node": ">=20.18.1" @@ -9186,7 +9229,6 @@ "integrity": "sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", @@ -9363,7 +9405,6 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -9482,7 +9523,6 @@ "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.27.tgz", "integrity": "sha512-aJ/UtoEyFySPBGarREmN4z6qNKpbEguYHMmXSiOGk69czc+zhs0NF6tEFrY8TZKAl8N/LYAkd4JHVd5E/AsSmw==", "license": "MIT", - "peer": true, "dependencies": { "@vue/compiler-dom": "3.5.27", "@vue/compiler-sfc": "3.5.27", @@ -9643,7 +9683,6 @@ "integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==", "dev": true, "license": "ISC", - "peer": true, "bin": { "yaml": "bin.mjs" }, @@ -9694,7 +9733,6 @@ "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.6.tgz", "integrity": "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==", "license": "MIT", - "peer": true, "funding": { "url": "https://github.com/sponsors/colinhacks" } diff --git a/package.json b/package.json index 6b9ca617..14945827 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "url": "https://github.com/modelcontextprotocol/ext-apps" }, "homepage": "https://github.com/modelcontextprotocol/ext-apps", - "version": "0.4.1", + "version": "0.4.2", "license": "MIT", "description": "MCP Apps SDK — Enable MCP servers to display interactive user interfaces in conversational clients.", "type": "module", @@ -74,7 +74,7 @@ "author": "Olivier Chafik", "devDependencies": { "@boneskull/typedoc-plugin-mermaid": "^0.2.0", - "@modelcontextprotocol/sdk": "^1.24.0", + "@modelcontextprotocol/sdk": "1.25.2", "@playwright/test": "1.57.0", "@types/bun": "^1.3.2", "@types/react": "^19.2.2", @@ -139,6 +139,8 @@ "overrides": { "seroval": "1.4.1", "seroval-plugins": "1.4.2", - "solid-js": "1.9.10" + "solid-js": "1.9.10", + "@hono/node-server": "1.19.7", + "@types/node": "20.19.27" } }