brightspace-mcp-server 4.1.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
  [![npm downloads](https://img.shields.io/npm/dm/brightspace-mcp-server.svg)](https://www.npmjs.com/package/brightspace-mcp-server)
5
5
  [![CI](https://img.shields.io/github/actions/workflow/status/RohanMuppa/brightspace-mcp-server/ci.yml?branch=main)](https://github.com/RohanMuppa/brightspace-mcp-server/actions/workflows/ci.yml)
6
6
  [![License: MIT](https://img.shields.io/github/license/RohanMuppa/brightspace-mcp-server.svg)](LICENSE)
7
- [![Node >= 20](https://img.shields.io/node/v/brightspace-mcp-server.svg)](package.json)
7
+ [![Node >= 22](https://img.shields.io/node/v/brightspace-mcp-server.svg)](package.json)
8
8
 
9
9
  > **By [Rohan Muppa](https://github.com/rohanmuppa), ECE @ Purdue**
10
10
 
@@ -20,7 +20,7 @@ Works with Claude Desktop, Claude Code, Cursor, ChatGPT Desktop, Windsurf, and a
20
20
 
21
21
  ## Get started in 3 steps
22
22
 
23
- 1. **Install [Node.js](https://nodejs.org/)** (version 20 or newer) if you don't have it. Download, run the installer, done.
23
+ 1. **Install [Node.js](https://nodejs.org/)** (version 22 or newer) if you don't have it. Download, run the installer, done.
24
24
  2. **Open a terminal and run the setup:**
25
25
  ```bash
26
26
  npx -y brightspace-mcp-server@latest setup
package/build/doctor.js CHANGED
@@ -79,9 +79,9 @@ function problem(id, message) {
79
79
  // ── Individual checks ────────────────────────────────────────────────
80
80
  function checkNode(deps) {
81
81
  if (nodeVersionSupported(deps.nodeVersion)) {
82
- return pass("node", `Node.js ${deps.nodeVersion} (20 or newer)`);
82
+ return pass("node", `Node.js ${deps.nodeVersion} (22 or newer)`);
83
83
  }
84
- return problem("node", `Node.js ${deps.nodeVersion} is too old — install Node 20 or newer from https://nodejs.org/, then try again.`);
84
+ return problem("node", `Node.js ${deps.nodeVersion} is too old — install Node 22 or newer from https://nodejs.org/, then try again.`);
85
85
  }
86
86
  /**
87
87
  * Checks the resolved configuration — config.json AND the same env overrides
@@ -98,8 +98,8 @@ export async function runPrepare(args, overrides = {}) {
98
98
  const steps = [];
99
99
  // ── Node ──
100
100
  steps.push(nodeVersionSupported(deps.nodeVersion)
101
- ? ok("node", `Node.js ${deps.nodeVersion} (20 or newer)`)
102
- : fail("node", `Node.js ${deps.nodeVersion} is too old — install Node 20 or newer from https://nodejs.org/`));
101
+ ? ok("node", `Node.js ${deps.nodeVersion} (22 or newer)`)
102
+ : fail("node", `Node.js ${deps.nodeVersion} is too old — install Node 22 or newer from https://nodejs.org/`));
103
103
  // ── School ──
104
104
  const existing = deps.readExistingConfig();
105
105
  let baseUrl;
@@ -52,8 +52,8 @@ export function sessionDirFor(env, store, baseUrl, username) {
52
52
  : path.join(os.homedir(), ".d2l-session");
53
53
  return accountSessionDirectory(sessionRoot, baseUrl, username);
54
54
  }
55
- /** True for the Node versions this package supports (20 and newer). */
55
+ /** True for the Node versions this package supports (22 and newer). */
56
56
  export function nodeVersionSupported(version) {
57
57
  const major = Number(version.replace(/^v/, "").split(".")[0]);
58
- return Number.isFinite(major) && major >= 20;
58
+ return Number.isFinite(major) && major >= 22;
59
59
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brightspace-mcp-server",
3
- "version": "4.1.0",
3
+ "version": "5.0.0",
4
4
  "mcpName": "io.github.RohanMuppa/brightspace",
5
5
  "description": "MCP server for Brightspace (D2L). Check grades, due dates, assignments, announcements, syllabus, rosters and more via Claude, ChatGPT, Cursor, Windsurf, or any MCP client.",
6
6
  "type": "module",
@@ -30,7 +30,7 @@
30
30
  "@modelcontextprotocol/sdk": "^1.26.0",
31
31
  "@napi-rs/keyring": "^2.0.0",
32
32
  "dotenv": "^17.2.4",
33
- "file-type": "^21.3.0",
33
+ "file-type": "^22.1.1",
34
34
  "playwright": "^1.58.2",
35
35
  "sanitize-filename": "^1.6.3",
36
36
  "trash": "^9.0.0",
@@ -45,7 +45,7 @@
45
45
  "vitest": "^5.0.3"
46
46
  },
47
47
  "engines": {
48
- "node": ">=20.0.0"
48
+ "node": ">=22.0.0"
49
49
  },
50
50
  "license": "MIT",
51
51
  "author": "Rohan Muppa",