@de-otio/epimethian-mcp 5.3.3 → 5.4.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/cli/index.js +83 -85
- package/dist/cli/index.js.map +3 -3
- package/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -18331,14 +18331,14 @@ var require_HTMLParser = __commonJS({
|
|
|
18331
18331
|
}
|
|
18332
18332
|
var insertToken = htmlparser.insertToken = function insertToken2(t, value, arg3, arg4) {
|
|
18333
18333
|
flushText();
|
|
18334
|
-
var
|
|
18335
|
-
if (!
|
|
18334
|
+
var current = stack.top;
|
|
18335
|
+
if (!current || current.namespaceURI === NAMESPACE.HTML) {
|
|
18336
18336
|
parser(t, value, arg3, arg4);
|
|
18337
18337
|
} else {
|
|
18338
18338
|
if (t !== TAG && t !== TEXT) {
|
|
18339
18339
|
insertForeignToken(t, value, arg3, arg4);
|
|
18340
18340
|
} else {
|
|
18341
|
-
if (isMathmlTextIntegrationPoint(
|
|
18341
|
+
if (isMathmlTextIntegrationPoint(current) && (t === TEXT || t === TAG && value !== "mglyph" && value !== "malignmark") || t === TAG && value === "svg" && current.namespaceURI === NAMESPACE.MATHML && current.localName === "annotation-xml" || isHTMLIntegrationPoint(current)) {
|
|
18342
18342
|
text_integration_mode = true;
|
|
18343
18343
|
parser(t, value, arg3, arg4);
|
|
18344
18344
|
text_integration_mode = false;
|
|
@@ -22938,7 +22938,7 @@ var require_HTMLParser = __commonJS({
|
|
|
22938
22938
|
}
|
|
22939
22939
|
return false;
|
|
22940
22940
|
}
|
|
22941
|
-
var
|
|
22941
|
+
var current;
|
|
22942
22942
|
switch (t) {
|
|
22943
22943
|
case 1:
|
|
22944
22944
|
if (frameset_ok && NONWSNONNUL.test(value))
|
|
@@ -23007,29 +23007,29 @@ var require_HTMLParser = __commonJS({
|
|
|
23007
23007
|
}
|
|
23008
23008
|
do {
|
|
23009
23009
|
stack.pop();
|
|
23010
|
-
|
|
23011
|
-
} while (
|
|
23010
|
+
current = stack.top;
|
|
23011
|
+
} while (current.namespaceURI !== NAMESPACE.HTML && !isMathmlTextIntegrationPoint(current) && !isHTMLIntegrationPoint(current));
|
|
23012
23012
|
insertToken(t, value, arg3, arg4);
|
|
23013
23013
|
return;
|
|
23014
23014
|
}
|
|
23015
|
-
|
|
23016
|
-
if (
|
|
23015
|
+
current = stack.elements.length === 1 && fragment ? fragmentContext : stack.top;
|
|
23016
|
+
if (current.namespaceURI === NAMESPACE.MATHML) {
|
|
23017
23017
|
adjustMathMLAttributes(arg3);
|
|
23018
|
-
} else if (
|
|
23018
|
+
} else if (current.namespaceURI === NAMESPACE.SVG) {
|
|
23019
23019
|
value = adjustSVGTagName(value);
|
|
23020
23020
|
adjustSVGAttributes(arg3);
|
|
23021
23021
|
}
|
|
23022
23022
|
adjustForeignAttributes(arg3);
|
|
23023
|
-
insertForeignElement(value, arg3,
|
|
23023
|
+
insertForeignElement(value, arg3, current.namespaceURI);
|
|
23024
23024
|
if (arg4) {
|
|
23025
|
-
if (value === "script" &&
|
|
23025
|
+
if (value === "script" && current.namespaceURI === NAMESPACE.SVG) {
|
|
23026
23026
|
}
|
|
23027
23027
|
stack.pop();
|
|
23028
23028
|
}
|
|
23029
23029
|
return;
|
|
23030
23030
|
case 3:
|
|
23031
|
-
|
|
23032
|
-
if (value === "script" &&
|
|
23031
|
+
current = stack.top;
|
|
23032
|
+
if (value === "script" && current.namespaceURI === NAMESPACE.SVG && current.localName === "script") {
|
|
23033
23033
|
stack.pop();
|
|
23034
23034
|
} else {
|
|
23035
23035
|
var i = stack.elements.length - 1;
|
|
@@ -23226,8 +23226,8 @@ var require_Location = __commonJS({
|
|
|
23226
23226
|
}
|
|
23227
23227
|
},
|
|
23228
23228
|
assign: { value: function(url) {
|
|
23229
|
-
var
|
|
23230
|
-
var newurl =
|
|
23229
|
+
var current = new URL2(this._href);
|
|
23230
|
+
var newurl = current.resolve(url);
|
|
23231
23231
|
this._href = newurl;
|
|
23232
23232
|
} },
|
|
23233
23233
|
replace: { value: function(url) {
|
|
@@ -23832,11 +23832,11 @@ var require_turndown_cjs = __commonJS({
|
|
|
23832
23832
|
node.parentNode.removeChild(node);
|
|
23833
23833
|
return next2;
|
|
23834
23834
|
}
|
|
23835
|
-
function next(prev,
|
|
23836
|
-
if (prev && prev.parentNode ===
|
|
23837
|
-
return
|
|
23835
|
+
function next(prev, current, isPre) {
|
|
23836
|
+
if (prev && prev.parentNode === current || isPre(current)) {
|
|
23837
|
+
return current.nextSibling || current.parentNode;
|
|
23838
23838
|
}
|
|
23839
|
-
return
|
|
23839
|
+
return current.firstChild || current.nextSibling || current.parentNode;
|
|
23840
23840
|
}
|
|
23841
23841
|
var root = typeof window !== "undefined" ? window : {};
|
|
23842
23842
|
function canParseHTMLNatively() {
|
|
@@ -25710,19 +25710,19 @@ var require_decode = __commonJS({
|
|
|
25710
25710
|
};
|
|
25711
25711
|
EntityDecoder3.prototype.stateNamedEntity = function(str2, offset) {
|
|
25712
25712
|
var decodeTree = this.decodeTree;
|
|
25713
|
-
var
|
|
25714
|
-
var valueLength = (
|
|
25713
|
+
var current = decodeTree[this.treeIndex];
|
|
25714
|
+
var valueLength = (current & BinTrieFlags2.VALUE_LENGTH) >> 14;
|
|
25715
25715
|
for (; offset < str2.length; offset++, this.excess++) {
|
|
25716
25716
|
var char = str2.charCodeAt(offset);
|
|
25717
|
-
this.treeIndex = determineBranch2(decodeTree,
|
|
25717
|
+
this.treeIndex = determineBranch2(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char);
|
|
25718
25718
|
if (this.treeIndex < 0) {
|
|
25719
25719
|
return this.result === 0 || // If we are parsing an attribute
|
|
25720
25720
|
this.decodeMode === DecodingMode2.Attribute && // We shouldn't have consumed any characters after the entity,
|
|
25721
25721
|
(valueLength === 0 || // And there should be no invalid characters.
|
|
25722
25722
|
isEntityInAttributeInvalidEnd2(char)) ? 0 : this.emitNotTerminatedNamedEntity();
|
|
25723
25723
|
}
|
|
25724
|
-
|
|
25725
|
-
valueLength = (
|
|
25724
|
+
current = decodeTree[this.treeIndex];
|
|
25725
|
+
valueLength = (current & BinTrieFlags2.VALUE_LENGTH) >> 14;
|
|
25726
25726
|
if (valueLength !== 0) {
|
|
25727
25727
|
if (char === CharCodes2.SEMI) {
|
|
25728
25728
|
return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess);
|
|
@@ -25806,9 +25806,9 @@ var require_decode = __commonJS({
|
|
|
25806
25806
|
return result;
|
|
25807
25807
|
};
|
|
25808
25808
|
}
|
|
25809
|
-
function determineBranch2(decodeTree,
|
|
25810
|
-
var branchCount = (
|
|
25811
|
-
var jumpOffset =
|
|
25809
|
+
function determineBranch2(decodeTree, current, nodeIdx, char) {
|
|
25810
|
+
var branchCount = (current & BinTrieFlags2.BRANCH_LENGTH) >> 7;
|
|
25811
|
+
var jumpOffset = current & BinTrieFlags2.JUMP_TABLE;
|
|
25812
25812
|
if (branchCount === 0) {
|
|
25813
25813
|
return jumpOffset !== 0 && char === jumpOffset ? nodeIdx : -1;
|
|
25814
25814
|
}
|
|
@@ -26923,15 +26923,15 @@ var require_helpers = __commonJS({
|
|
|
26923
26923
|
if (nodeA === nodeB) {
|
|
26924
26924
|
return 0;
|
|
26925
26925
|
}
|
|
26926
|
-
var
|
|
26927
|
-
while (
|
|
26928
|
-
aParents.unshift(
|
|
26929
|
-
|
|
26926
|
+
var current = (0, domhandler_1.hasChildren)(nodeA) ? nodeA : nodeA.parent;
|
|
26927
|
+
while (current) {
|
|
26928
|
+
aParents.unshift(current);
|
|
26929
|
+
current = current.parent;
|
|
26930
26930
|
}
|
|
26931
|
-
|
|
26932
|
-
while (
|
|
26933
|
-
bParents.unshift(
|
|
26934
|
-
|
|
26931
|
+
current = (0, domhandler_1.hasChildren)(nodeB) ? nodeB : nodeB.parent;
|
|
26932
|
+
while (current) {
|
|
26933
|
+
bParents.unshift(current);
|
|
26934
|
+
current = current.parent;
|
|
26935
26935
|
}
|
|
26936
26936
|
var maxIdx = Math.min(aParents.length, bParents.length);
|
|
26937
26937
|
var idx = 0;
|
|
@@ -28667,9 +28667,9 @@ var require_general = __commonJS({
|
|
|
28667
28667
|
case css_what_1.SelectorType.Descendant: {
|
|
28668
28668
|
if (options2.cacheResults === false || typeof WeakSet === "undefined") {
|
|
28669
28669
|
return function descendant(elem) {
|
|
28670
|
-
var
|
|
28671
|
-
while (
|
|
28672
|
-
if (next(
|
|
28670
|
+
var current = elem;
|
|
28671
|
+
while (current = getElementParent(current, adapter)) {
|
|
28672
|
+
if (next(current)) {
|
|
28673
28673
|
return true;
|
|
28674
28674
|
}
|
|
28675
28675
|
}
|
|
@@ -28678,13 +28678,13 @@ var require_general = __commonJS({
|
|
|
28678
28678
|
}
|
|
28679
28679
|
var isFalseCache_1 = /* @__PURE__ */ new WeakSet();
|
|
28680
28680
|
return function cachedDescendant(elem) {
|
|
28681
|
-
var
|
|
28682
|
-
while (
|
|
28683
|
-
if (!isFalseCache_1.has(
|
|
28684
|
-
if (adapter.isTag(
|
|
28681
|
+
var current = elem;
|
|
28682
|
+
while (current = getElementParent(current, adapter)) {
|
|
28683
|
+
if (!isFalseCache_1.has(current)) {
|
|
28684
|
+
if (adapter.isTag(current) && next(current)) {
|
|
28685
28685
|
return true;
|
|
28686
28686
|
}
|
|
28687
|
-
isFalseCache_1.add(
|
|
28687
|
+
isFalseCache_1.add(current);
|
|
28688
28688
|
}
|
|
28689
28689
|
}
|
|
28690
28690
|
return false;
|
|
@@ -28692,11 +28692,11 @@ var require_general = __commonJS({
|
|
|
28692
28692
|
}
|
|
28693
28693
|
case "_flexibleDescendant": {
|
|
28694
28694
|
return function flexibleDescendant(elem) {
|
|
28695
|
-
var
|
|
28695
|
+
var current = elem;
|
|
28696
28696
|
do {
|
|
28697
|
-
if (next(
|
|
28697
|
+
if (next(current))
|
|
28698
28698
|
return true;
|
|
28699
|
-
} while (
|
|
28699
|
+
} while (current = getElementParent(current, adapter));
|
|
28700
28700
|
return false;
|
|
28701
28701
|
};
|
|
28702
28702
|
}
|
|
@@ -49324,7 +49324,7 @@ async function getPage(pageId, includeBody) {
|
|
|
49324
49324
|
async function createPage(spaceId, title, body, parentId, clientLabel) {
|
|
49325
49325
|
const cfg = await getConfig();
|
|
49326
49326
|
const pageBody = stripAttributionFooter(toStorageFormat(body));
|
|
49327
|
-
const epimethianTag = `Epimethian v${"5.
|
|
49327
|
+
const epimethianTag = `Epimethian v${"5.4.0"}`;
|
|
49328
49328
|
const versionMsg = cfg.attribution && clientLabel ? `Created by ${clientLabel} (via ${epimethianTag})` : `Created by ${epimethianTag}`;
|
|
49329
49329
|
const payload = {
|
|
49330
49330
|
title,
|
|
@@ -49349,7 +49349,7 @@ async function createPage(spaceId, title, body, parentId, clientLabel) {
|
|
|
49349
49349
|
async function updatePage(pageId, opts) {
|
|
49350
49350
|
const cfg = await getConfig();
|
|
49351
49351
|
const newVersion = opts.version + 1;
|
|
49352
|
-
const epimethianTag = `Epimethian v${"5.
|
|
49352
|
+
const epimethianTag = `Epimethian v${"5.4.0"}`;
|
|
49353
49353
|
const effectiveClient = cfg.attribution ? opts.clientLabel : void 0;
|
|
49354
49354
|
let versionMessage;
|
|
49355
49355
|
if (opts.versionMessage && effectiveClient)
|
|
@@ -50303,9 +50303,9 @@ function structuredPatch(oldFileName, newFileName, oldStr, newStr, oldHeader, ne
|
|
|
50303
50303
|
const hunks = [];
|
|
50304
50304
|
let oldRangeStart = 0, newRangeStart = 0, curRange = [], oldLine = 1, newLine = 1;
|
|
50305
50305
|
for (let i = 0; i < diff.length; i++) {
|
|
50306
|
-
const
|
|
50307
|
-
|
|
50308
|
-
if (
|
|
50306
|
+
const current = diff[i], lines = current.lines || splitLines(current.value);
|
|
50307
|
+
current.lines = lines;
|
|
50308
|
+
if (current.added || current.removed) {
|
|
50309
50309
|
if (!oldRangeStart) {
|
|
50310
50310
|
const prev = diff[i - 1];
|
|
50311
50311
|
oldRangeStart = oldLine;
|
|
@@ -50317,9 +50317,9 @@ function structuredPatch(oldFileName, newFileName, oldStr, newStr, oldHeader, ne
|
|
|
50317
50317
|
}
|
|
50318
50318
|
}
|
|
50319
50319
|
for (const line of lines) {
|
|
50320
|
-
curRange.push((
|
|
50320
|
+
curRange.push((current.added ? "+" : "-") + line);
|
|
50321
50321
|
}
|
|
50322
|
-
if (
|
|
50322
|
+
if (current.added) {
|
|
50323
50323
|
newLine += lines.length;
|
|
50324
50324
|
} else {
|
|
50325
50325
|
oldLine += lines.length;
|
|
@@ -51235,19 +51235,19 @@ var EntityDecoder = class {
|
|
|
51235
51235
|
*/
|
|
51236
51236
|
stateNamedEntity(str2, offset) {
|
|
51237
51237
|
const { decodeTree } = this;
|
|
51238
|
-
let
|
|
51239
|
-
let valueLength = (
|
|
51238
|
+
let current = decodeTree[this.treeIndex];
|
|
51239
|
+
let valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;
|
|
51240
51240
|
for (; offset < str2.length; offset++, this.excess++) {
|
|
51241
51241
|
const char = str2.charCodeAt(offset);
|
|
51242
|
-
this.treeIndex = determineBranch(decodeTree,
|
|
51242
|
+
this.treeIndex = determineBranch(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char);
|
|
51243
51243
|
if (this.treeIndex < 0) {
|
|
51244
51244
|
return this.result === 0 || // If we are parsing an attribute
|
|
51245
51245
|
this.decodeMode === DecodingMode.Attribute && // We shouldn't have consumed any characters after the entity,
|
|
51246
51246
|
(valueLength === 0 || // And there should be no invalid characters.
|
|
51247
51247
|
isEntityInAttributeInvalidEnd(char)) ? 0 : this.emitNotTerminatedNamedEntity();
|
|
51248
51248
|
}
|
|
51249
|
-
|
|
51250
|
-
valueLength = (
|
|
51249
|
+
current = decodeTree[this.treeIndex];
|
|
51250
|
+
valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;
|
|
51251
51251
|
if (valueLength !== 0) {
|
|
51252
51252
|
if (char === CharCodes.SEMI) {
|
|
51253
51253
|
return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess);
|
|
@@ -51347,9 +51347,9 @@ function getDecoder(decodeTree) {
|
|
|
51347
51347
|
return result;
|
|
51348
51348
|
};
|
|
51349
51349
|
}
|
|
51350
|
-
function determineBranch(decodeTree,
|
|
51351
|
-
const branchCount = (
|
|
51352
|
-
const jumpOffset =
|
|
51350
|
+
function determineBranch(decodeTree, current, nodeIdx, char) {
|
|
51351
|
+
const branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7;
|
|
51352
|
+
const jumpOffset = current & BinTrieFlags.JUMP_TABLE;
|
|
51353
51353
|
if (branchCount === 0) {
|
|
51354
51354
|
return jumpOffset !== 0 && char === jumpOffset ? nodeIdx : -1;
|
|
51355
51355
|
}
|
|
@@ -52774,15 +52774,15 @@ function escapedSplit(str2) {
|
|
|
52774
52774
|
let ch = str2.charCodeAt(pos);
|
|
52775
52775
|
let isEscaped = false;
|
|
52776
52776
|
let lastPos = 0;
|
|
52777
|
-
let
|
|
52777
|
+
let current = "";
|
|
52778
52778
|
while (pos < max) {
|
|
52779
52779
|
if (ch === 124) {
|
|
52780
52780
|
if (!isEscaped) {
|
|
52781
|
-
result.push(
|
|
52782
|
-
|
|
52781
|
+
result.push(current + str2.substring(lastPos, pos));
|
|
52782
|
+
current = "";
|
|
52783
52783
|
lastPos = pos + 1;
|
|
52784
52784
|
} else {
|
|
52785
|
-
|
|
52785
|
+
current += str2.substring(lastPos, pos - 1);
|
|
52786
52786
|
lastPos = pos;
|
|
52787
52787
|
}
|
|
52788
52788
|
}
|
|
@@ -52790,7 +52790,7 @@ function escapedSplit(str2) {
|
|
|
52790
52790
|
pos++;
|
|
52791
52791
|
ch = str2.charCodeAt(pos);
|
|
52792
52792
|
}
|
|
52793
|
-
result.push(
|
|
52793
|
+
result.push(current + str2.substring(lastPos));
|
|
52794
52794
|
return result;
|
|
52795
52795
|
}
|
|
52796
52796
|
function table(state, startLine, endLine, silent) {
|
|
@@ -56949,11 +56949,11 @@ function parseSemVer(version2) {
|
|
|
56949
56949
|
patch: parseInt(match2[3], 10)
|
|
56950
56950
|
};
|
|
56951
56951
|
}
|
|
56952
|
-
function classifyUpdate(
|
|
56953
|
-
if (latest.major >
|
|
56954
|
-
if (latest.major ===
|
|
56952
|
+
function classifyUpdate(current, latest) {
|
|
56953
|
+
if (latest.major > current.major) return "major";
|
|
56954
|
+
if (latest.major === current.major && latest.minor > current.minor)
|
|
56955
56955
|
return "minor";
|
|
56956
|
-
if (latest.major ===
|
|
56956
|
+
if (latest.major === current.major && latest.minor === current.minor && latest.patch > current.patch)
|
|
56957
56957
|
return "patch";
|
|
56958
56958
|
return null;
|
|
56959
56959
|
}
|
|
@@ -57025,10 +57025,10 @@ async function checkForUpdates(currentVersion) {
|
|
|
57025
57025
|
if (!latestStr) {
|
|
57026
57026
|
return state?.pendingUpdate ?? null;
|
|
57027
57027
|
}
|
|
57028
|
-
const
|
|
57028
|
+
const current = parseSemVer(currentVersion);
|
|
57029
57029
|
const latest = parseSemVer(latestStr);
|
|
57030
|
-
if (!
|
|
57031
|
-
const type = classifyUpdate(
|
|
57030
|
+
if (!current || !latest) return null;
|
|
57031
|
+
const type = classifyUpdate(current, latest);
|
|
57032
57032
|
const newState = {
|
|
57033
57033
|
lastCheck: (/* @__PURE__ */ new Date()).toISOString()
|
|
57034
57034
|
};
|
|
@@ -57981,8 +57981,8 @@ ${truncated}`);
|
|
|
57981
57981
|
` <ac:parameter ac:name="contentVer">1</ac:parameter>`,
|
|
57982
57982
|
`</ac:structured-macro>`
|
|
57983
57983
|
].join("\n");
|
|
57984
|
-
const
|
|
57985
|
-
const existingBody =
|
|
57984
|
+
const current = await getPage(page_id, true);
|
|
57985
|
+
const existingBody = current.body?.storage?.value ?? current.body?.value ?? "";
|
|
57986
57986
|
const newBody = append ? `${existingBody}
|
|
57987
57987
|
${macro}` : macro;
|
|
57988
57988
|
enforceContentSafetyGuards({
|
|
@@ -57990,9 +57990,9 @@ ${macro}` : macro;
|
|
|
57990
57990
|
newStorage: newBody
|
|
57991
57991
|
});
|
|
57992
57992
|
const { page, newVersion } = await updatePage(page_id, {
|
|
57993
|
-
title:
|
|
57993
|
+
title: current.title,
|
|
57994
57994
|
body: newBody,
|
|
57995
|
-
version:
|
|
57995
|
+
version: current.version?.number ?? 0,
|
|
57996
57996
|
versionMessage: `Added diagram: ${filename}`,
|
|
57997
57997
|
previousBody: existingBody,
|
|
57998
57998
|
clientLabel: getClientLabel(server)
|
|
@@ -58001,7 +58001,7 @@ ${macro}` : macro;
|
|
|
58001
58001
|
timestamp: (/* @__PURE__ */ new Date()).toISOString(),
|
|
58002
58002
|
operation: "update_page",
|
|
58003
58003
|
pageId: page_id,
|
|
58004
|
-
oldVersion:
|
|
58004
|
+
oldVersion: current.version?.number ?? 0,
|
|
58005
58005
|
newVersion,
|
|
58006
58006
|
oldBodyLen: existingBody.length,
|
|
58007
58007
|
newBodyLen: newBody.length,
|
|
@@ -58013,9 +58013,7 @@ ${macro}` : macro;
|
|
|
58013
58013
|
`Diagram "${filename}" added to page ${page.title} (ID: ${page.id}, version: ${newVersion})` + echo
|
|
58014
58014
|
);
|
|
58015
58015
|
} catch (err) {
|
|
58016
|
-
logMutation(errorRecord("update_page", page_id, err
|
|
58017
|
-
oldVersion: current.version?.number ?? 0
|
|
58018
|
-
}));
|
|
58016
|
+
logMutation(errorRecord("update_page", page_id, err));
|
|
58019
58017
|
return toolError(err);
|
|
58020
58018
|
}
|
|
58021
58019
|
}
|
|
@@ -58626,7 +58624,7 @@ ${lines.join("\n")}${echo2}`
|
|
|
58626
58624
|
inputSchema: {}
|
|
58627
58625
|
},
|
|
58628
58626
|
async () => {
|
|
58629
|
-
let text2 = `epimethian-mcp v${"5.
|
|
58627
|
+
let text2 = `epimethian-mcp v${"5.4.0"}`;
|
|
58630
58628
|
try {
|
|
58631
58629
|
const pending = await getPendingUpdate();
|
|
58632
58630
|
if (pending) {
|
|
@@ -58656,7 +58654,7 @@ ${pending.type === "major" ? "Major" : "Minor"} update available: v${pending.cur
|
|
|
58656
58654
|
const pending = await getPendingUpdate();
|
|
58657
58655
|
if (!pending) {
|
|
58658
58656
|
return toolResult(
|
|
58659
|
-
`epimethian-mcp v${"5.
|
|
58657
|
+
`epimethian-mcp v${"5.4.0"} is already up to date.`
|
|
58660
58658
|
);
|
|
58661
58659
|
}
|
|
58662
58660
|
const output = await performUpgrade(pending.latest);
|
|
@@ -58684,12 +58682,12 @@ async function main() {
|
|
|
58684
58682
|
const serverName = config3.profile ? `confluence-${config3.profile}` : "confluence";
|
|
58685
58683
|
const server = new McpServer({
|
|
58686
58684
|
name: serverName,
|
|
58687
|
-
version: "5.
|
|
58685
|
+
version: "5.4.0"
|
|
58688
58686
|
});
|
|
58689
58687
|
registerTools(server, config3);
|
|
58690
58688
|
const transport = new StdioServerTransport();
|
|
58691
58689
|
await server.connect(transport);
|
|
58692
|
-
checkForUpdates("5.
|
|
58690
|
+
checkForUpdates("5.4.0").catch(() => {
|
|
58693
58691
|
});
|
|
58694
58692
|
}
|
|
58695
58693
|
|