multisite-cms-mcp 1.7.4 → 1.7.6
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 +7 -2
- package/dist/lib/api-client.d.ts.map +1 -1
- package/dist/lib/api-client.js +36 -0
- package/dist/lib/auth-state.d.ts +13 -0
- package/dist/lib/auth-state.d.ts.map +1 -0
- package/dist/lib/auth-state.js +24 -0
- package/dist/lib/device-flow.d.ts.map +1 -1
- package/dist/lib/device-flow.js +3 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -653,17 +653,22 @@ async function main() {
|
|
|
653
653
|
const transport = new stdio_js_1.StdioServerTransport();
|
|
654
654
|
// Check authentication status (non-blocking)
|
|
655
655
|
const { getValidCredentials } = await Promise.resolve().then(() => __importStar(require('./lib/credentials')));
|
|
656
|
+
const { setAuthInProgress } = await Promise.resolve().then(() => __importStar(require('./lib/auth-state')));
|
|
656
657
|
const credentials = await getValidCredentials();
|
|
657
658
|
if (!credentials) {
|
|
658
659
|
// No valid credentials - start device flow in background
|
|
659
660
|
const { startDeviceFlow } = await Promise.resolve().then(() => __importStar(require('./lib/device-flow')));
|
|
660
661
|
console.error('FastMode MCP Server - Authentication Required');
|
|
661
662
|
console.error('Starting authentication flow...');
|
|
662
|
-
// Start auth in background
|
|
663
|
-
startDeviceFlow()
|
|
663
|
+
// Start auth in background but track it so tools can wait
|
|
664
|
+
const authPromise = startDeviceFlow();
|
|
665
|
+
setAuthInProgress(authPromise);
|
|
666
|
+
authPromise.then(result => {
|
|
664
667
|
console.error(result);
|
|
668
|
+
setAuthInProgress(null);
|
|
665
669
|
}).catch(err => {
|
|
666
670
|
console.error('Authentication error:', err);
|
|
671
|
+
setAuthInProgress(null);
|
|
667
672
|
});
|
|
668
673
|
}
|
|
669
674
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,SAAS,CAAC,CAgB5D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAKxC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,SAAS,CAAC,CAgB5D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAKxC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAW5D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAS/C;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC3C,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,GAAG,QAAQ,CAAC,CAoEjC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,QAAQ,CAOlE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAEvD;AAYD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAwCnH;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAM,GAChD,OAAO,CAAC;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,GAAG,QAAQ,CAAC,CAOjC"}
|
package/dist/lib/api-client.js
CHANGED
|
@@ -3,6 +3,39 @@
|
|
|
3
3
|
* Centralized API client for FastMode API requests
|
|
4
4
|
* Uses stored credentials with automatic refresh, or falls back to env var
|
|
5
5
|
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
6
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
40
|
exports.getApiUrl = getApiUrl;
|
|
8
41
|
exports.getApiConfigAsync = getApiConfigAsync;
|
|
@@ -59,6 +92,9 @@ function isAuthConfigured() {
|
|
|
59
92
|
* Check if we need to trigger the device flow
|
|
60
93
|
*/
|
|
61
94
|
async function needsAuthentication() {
|
|
95
|
+
// Wait for any startup auth that might be in progress
|
|
96
|
+
const { waitForAuth } = await Promise.resolve().then(() => __importStar(require('./auth-state')));
|
|
97
|
+
await waitForAuth();
|
|
62
98
|
const credentials = await (0, credentials_1.getValidCredentials)();
|
|
63
99
|
if (credentials)
|
|
64
100
|
return false;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared authentication state
|
|
3
|
+
* Separate file to avoid circular dependencies
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Set the in-progress auth promise
|
|
7
|
+
*/
|
|
8
|
+
export declare function setAuthInProgress(promise: Promise<string> | null): void;
|
|
9
|
+
/**
|
|
10
|
+
* Wait for any in-progress authentication to complete
|
|
11
|
+
*/
|
|
12
|
+
export declare function waitForAuth(): Promise<void>;
|
|
13
|
+
//# sourceMappingURL=auth-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-state.d.ts","sourceRoot":"","sources":["../../src/lib/auth-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,IAAI,CAEvE;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAIjD"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Shared authentication state
|
|
4
|
+
* Separate file to avoid circular dependencies
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.setAuthInProgress = setAuthInProgress;
|
|
8
|
+
exports.waitForAuth = waitForAuth;
|
|
9
|
+
// Track in-progress authentication
|
|
10
|
+
let authInProgress = null;
|
|
11
|
+
/**
|
|
12
|
+
* Set the in-progress auth promise
|
|
13
|
+
*/
|
|
14
|
+
function setAuthInProgress(promise) {
|
|
15
|
+
authInProgress = promise;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Wait for any in-progress authentication to complete
|
|
19
|
+
*/
|
|
20
|
+
async function waitForAuth() {
|
|
21
|
+
if (authInProgress) {
|
|
22
|
+
await authInProgress;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-flow.d.ts","sourceRoot":"","sources":["../../src/lib/device-flow.ts"],"names":[],"mappings":"AA0DA;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAqGvD;AA0ED;;;GAGG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC;IAAE,aAAa,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"device-flow.d.ts","sourceRoot":"","sources":["../../src/lib/device-flow.ts"],"names":[],"mappings":"AA0DA;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAqGvD;AA0ED;;;GAGG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC;IAAE,aAAa,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA2BhG"}
|
package/dist/lib/device-flow.js
CHANGED
|
@@ -223,6 +223,9 @@ async function pollForToken(apiUrl, deviceCode, interval, expiresAt) {
|
|
|
223
223
|
async function ensureAuthenticated() {
|
|
224
224
|
// Import here to avoid circular dependency
|
|
225
225
|
const { getValidCredentials } = await Promise.resolve().then(() => __importStar(require('./credentials')));
|
|
226
|
+
const { waitForAuth } = await Promise.resolve().then(() => __importStar(require('./auth-state')));
|
|
227
|
+
// Wait for any startup auth that might be in progress
|
|
228
|
+
await waitForAuth();
|
|
226
229
|
const credentials = await getValidCredentials();
|
|
227
230
|
if (credentials) {
|
|
228
231
|
return {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "multisite-cms-mcp",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.6",
|
|
4
4
|
"description": "MCP server for Fast Mode CMS. Convert websites, validate packages, and deploy directly to Fast Mode. Includes authentication, project creation, schema sync, and one-click deployment.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|