Node 22.16 runs TypeScript only behind --experimental-strip-types (on by default from 22.18), so `npm test` failed on every file with ERR_UNKNOWN_FILE_EXTENSION. The flag is harmless on newer versions. probe and session-diagnose still imported dist/schulcloud/client.js, which the move to core/ renamed, so both scripts died at import. A relative MIRROR_DIR broke file serving: res.sendFile refuses a relative path, and resolveWithin returns an absolute path only when its root is one. The config resolves it once, at load. package-lock.json is what `npm install` records today: the `schulcloud` bin, and no stale peer flags. 101 tests. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
45 lines
1.4 KiB
JSON
45 lines
1.4 KiB
JSON
{
|
|
"name": "schulcloud-mcp",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"description": "MCP server exposing the Schulcloud (HPI Schul-Cloud / SVS) API to Claude: courses, boards, lessons, tasks and file downloads.",
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=22"
|
|
},
|
|
"bin": {
|
|
"schulcloud-mcp": "dist/bin/stdio.js",
|
|
"schulcloud": "dist/bin/cli.js"
|
|
},
|
|
"scripts": {
|
|
"build": "tsc -p tsconfig.json && node scripts/copy-assets.mjs",
|
|
"dev": "node --watch --experimental-strip-types src/bin/http.ts",
|
|
"start": "node dist/bin/http.js",
|
|
"stdio": "node dist/bin/stdio.js",
|
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
"test": "node --test --experimental-strip-types test/*.test.ts",
|
|
"probe": "node --env-file=.env scripts/probe.mjs",
|
|
"smoke": "node --env-file=.env scripts/smoke.mjs",
|
|
"session-diagnose": "node --env-file=.env scripts/session-diagnose.mjs",
|
|
"keepalive-status": "bash scripts/keepalive-status.sh",
|
|
"cli": "node dist/bin/cli.js"
|
|
},
|
|
"dependencies": {
|
|
"@modelcontextprotocol/sdk": "^1.20.0",
|
|
"exceljs": "^4.4.0",
|
|
"express": "^5.1.0",
|
|
"mammoth": "^1.11.0",
|
|
"pg": "^8.23.0",
|
|
"unpdf": "^1.3.2",
|
|
"unzipper": "^0.12.3",
|
|
"zod": "^3.25.76"
|
|
},
|
|
"devDependencies": {
|
|
"@types/express": "^5.0.3",
|
|
"@types/node": "^22.15.0",
|
|
"@types/pg": "^8.23.1",
|
|
"@types/unzipper": "^0.10.11",
|
|
"typescript": "^5.9.2"
|
|
}
|
|
}
|