boondmanager-mcp-server 2.0.1 → 2.1.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/dist/index.js +25 -0
- package/dist/index.js.map +1 -1
- package/dist/services/update-checker.d.ts +18 -0
- package/dist/services/update-checker.d.ts.map +1 -0
- package/dist/services/update-checker.js +73 -0
- package/dist/services/update-checker.js.map +1 -0
- package/manifest.json +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { readFileSync } from "node:fs";
|
|
3
|
+
import { dirname, join } from "node:path";
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
2
5
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
3
6
|
import { initClient, initClientWithAuth, oauthContextAuth } from "./services/boond-client.js";
|
|
4
7
|
import { createMcpServer, REGISTERED_DOMAINS } from "./server.js";
|
|
8
|
+
import { runUpdateNotification } from "./services/update-checker.js";
|
|
5
9
|
import { resolveHttpOptions, startHttpTransport } from "./transports/http.js";
|
|
6
10
|
function resolveTransport() {
|
|
7
11
|
const raw = (process.env["MCP_TRANSPORT"] ?? "").toLowerCase().trim();
|
|
@@ -9,6 +13,25 @@ function resolveTransport() {
|
|
|
9
13
|
return "http";
|
|
10
14
|
return "stdio";
|
|
11
15
|
}
|
|
16
|
+
function readLocalPackageMeta() {
|
|
17
|
+
try {
|
|
18
|
+
const here = dirname(fileURLToPath(import.meta.url));
|
|
19
|
+
const raw = readFileSync(join(here, "..", "package.json"), "utf8");
|
|
20
|
+
const pkg = JSON.parse(raw);
|
|
21
|
+
if (typeof pkg.name !== "string" || typeof pkg.version !== "string")
|
|
22
|
+
return null;
|
|
23
|
+
return { name: pkg.name, version: pkg.version };
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function scheduleUpdateCheck() {
|
|
30
|
+
const meta = readLocalPackageMeta();
|
|
31
|
+
if (!meta)
|
|
32
|
+
return;
|
|
33
|
+
void runUpdateNotification({ currentVersion: meta.version, packageName: meta.name });
|
|
34
|
+
}
|
|
12
35
|
async function main() {
|
|
13
36
|
const kind = resolveTransport();
|
|
14
37
|
if (kind === "http") {
|
|
@@ -32,6 +55,7 @@ async function main() {
|
|
|
32
55
|
};
|
|
33
56
|
process.on("SIGINT", () => void shutdown("SIGINT"));
|
|
34
57
|
process.on("SIGTERM", () => void shutdown("SIGTERM"));
|
|
58
|
+
scheduleUpdateCheck();
|
|
35
59
|
return;
|
|
36
60
|
}
|
|
37
61
|
// stdio path: existing JWT / BasicAuth env vars (unchanged).
|
|
@@ -47,6 +71,7 @@ async function main() {
|
|
|
47
71
|
await server.connect(transport);
|
|
48
72
|
console.error("🚀 BoondManager MCP Server running (stdio transport)");
|
|
49
73
|
console.error(`📦 Domains: ${REGISTERED_DOMAINS.join(", ")}`);
|
|
74
|
+
scheduleUpdateCheck();
|
|
50
75
|
}
|
|
51
76
|
main().catch((error) => {
|
|
52
77
|
console.error("Fatal error:", error instanceof Error ? error.message : error);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAI9E,SAAS,gBAAgB;IACvB,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IACtE,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,iBAAiB,IAAI,GAAG,KAAK,gBAAgB;QAAE,OAAO,MAAM,CAAC;IAC3F,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAC;IAEhC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,wEAAwE;QACxE,yEAAyE;QACzE,oEAAoE;QACpE,wEAAwE;QACxE,iEAAiE;QACjE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;QAChF,OAAO,CAAC,KAAK,CAAC,uBAAuB,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACzG,OAAO,CAAC,KAAK,CAAC,YAAY,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,eAAe,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE9D,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAc,EAAiB,EAAE;YACvD,OAAO,CAAC,KAAK,CAAC,iBAAiB,MAAM,oBAAoB,CAAC,CAAC;YAC3D,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QACtD,OAAO;IACT,CAAC;IAED,6DAA6D;IAC7D,IAAI,CAAC;QACH,UAAU,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAG,KAAe,CAAC,OAAO,CAAC,CAAC;QACtE,OAAO,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACtE,OAAO,CAAC,KAAK,CAAC,eAAe,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface UpdateInfo {
|
|
2
|
+
current: string;
|
|
3
|
+
latest: string;
|
|
4
|
+
updateAvailable: boolean;
|
|
5
|
+
releaseUrl: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function checkForUpdate(opts: {
|
|
8
|
+
currentVersion: string;
|
|
9
|
+
packageName: string;
|
|
10
|
+
timeoutMs?: number;
|
|
11
|
+
}): Promise<UpdateInfo | null>;
|
|
12
|
+
export declare function isUpdateCheckDisabled(): boolean;
|
|
13
|
+
export declare function runUpdateNotification(opts: {
|
|
14
|
+
currentVersion: string;
|
|
15
|
+
packageName: string;
|
|
16
|
+
timeoutMs?: number;
|
|
17
|
+
}): Promise<void>;
|
|
18
|
+
//# sourceMappingURL=update-checker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-checker.d.ts","sourceRoot":"","sources":["../../src/services/update-checker.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAsBD,wBAAsB,cAAc,CAAC,IAAI,EAAE;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAyB7B;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAG/C;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CAahB"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { logger } from "./logger.js";
|
|
2
|
+
const NPM_REGISTRY_URL = "https://registry.npmjs.org";
|
|
3
|
+
const DEFAULT_TIMEOUT_MS = 3000;
|
|
4
|
+
function parseSemverCore(v) {
|
|
5
|
+
const core = v.split(/[-+]/)[0] ?? "";
|
|
6
|
+
const parts = core.split(".");
|
|
7
|
+
if (parts.length !== 3)
|
|
8
|
+
return null;
|
|
9
|
+
const nums = parts.map((p) => Number(p));
|
|
10
|
+
if (nums.some((n) => !Number.isInteger(n) || n < 0))
|
|
11
|
+
return null;
|
|
12
|
+
return [nums[0], nums[1], nums[2]];
|
|
13
|
+
}
|
|
14
|
+
function isNewer(latest, current) {
|
|
15
|
+
const a = parseSemverCore(latest);
|
|
16
|
+
const b = parseSemverCore(current);
|
|
17
|
+
if (!a || !b)
|
|
18
|
+
return false;
|
|
19
|
+
for (let i = 0; i < 3; i++) {
|
|
20
|
+
if (a[i] > b[i])
|
|
21
|
+
return true;
|
|
22
|
+
if (a[i] < b[i])
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
export async function checkForUpdate(opts) {
|
|
28
|
+
const { currentVersion, packageName, timeoutMs = DEFAULT_TIMEOUT_MS } = opts;
|
|
29
|
+
const url = `${NPM_REGISTRY_URL}/${packageName}/latest`;
|
|
30
|
+
const controller = new AbortController();
|
|
31
|
+
const timer = setTimeout(() => controller.abort(), timeoutMs);
|
|
32
|
+
try {
|
|
33
|
+
const res = await fetch(url, {
|
|
34
|
+
signal: controller.signal,
|
|
35
|
+
headers: { Accept: "application/json" },
|
|
36
|
+
});
|
|
37
|
+
if (!res.ok)
|
|
38
|
+
return null;
|
|
39
|
+
const body = (await res.json());
|
|
40
|
+
if (typeof body.version !== "string")
|
|
41
|
+
return null;
|
|
42
|
+
return {
|
|
43
|
+
current: currentVersion,
|
|
44
|
+
latest: body.version,
|
|
45
|
+
updateAvailable: isNewer(body.version, currentVersion),
|
|
46
|
+
releaseUrl: `https://www.npmjs.com/package/${packageName}/v/${body.version}`,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
finally {
|
|
53
|
+
clearTimeout(timer);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
export function isUpdateCheckDisabled() {
|
|
57
|
+
const raw = (process.env["BOOND_DISABLE_UPDATE_CHECK"] ?? "").toLowerCase().trim();
|
|
58
|
+
return raw === "1" || raw === "true" || raw === "yes";
|
|
59
|
+
}
|
|
60
|
+
export async function runUpdateNotification(opts) {
|
|
61
|
+
if (isUpdateCheckDisabled())
|
|
62
|
+
return;
|
|
63
|
+
const info = await checkForUpdate(opts);
|
|
64
|
+
if (!info?.updateAvailable)
|
|
65
|
+
return;
|
|
66
|
+
logger.warn({
|
|
67
|
+
event: "update_available",
|
|
68
|
+
current: info.current,
|
|
69
|
+
latest: info.latest,
|
|
70
|
+
url: info.releaseUrl,
|
|
71
|
+
}, `BoondManager MCP Server ${info.latest} is available (current: ${info.current}). Download: ${info.releaseUrl}`);
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=update-checker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-checker.js","sourceRoot":"","sources":["../../src/services/update-checker.ts"],"names":[],"mappings":"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"}
|
package/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"manifest_version": "0.3",
|
|
3
3
|
"name": "boondmanager-mcp-server",
|
|
4
4
|
"display_name": "BoondManager MCP Server",
|
|
5
|
-
"version": "2.0
|
|
5
|
+
"version": "2.1.0",
|
|
6
6
|
"description": "MCP Server for BoondManager API - 167 tools, 11 prompts, 21 resources (ERP/CRM)",
|
|
7
7
|
"author": {
|
|
8
8
|
"name": "Frédéric Auguste",
|
package/package.json
CHANGED