Add sheet-music-server example

Demo MCP App showcasing ABC notation rendering and audio playback with:
- Server-side ABC notation validation
- Built-in audio player with play/pause and loop controls
- Sheet music visualization using abcjs library

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Jonathan Hefner 2026-01-01 10:47:06 -06:00
commit 012fb3260c

108
package-lock.json generated
View file

@ -306,7 +306,7 @@
"version": "1.0.0",
"dependencies": {
"@modelcontextprotocol/ext-apps": "../..",
"@modelcontextprotocol/sdk": "^1.22.0",
"@modelcontextprotocol/sdk": "^1.24.0",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"zod": "^4.1.13"
@ -318,7 +318,6 @@
"@types/react": "^19.2.2",
"@types/react-dom": "^19.2.2",
"@vitejs/plugin-react": "^4.3.4",
"bun": "^1.3.2",
"concurrently": "^9.2.1",
"cors": "^2.8.5",
"express": "^5.1.0",
@ -386,6 +385,63 @@
"dev": true,
"license": "MIT"
},
"examples/sheet-music-server": {
"version": "1.0.0",
"dependencies": {
"@modelcontextprotocol/ext-apps": "../..",
"@modelcontextprotocol/sdk": "^1.24.0",
"abcjs": "^6.4.4",
"zod": "^4.1.13"
},
"devDependencies": {
"@types/cors": "^2.8.19",
"@types/express": "^5.0.0",
"@types/node": "^22.0.0",
"concurrently": "^9.2.1",
"cors": "^2.8.5",
"cross-env": "^7.0.3",
"express": "^5.1.0",
"typescript": "^5.9.3",
"vite": "^6.0.0",
"vite-plugin-singlefile": "^2.3.0"
}
},
"examples/sheet-music-server/node_modules/@types/node": {
"version": "22.19.3",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.3.tgz",
"integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==",
"dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~6.21.0"
}
},
"examples/sheet-music-server/node_modules/cross-env": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
"integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==",
"dev": true,
"license": "MIT",
"dependencies": {
"cross-spawn": "^7.0.1"
},
"bin": {
"cross-env": "src/bin/cross-env.js",
"cross-env-shell": "src/bin/cross-env-shell.js"
},
"engines": {
"node": ">=10.14",
"npm": ">=6",
"yarn": ">=1"
}
},
"examples/sheet-music-server/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/system-monitor-server": {
"version": "1.0.0",
"dependencies": {
@ -2394,6 +2450,16 @@
"dev": true,
"license": "BSD-3-Clause"
},
"node_modules/abcjs": {
"version": "6.5.2",
"resolved": "https://registry.npmjs.org/abcjs/-/abcjs-6.5.2.tgz",
"integrity": "sha512-XLDZPy/4TZbOqPsLwuu0Umsl79NTAcObEkboPxdYZXI8/fU6PNh59SAnkZOnEPVbyT8EXfBUjgNoe/uKd3T0xQ==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/paulrosen"
}
},
"node_modules/accepts": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
@ -2685,40 +2751,6 @@
"resolved": "examples/budget-allocator-server",
"link": true
},
"node_modules/bun": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/bun/-/bun-1.3.5.tgz",
"integrity": "sha512-c1YHIGUfgvYPJmLug5QiLzNWlX2Dg7X/67JWu1Va+AmMXNXzC/KQn2lgQ7rD+n1u1UqDpJMowVGGxTNpbPydNw==",
"cpu": [
"arm64",
"x64"
],
"dev": true,
"hasInstallScript": true,
"license": "MIT",
"os": [
"darwin",
"linux",
"win32"
],
"bin": {
"bun": "bin/bun.exe",
"bunx": "bin/bunx.exe"
},
"optionalDependencies": {
"@oven/bun-darwin-aarch64": "1.3.5",
"@oven/bun-darwin-x64": "1.3.5",
"@oven/bun-darwin-x64-baseline": "1.3.5",
"@oven/bun-linux-aarch64": "1.3.5",
"@oven/bun-linux-aarch64-musl": "1.3.5",
"@oven/bun-linux-x64": "1.3.5",
"@oven/bun-linux-x64-baseline": "1.3.5",
"@oven/bun-linux-x64-musl": "1.3.5",
"@oven/bun-linux-x64-musl-baseline": "1.3.5",
"@oven/bun-windows-x64": "1.3.5",
"@oven/bun-windows-x64-baseline": "1.3.5"
}
},
"node_modules/bun-types": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.3.3.tgz",
@ -5656,6 +5688,10 @@
"node": ">=8"
}
},
"node_modules/sheet-music-server": {
"resolved": "examples/sheet-music-server",
"link": true
},
"node_modules/shell-quote": {
"version": "1.8.3",
"resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz",