mcp-compose 0.0.7 → 0.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/README.md +58 -11
- package/dist/bin/mcp-compose.js +8 -8
- package/dist/bin/mcp-compose.js.map +1 -1
- package/dist/bin/mcp-gateway.d.ts +3 -0
- package/dist/bin/mcp-gateway.d.ts.map +1 -0
- package/dist/bin/mcp-gateway.js +41 -0
- package/dist/bin/mcp-gateway.js.map +1 -0
- package/dist/package.json +4 -3
- package/dist/src/command.d.ts +4 -0
- package/dist/src/command.d.ts.map +1 -0
- package/dist/src/command.js +66 -0
- package/dist/src/command.js.map +1 -0
- package/dist/src/config.d.ts +2 -2
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +16 -3
- package/dist/src/config.js.map +1 -1
- package/dist/src/gateway.d.ts +22 -0
- package/dist/src/gateway.d.ts.map +1 -0
- package/dist/src/gateway.js +405 -0
- package/dist/src/gateway.js.map +1 -0
- package/dist/src/index.d.ts +3 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/oauth.d.ts +37 -0
- package/dist/src/oauth.d.ts.map +1 -0
- package/dist/src/oauth.js +317 -0
- package/dist/src/oauth.js.map +1 -0
- package/dist/src/pm2.d.ts +2 -2
- package/dist/src/pm2.d.ts.map +1 -1
- package/dist/src/pm2.js +17 -18
- package/dist/src/pm2.js.map +1 -1
- package/dist/src/sync.js +1 -1
- package/dist/src/sync.js.map +1 -1
- package/dist/src/types.d.ts +19 -2
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/validation.d.ts.map +1 -1
- package/dist/src/validation.js +31 -17
- package/dist/src/validation.js.map +1 -1
- package/package.json +4 -3
- package/dist/src/supergateway.d.ts +0 -9
- package/dist/src/supergateway.d.ts.map +0 -1
- package/dist/src/supergateway.js +0 -54
- package/dist/src/supergateway.js.map +0 -1
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
import { createServer as createHttpServer } from 'node:http';
|
|
2
|
+
import { createHash, randomBytes } from 'node:crypto';
|
|
3
|
+
import { readFile, writeFile, mkdir } from 'node:fs/promises';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
import { homedir } from 'node:os';
|
|
6
|
+
import { exec } from 'node:child_process';
|
|
7
|
+
// --- Constants ---
|
|
8
|
+
const CONFIG_DIR = join(homedir(), '.mcp-auth', 'mcp-compose');
|
|
9
|
+
const DEFAULT_AUTH_TIMEOUT = 120_000;
|
|
10
|
+
const MCP_PROTOCOL_VERSION = '2025-03-26';
|
|
11
|
+
const CLIENT_NAME = 'mcp-compose';
|
|
12
|
+
// --- Helpers ---
|
|
13
|
+
function serverHash(url) {
|
|
14
|
+
return createHash('md5').update(url).digest('hex').slice(0, 12);
|
|
15
|
+
}
|
|
16
|
+
function generateCodeVerifier() {
|
|
17
|
+
return randomBytes(32).toString('base64url');
|
|
18
|
+
}
|
|
19
|
+
function generateCodeChallenge(verifier) {
|
|
20
|
+
return createHash('sha256').update(verifier).digest('base64url');
|
|
21
|
+
}
|
|
22
|
+
async function ensureConfigDir() {
|
|
23
|
+
await mkdir(CONFIG_DIR, { recursive: true, mode: 0o700 });
|
|
24
|
+
}
|
|
25
|
+
function openBrowser(url) {
|
|
26
|
+
const cmd = process.platform === 'darwin' ? 'open'
|
|
27
|
+
: process.platform === 'win32' ? 'start ""'
|
|
28
|
+
: 'xdg-open';
|
|
29
|
+
exec(`${cmd} "${url}"`, (err) => {
|
|
30
|
+
if (err) {
|
|
31
|
+
process.stderr.write(`Please open this URL in your browser:\n${url}\n`);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
function parseWwwAuthenticateScope(header) {
|
|
36
|
+
if (!header)
|
|
37
|
+
return undefined;
|
|
38
|
+
const match = /scope="([^"]+)"/.exec(header);
|
|
39
|
+
return match?.[1];
|
|
40
|
+
}
|
|
41
|
+
function listenOnRandomPort(server) {
|
|
42
|
+
return new Promise((resolve) => {
|
|
43
|
+
server.listen(0, '127.0.0.1', () => {
|
|
44
|
+
resolve(server.address().port);
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
// --- Storage ---
|
|
49
|
+
async function loadStoredAuth(hash) {
|
|
50
|
+
try {
|
|
51
|
+
const content = await readFile(join(CONFIG_DIR, `${hash}.json`), 'utf-8');
|
|
52
|
+
return JSON.parse(content);
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
async function saveStoredAuth(hash, auth) {
|
|
59
|
+
await ensureConfigDir();
|
|
60
|
+
await writeFile(join(CONFIG_DIR, `${hash}.json`), JSON.stringify(auth, null, 2), { mode: 0o600 });
|
|
61
|
+
}
|
|
62
|
+
// --- Discovery ---
|
|
63
|
+
async function fetchJson(url, headers) {
|
|
64
|
+
try {
|
|
65
|
+
const res = headers ? await fetch(url, { headers }) : await fetch(url);
|
|
66
|
+
if (res.ok)
|
|
67
|
+
return await res.json();
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
// ignore network errors, continue
|
|
71
|
+
}
|
|
72
|
+
return undefined;
|
|
73
|
+
}
|
|
74
|
+
async function discoverProtectedResource(serverUrl, headers) {
|
|
75
|
+
const url = new URL(serverUrl);
|
|
76
|
+
const fetchHeaders = { 'MCP-Protocol-Version': MCP_PROTOCOL_VERSION, ...headers };
|
|
77
|
+
// Path-aware URL first, then root fallback (RFC 9728)
|
|
78
|
+
return await fetchJson(new URL(`/.well-known/oauth-protected-resource${url.pathname}`, url.origin).toString(), fetchHeaders) ?? await fetchJson(new URL('/.well-known/oauth-protected-resource', url.origin).toString(), fetchHeaders);
|
|
79
|
+
}
|
|
80
|
+
async function discoverAuthServer(authServerUrl) {
|
|
81
|
+
const url = new URL(authServerUrl);
|
|
82
|
+
const hasPath = url.pathname !== '/' && url.pathname !== '';
|
|
83
|
+
// RFC 8414 + OIDC Discovery URLs in priority order
|
|
84
|
+
const urls = hasPath ? [
|
|
85
|
+
new URL(`/.well-known/oauth-authorization-server${url.pathname}`, url.origin),
|
|
86
|
+
new URL(`/.well-known/openid-configuration${url.pathname}`, url.origin),
|
|
87
|
+
new URL(`${url.pathname}/.well-known/openid-configuration`, url.origin),
|
|
88
|
+
] : [
|
|
89
|
+
new URL('/.well-known/oauth-authorization-server', url.origin),
|
|
90
|
+
new URL('/.well-known/openid-configuration', url.origin),
|
|
91
|
+
];
|
|
92
|
+
for (const discoveryUrl of urls) {
|
|
93
|
+
const meta = await fetchJson(discoveryUrl.toString());
|
|
94
|
+
if (meta)
|
|
95
|
+
return meta;
|
|
96
|
+
}
|
|
97
|
+
return undefined;
|
|
98
|
+
}
|
|
99
|
+
// --- Registration (RFC 7591) ---
|
|
100
|
+
async function registerClient(authServerUrl, metadata, redirectUri) {
|
|
101
|
+
const endpoint = metadata?.registration_endpoint
|
|
102
|
+
?? new URL('/register', authServerUrl).toString();
|
|
103
|
+
const res = await fetch(endpoint, {
|
|
104
|
+
method: 'POST',
|
|
105
|
+
headers: { 'Content-Type': 'application/json' },
|
|
106
|
+
body: JSON.stringify({
|
|
107
|
+
client_name: CLIENT_NAME,
|
|
108
|
+
redirect_uris: [redirectUri],
|
|
109
|
+
grant_types: ['authorization_code', 'refresh_token'],
|
|
110
|
+
response_types: ['code'],
|
|
111
|
+
token_endpoint_auth_method: 'none',
|
|
112
|
+
}),
|
|
113
|
+
});
|
|
114
|
+
if (!res.ok) {
|
|
115
|
+
throw new Error(`Client registration failed: ${String(res.status)} ${await res.text()}`);
|
|
116
|
+
}
|
|
117
|
+
const info = await res.json();
|
|
118
|
+
info.redirect_uris = [redirectUri];
|
|
119
|
+
return info;
|
|
120
|
+
}
|
|
121
|
+
// --- Token Exchange ---
|
|
122
|
+
function buildClientAuthHeaders(clientInfo) {
|
|
123
|
+
const headers = {
|
|
124
|
+
'Content-Type': 'application/x-www-form-urlencoded',
|
|
125
|
+
'Accept': 'application/json',
|
|
126
|
+
};
|
|
127
|
+
if (clientInfo.client_secret) {
|
|
128
|
+
headers['Authorization'] = `Basic ${Buffer.from(`${clientInfo.client_id}:${clientInfo.client_secret}`).toString('base64')}`;
|
|
129
|
+
}
|
|
130
|
+
return headers;
|
|
131
|
+
}
|
|
132
|
+
async function exchangeCodeForTokens(authServerUrl, metadata, clientInfo, code, codeVerifier, redirectUri) {
|
|
133
|
+
const tokenUrl = metadata?.token_endpoint ?? new URL('/token', authServerUrl).toString();
|
|
134
|
+
const params = new URLSearchParams({
|
|
135
|
+
grant_type: 'authorization_code',
|
|
136
|
+
code,
|
|
137
|
+
code_verifier: codeVerifier,
|
|
138
|
+
redirect_uri: redirectUri,
|
|
139
|
+
client_id: clientInfo.client_id,
|
|
140
|
+
});
|
|
141
|
+
const res = await fetch(tokenUrl, {
|
|
142
|
+
method: 'POST',
|
|
143
|
+
headers: buildClientAuthHeaders(clientInfo),
|
|
144
|
+
body: params.toString(),
|
|
145
|
+
});
|
|
146
|
+
if (!res.ok) {
|
|
147
|
+
throw new Error(`Token exchange failed: ${String(res.status)} ${await res.text()}`);
|
|
148
|
+
}
|
|
149
|
+
return await res.json();
|
|
150
|
+
}
|
|
151
|
+
async function refreshAccessToken(authServerUrl, metadata, clientInfo, refreshToken) {
|
|
152
|
+
const tokenUrl = metadata?.token_endpoint ?? new URL('/token', authServerUrl).toString();
|
|
153
|
+
const params = new URLSearchParams({
|
|
154
|
+
grant_type: 'refresh_token',
|
|
155
|
+
refresh_token: refreshToken,
|
|
156
|
+
client_id: clientInfo.client_id,
|
|
157
|
+
});
|
|
158
|
+
try {
|
|
159
|
+
const res = await fetch(tokenUrl, {
|
|
160
|
+
method: 'POST',
|
|
161
|
+
headers: buildClientAuthHeaders(clientInfo),
|
|
162
|
+
body: params.toString(),
|
|
163
|
+
});
|
|
164
|
+
if (!res.ok)
|
|
165
|
+
return undefined;
|
|
166
|
+
const tokens = await res.json();
|
|
167
|
+
// Preserve original refresh token if server doesn't return a new one
|
|
168
|
+
tokens.refresh_token ??= refreshToken;
|
|
169
|
+
return tokens;
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
return undefined;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
// --- Callback Server ---
|
|
176
|
+
function waitForOAuthCallback(server, port, timeout) {
|
|
177
|
+
return new Promise((resolve, reject) => {
|
|
178
|
+
const timer = setTimeout(() => {
|
|
179
|
+
server.close();
|
|
180
|
+
reject(new Error('OAuth authorization timed out'));
|
|
181
|
+
}, timeout);
|
|
182
|
+
server.on('request', (req, res) => {
|
|
183
|
+
const reqUrl = new URL(req.url ?? '/', `http://127.0.0.1:${String(port)}`);
|
|
184
|
+
if (reqUrl.pathname !== '/oauth/callback') {
|
|
185
|
+
res.writeHead(404);
|
|
186
|
+
res.end();
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
const code = reqUrl.searchParams.get('code');
|
|
190
|
+
const error = reqUrl.searchParams.get('error');
|
|
191
|
+
if (code) {
|
|
192
|
+
clearTimeout(timer);
|
|
193
|
+
res.writeHead(200, { 'Content-Type': 'text/html' });
|
|
194
|
+
res.end('<html><body><h1>Authorization successful</h1><p>You can close this tab.</p></body></html>');
|
|
195
|
+
server.close();
|
|
196
|
+
resolve(code);
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
clearTimeout(timer);
|
|
200
|
+
const msg = (error ?? reqUrl.searchParams.get('error_description') ?? 'Unknown error')
|
|
201
|
+
.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
|
|
202
|
+
res.writeHead(400, { 'Content-Type': 'text/html' });
|
|
203
|
+
res.end(`<html><body><h1>Authorization failed</h1><p>${msg}</p></body></html>`);
|
|
204
|
+
server.close();
|
|
205
|
+
reject(new Error(`OAuth error: ${msg}`));
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
// --- Main OAuth Client ---
|
|
211
|
+
export class OAuthClient {
|
|
212
|
+
hash;
|
|
213
|
+
serverUrl;
|
|
214
|
+
headers;
|
|
215
|
+
authTimeout;
|
|
216
|
+
stored;
|
|
217
|
+
authServerUrl;
|
|
218
|
+
authServerMetadata;
|
|
219
|
+
/** Deduplicates concurrent handleUnauthorized() calls into a single auth flow. */
|
|
220
|
+
pendingAuth = null;
|
|
221
|
+
constructor(options) {
|
|
222
|
+
this.serverUrl = options.serverUrl;
|
|
223
|
+
this.headers = options.headers ?? {};
|
|
224
|
+
this.authTimeout = options.authTimeout ?? DEFAULT_AUTH_TIMEOUT;
|
|
225
|
+
this.hash = serverHash(options.serverUrl);
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Get a valid access token, loading from disk cache if available.
|
|
229
|
+
*/
|
|
230
|
+
async getAccessToken() {
|
|
231
|
+
this.stored ??= await loadStoredAuth(this.hash);
|
|
232
|
+
return this.stored?.tokens?.access_token;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Handle a 401 response from the remote server.
|
|
236
|
+
* Deduplicates concurrent calls — only one auth flow runs at a time;
|
|
237
|
+
* subsequent callers wait for the same result.
|
|
238
|
+
*/
|
|
239
|
+
async handleUnauthorized(wwwAuthenticate) {
|
|
240
|
+
if (this.pendingAuth) {
|
|
241
|
+
return this.pendingAuth;
|
|
242
|
+
}
|
|
243
|
+
this.pendingAuth = this.executeAuthFlow(wwwAuthenticate);
|
|
244
|
+
try {
|
|
245
|
+
return await this.pendingAuth;
|
|
246
|
+
}
|
|
247
|
+
finally {
|
|
248
|
+
this.pendingAuth = null;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
async executeAuthFlow(wwwAuthenticate) {
|
|
252
|
+
const scope = parseWwwAuthenticateScope(wwwAuthenticate);
|
|
253
|
+
this.stored ??= await loadStoredAuth(this.hash) ?? {};
|
|
254
|
+
// Discover auth server
|
|
255
|
+
await this.discover();
|
|
256
|
+
// Try refresh first
|
|
257
|
+
if (this.stored.tokens?.refresh_token && this.stored.clientInfo && this.authServerUrl) {
|
|
258
|
+
const refreshed = await refreshAccessToken(this.authServerUrl, this.authServerMetadata, this.stored.clientInfo, this.stored.tokens.refresh_token);
|
|
259
|
+
if (refreshed) {
|
|
260
|
+
this.stored.tokens = refreshed;
|
|
261
|
+
this.stored.tokenSavedAt = new Date().toISOString();
|
|
262
|
+
await saveStoredAuth(this.hash, this.stored);
|
|
263
|
+
return refreshed.access_token;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
// Full authorization code flow with PKCE
|
|
267
|
+
if (!this.authServerUrl) {
|
|
268
|
+
throw new Error('Failed to discover authorization server');
|
|
269
|
+
}
|
|
270
|
+
// Start callback server on a random port
|
|
271
|
+
const callbackHttpServer = createHttpServer();
|
|
272
|
+
const callbackPort = await listenOnRandomPort(callbackHttpServer);
|
|
273
|
+
const redirectUri = `http://127.0.0.1:${String(callbackPort)}/oauth/callback`;
|
|
274
|
+
try {
|
|
275
|
+
// Register client (or re-register if redirect_uri changed)
|
|
276
|
+
if (!this.stored.clientInfo?.redirect_uris?.includes(redirectUri)) {
|
|
277
|
+
this.stored.clientInfo = await registerClient(this.authServerUrl, this.authServerMetadata, redirectUri);
|
|
278
|
+
}
|
|
279
|
+
// PKCE
|
|
280
|
+
const codeVerifier = generateCodeVerifier();
|
|
281
|
+
const codeChallenge = generateCodeChallenge(codeVerifier);
|
|
282
|
+
// Build authorization URL
|
|
283
|
+
const authEndpoint = this.authServerMetadata?.authorization_endpoint
|
|
284
|
+
?? new URL('/authorize', this.authServerUrl).toString();
|
|
285
|
+
const authUrl = new URL(authEndpoint);
|
|
286
|
+
authUrl.searchParams.set('response_type', 'code');
|
|
287
|
+
authUrl.searchParams.set('client_id', this.stored.clientInfo.client_id);
|
|
288
|
+
authUrl.searchParams.set('redirect_uri', redirectUri);
|
|
289
|
+
authUrl.searchParams.set('code_challenge', codeChallenge);
|
|
290
|
+
authUrl.searchParams.set('code_challenge_method', 'S256');
|
|
291
|
+
if (scope)
|
|
292
|
+
authUrl.searchParams.set('scope', scope);
|
|
293
|
+
// Open browser and wait for callback
|
|
294
|
+
process.stderr.write(`Opening browser for authorization...\n`);
|
|
295
|
+
openBrowser(authUrl.toString());
|
|
296
|
+
const code = await waitForOAuthCallback(callbackHttpServer, callbackPort, this.authTimeout);
|
|
297
|
+
// Exchange code for tokens
|
|
298
|
+
const tokens = await exchangeCodeForTokens(this.authServerUrl, this.authServerMetadata, this.stored.clientInfo, code, codeVerifier, redirectUri);
|
|
299
|
+
this.stored.tokens = tokens;
|
|
300
|
+
this.stored.tokenSavedAt = new Date().toISOString();
|
|
301
|
+
await saveStoredAuth(this.hash, this.stored);
|
|
302
|
+
return tokens.access_token;
|
|
303
|
+
}
|
|
304
|
+
finally {
|
|
305
|
+
callbackHttpServer.close();
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
async discover() {
|
|
309
|
+
if (this.authServerUrl)
|
|
310
|
+
return;
|
|
311
|
+
const resourceMeta = await discoverProtectedResource(this.serverUrl, this.headers);
|
|
312
|
+
const firstServer = resourceMeta?.authorization_servers?.[0];
|
|
313
|
+
this.authServerUrl = firstServer ?? new URL('/', this.serverUrl).toString();
|
|
314
|
+
this.authServerMetadata = await discoverAuthServer(this.authServerUrl);
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
//# sourceMappingURL=oauth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/oauth.ts"],"names":[],"mappings":"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"}
|
package/dist/src/pm2.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { spawn } from 'child_process';
|
|
2
|
-
import type {
|
|
2
|
+
import type { NamedManagedServer, StartResult, ServerStatus } from './types.js';
|
|
3
3
|
export type ProgressCallback = (event: ProgressEvent) => void;
|
|
4
4
|
export interface ProgressEvent {
|
|
5
5
|
type: 'starting' | 'started' | 'recreating' | 'recreated' | 'up_to_date' | 'stopping' | 'stopped' | 'port_skipped' | 'checking_ports';
|
|
@@ -9,7 +9,7 @@ export interface ProgressEvent {
|
|
|
9
9
|
current?: number;
|
|
10
10
|
total?: number;
|
|
11
11
|
}
|
|
12
|
-
export declare function startServers(servers:
|
|
12
|
+
export declare function startServers(servers: NamedManagedServer[], prefix: string, portBase: number, onProgress?: ProgressCallback): Promise<StartResult[]>;
|
|
13
13
|
export declare function stopServers(serverNames: string[], prefix: string, onProgress?: ProgressCallback): Promise<void>;
|
|
14
14
|
export declare function stopAllManagedServers(): Promise<number>;
|
|
15
15
|
/**
|
package/dist/src/pm2.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pm2.d.ts","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAY,MAAM,eAAe,CAAC;AAGhD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"pm2.d.ts","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAY,MAAM,eAAe,CAAC;AAGhD,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEhF,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,gBAAgB,CAAC;IACtI,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAsOD,wBAAgB,YAAY,CAC1B,OAAO,EAAE,kBAAkB,EAAE,EAC7B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,WAAW,EAAE,CAAC,CAoKxB;AAED,wBAAgB,WAAW,CACzB,WAAW,EAAE,MAAM,EAAE,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAgBvD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BnB;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMnF;AAED,wBAAgB,SAAS,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAcnD;AAED,wBAAgB,UAAU,CACxB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,GACpE,UAAU,CAAC,OAAO,KAAK,CAAC,CAY1B"}
|
package/dist/src/pm2.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import pm2 from 'pm2';
|
|
2
2
|
import { basename } from 'path';
|
|
3
3
|
import { spawn, execSync } from 'child_process';
|
|
4
|
-
import {
|
|
4
|
+
import { buildGatewayCmdForServer } from './command.js';
|
|
5
5
|
import { isPortAvailable } from './config.js';
|
|
6
6
|
// Environment variable marker to identify mcp-compose managed processes
|
|
7
7
|
const MCP_COMPOSE_MARKER = '__MCP_COMPOSE__';
|
|
@@ -214,23 +214,22 @@ function killSurvivorPids(pids) {
|
|
|
214
214
|
export function startServers(servers, prefix, portBase, onProgress) {
|
|
215
215
|
return withPm2(async () => {
|
|
216
216
|
const total = servers.length;
|
|
217
|
-
const supergatewayBin = resolveSupergatewayBin();
|
|
218
217
|
const serverStates = [];
|
|
219
218
|
for (const serverEntry of servers) {
|
|
220
|
-
const { name,
|
|
219
|
+
const { name, ...serverConfig } = serverEntry;
|
|
221
220
|
const processName = getProcessName(name, prefix);
|
|
222
221
|
const existingProcess = await getRunningProcess(processName);
|
|
223
222
|
if (existingProcess) {
|
|
224
223
|
const existingPort = extractPortFromProcess(existingProcess);
|
|
225
224
|
if (existingPort !== null) {
|
|
226
225
|
// Compare config using the existing port (not the newly suggested one)
|
|
227
|
-
const cmdForComparison =
|
|
228
|
-
...
|
|
226
|
+
const cmdForComparison = buildGatewayCmdForServer({
|
|
227
|
+
...serverConfig,
|
|
229
228
|
internalPort: existingPort,
|
|
230
|
-
|
|
231
|
-
}
|
|
229
|
+
});
|
|
230
|
+
const serverEnv = serverConfig.type === 'stdio' ? serverConfig.env : {};
|
|
232
231
|
const envWithMarker = {
|
|
233
|
-
...
|
|
232
|
+
...serverEnv,
|
|
234
233
|
[MCP_COMPOSE_MARKER]: name,
|
|
235
234
|
};
|
|
236
235
|
if (isProcessConfigMatch(existingProcess, cmdForComparison.script, cmdForComparison.args, envWithMarker)) {
|
|
@@ -281,7 +280,7 @@ export function startServers(servers, prefix, portBase, onProgress) {
|
|
|
281
280
|
let current = 0;
|
|
282
281
|
for (const state of serverStates) {
|
|
283
282
|
current++;
|
|
284
|
-
const { name,
|
|
283
|
+
const { name, ...serverConfig } = state.server;
|
|
285
284
|
const processName = getProcessName(name, prefix);
|
|
286
285
|
if (state.upToDate) {
|
|
287
286
|
onProgress?.({
|
|
@@ -305,13 +304,13 @@ export function startServers(servers, prefix, portBase, onProgress) {
|
|
|
305
304
|
const descendantPids = collectDescendantPids(state.existingProcess);
|
|
306
305
|
await pm2Delete(processName);
|
|
307
306
|
killSurvivorPids(descendantPids);
|
|
308
|
-
const cmd =
|
|
309
|
-
...
|
|
307
|
+
const cmd = buildGatewayCmdForServer({
|
|
308
|
+
...serverConfig,
|
|
310
309
|
internalPort: state.port,
|
|
311
|
-
|
|
312
|
-
}
|
|
310
|
+
});
|
|
311
|
+
const serverEnv = serverConfig.type === 'stdio' ? serverConfig.env : {};
|
|
313
312
|
const envWithMarker = {
|
|
314
|
-
...
|
|
313
|
+
...serverEnv,
|
|
315
314
|
[MCP_COMPOSE_MARKER]: name,
|
|
316
315
|
};
|
|
317
316
|
const startOptions = {
|
|
@@ -321,11 +320,11 @@ export function startServers(servers, prefix, portBase, onProgress) {
|
|
|
321
320
|
interpreter: 'none',
|
|
322
321
|
env: envWithMarker,
|
|
323
322
|
autorestart: true,
|
|
324
|
-
max_restarts: resourceLimits.maxRestarts ?? 10,
|
|
325
|
-
restart_delay: resourceLimits.restartDelay ?? 1000,
|
|
323
|
+
max_restarts: serverConfig.resourceLimits.maxRestarts ?? 10,
|
|
324
|
+
restart_delay: serverConfig.resourceLimits.restartDelay ?? 1000,
|
|
326
325
|
};
|
|
327
|
-
if (resourceLimits.maxMemory !== undefined) {
|
|
328
|
-
const maxMemory = parseMemoryLimit(resourceLimits.maxMemory);
|
|
326
|
+
if (serverConfig.resourceLimits.maxMemory !== undefined) {
|
|
327
|
+
const maxMemory = parseMemoryLimit(serverConfig.resourceLimits.maxMemory);
|
|
329
328
|
if (maxMemory) {
|
|
330
329
|
startOptions.max_memory_restart = maxMemory;
|
|
331
330
|
}
|
package/dist/src/pm2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pm2.js","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pm2.js","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"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"}
|
package/dist/src/sync.js
CHANGED
|
@@ -3,7 +3,7 @@ function generateClaudeConfig(config) {
|
|
|
3
3
|
const { mcpServers } = config;
|
|
4
4
|
const claudeConfig = {};
|
|
5
5
|
for (const [name, server] of Object.entries(mcpServers)) {
|
|
6
|
-
if (server.type === 'stdio') {
|
|
6
|
+
if (server.type === 'stdio' || server.type === 'proxy') {
|
|
7
7
|
claudeConfig[name] = {
|
|
8
8
|
type: 'http',
|
|
9
9
|
url: `http://localhost:${String(server.internalPort)}/mcp`,
|
package/dist/src/sync.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAS7D,SAAS,oBAAoB,CAC3B,MAAwB;IAExB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IAC9B,MAAM,YAAY,GAAuC,EAAE,CAAC;IAE5D,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -23,6 +23,10 @@ export interface RawRemoteServer {
|
|
|
23
23
|
type: 'sse' | 'http';
|
|
24
24
|
url: string;
|
|
25
25
|
disabled?: boolean;
|
|
26
|
+
proxy?: boolean;
|
|
27
|
+
headers?: Record<string, string>;
|
|
28
|
+
logLevel?: LogLevel;
|
|
29
|
+
resourceLimits?: ResourceLimits;
|
|
26
30
|
}
|
|
27
31
|
export type RawServerConfig = RawStdioServer | RawRemoteServer;
|
|
28
32
|
export interface RawConfig {
|
|
@@ -43,7 +47,16 @@ export interface RemoteServer {
|
|
|
43
47
|
type: 'sse' | 'http';
|
|
44
48
|
url: string;
|
|
45
49
|
}
|
|
46
|
-
export
|
|
50
|
+
export interface ProxyServer {
|
|
51
|
+
type: 'proxy';
|
|
52
|
+
url: string;
|
|
53
|
+
transport: 'http' | 'sse';
|
|
54
|
+
headers: Record<string, string>;
|
|
55
|
+
internalPort: number;
|
|
56
|
+
logLevel: LogLevel;
|
|
57
|
+
resourceLimits: ResourceLimits;
|
|
58
|
+
}
|
|
59
|
+
export type NormalizedServer = StdioServer | RemoteServer | ProxyServer;
|
|
47
60
|
export interface NormalizedConfig {
|
|
48
61
|
settings: Settings;
|
|
49
62
|
mcpServers: Record<string, NormalizedServer>;
|
|
@@ -52,7 +65,11 @@ export interface NormalizedConfig {
|
|
|
52
65
|
export interface NamedStdioServer extends StdioServer {
|
|
53
66
|
name: string;
|
|
54
67
|
}
|
|
55
|
-
export interface
|
|
68
|
+
export interface NamedProxyServer extends ProxyServer {
|
|
69
|
+
name: string;
|
|
70
|
+
}
|
|
71
|
+
export type NamedManagedServer = NamedStdioServer | NamedProxyServer;
|
|
72
|
+
export interface GatewayCommand {
|
|
56
73
|
script: string;
|
|
57
74
|
args: string[];
|
|
58
75
|
}
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,YAAY,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,YAAY,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAkPD,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,gBAAgB,CAyBhE;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CAIxE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAO9E"}
|