infinitecampus-mcp 2.3.1 → 2.3.2
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/dist/auth.js +6 -18
- package/dist/bundle.js +795 -279
- package/dist/client.js +15 -30
- package/dist/config.js +5 -11
- package/dist/index.js +45 -36
- package/dist/tools/_shared.js +8 -2
- package/dist/tools/messages.js +7 -17
- package/package.json +5 -3
- package/server.json +2 -2
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
},
|
|
8
8
|
"metadata": {
|
|
9
9
|
"description": "MCP server for Infinite Campus (Campus Parent) — grades, attendance, assignments, messages, documents",
|
|
10
|
-
"version": "2.3.
|
|
10
|
+
"version": "2.3.2"
|
|
11
11
|
},
|
|
12
12
|
"plugins": [
|
|
13
13
|
{
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"displayName": "Infinite Campus",
|
|
16
16
|
"source": "./",
|
|
17
17
|
"description": "Infinite Campus (Campus Parent) MCP server for Claude — grades, attendance, assignments, messages, and documents via natural language",
|
|
18
|
-
"version": "2.3.
|
|
18
|
+
"version": "2.3.2",
|
|
19
19
|
"author": {
|
|
20
20
|
"name": "Chris Hall"
|
|
21
21
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "infinitecampus-mcp",
|
|
3
3
|
"displayName": "Infinite Campus",
|
|
4
|
-
"version": "2.3.
|
|
4
|
+
"version": "2.3.2",
|
|
5
5
|
"description": "Infinite Campus (Campus Parent) MCP server for Claude — grades, attendance, assignments, messages, and documents",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Chris Hall",
|
package/dist/auth.js
CHANGED
|
@@ -47,27 +47,15 @@
|
|
|
47
47
|
// - `loadAccount()` (the existing env-var resolver) is reused as-is so the
|
|
48
48
|
// legacy paths keep working unchanged.
|
|
49
49
|
import { bootstrap } from '@fetchproxy/bootstrap';
|
|
50
|
-
import { classifyBridgeError } from '@fetchproxy
|
|
50
|
+
import { classifyBridgeError } from '@chrischall/mcp-utils/fetchproxy';
|
|
51
|
+
import { parseBoolEnv } from '@chrischall/mcp-utils';
|
|
51
52
|
import { loadAccount } from './config.js';
|
|
52
53
|
import pkg from '../package.json' with { type: 'json' };
|
|
53
|
-
function readEnv(key) {
|
|
54
|
-
const raw = process.env[key];
|
|
55
|
-
if (typeof raw !== 'string')
|
|
56
|
-
return undefined;
|
|
57
|
-
const trimmed = raw.trim();
|
|
58
|
-
if (trimmed.length === 0)
|
|
59
|
-
return undefined;
|
|
60
|
-
if (trimmed === 'undefined' || trimmed === 'null')
|
|
61
|
-
return undefined;
|
|
62
|
-
if (/^\$\{[^}]*\}$/.test(trimmed))
|
|
63
|
-
return undefined;
|
|
64
|
-
return trimmed;
|
|
65
|
-
}
|
|
66
54
|
function fetchproxyDisabled() {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
return
|
|
55
|
+
// mcp-utils' parseBoolEnv applies the same defensive env reading (trim,
|
|
56
|
+
// placeholder/sentinel suppression) and the `1|true|yes|on` truth tokens
|
|
57
|
+
// this flag has always recognised. Unset → false (fetchproxy enabled).
|
|
58
|
+
return parseBoolEnv('IC_DISABLE_FETCHPROXY', { default: false });
|
|
71
59
|
}
|
|
72
60
|
/**
|
|
73
61
|
* Resolve IC auth using the path priority described at the top of this file.
|