@1mcp/agent 0.16.0 → 0.18.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 +103 -11
- package/build/auth/sdkOAuthClientProvider.d.ts.map +1 -1
- package/build/auth/sdkOAuthClientProvider.js +1 -1
- package/build/auth/sdkOAuthClientProvider.js.map +1 -1
- package/build/commands/app/backups.d.ts +17 -0
- package/build/commands/app/backups.d.ts.map +1 -0
- package/build/commands/app/backups.js +162 -0
- package/build/commands/app/backups.js.map +1 -0
- package/build/commands/app/consolidate.d.ts +21 -0
- package/build/commands/app/consolidate.d.ts.map +1 -0
- package/build/commands/app/consolidate.js +383 -0
- package/build/commands/app/consolidate.js.map +1 -0
- package/build/commands/app/discover.d.ts +16 -0
- package/build/commands/app/discover.d.ts.map +1 -0
- package/build/commands/app/discover.js +79 -0
- package/build/commands/app/discover.js.map +1 -0
- package/build/commands/app/index.d.ts +12 -0
- package/build/commands/app/index.d.ts.map +1 -0
- package/build/commands/app/index.js +274 -0
- package/build/commands/app/index.js.map +1 -0
- package/build/commands/app/list.d.ts +16 -0
- package/build/commands/app/list.d.ts.map +1 -0
- package/build/commands/app/list.js +95 -0
- package/build/commands/app/list.js.map +1 -0
- package/build/commands/app/restore.d.ts +21 -0
- package/build/commands/app/restore.d.ts.map +1 -0
- package/build/commands/app/restore.js +265 -0
- package/build/commands/app/restore.js.map +1 -0
- package/build/commands/app/status.d.ts +16 -0
- package/build/commands/app/status.d.ts.map +1 -0
- package/build/commands/app/status.js +224 -0
- package/build/commands/app/status.js.map +1 -0
- package/build/commands/mcp/add.d.ts +19 -0
- package/build/commands/mcp/add.d.ts.map +1 -0
- package/build/commands/mcp/add.js +135 -0
- package/build/commands/mcp/add.js.map +1 -0
- package/build/commands/mcp/enable.d.ts +13 -0
- package/build/commands/mcp/enable.d.ts.map +1 -0
- package/build/commands/mcp/enable.js +100 -0
- package/build/commands/mcp/enable.js.map +1 -0
- package/build/commands/mcp/index.d.ts +12 -0
- package/build/commands/mcp/index.d.ts.map +1 -0
- package/build/commands/mcp/index.js +351 -0
- package/build/commands/mcp/index.js.map +1 -0
- package/build/commands/mcp/list.d.ts +11 -0
- package/build/commands/mcp/list.d.ts.map +1 -0
- package/build/commands/mcp/list.js +144 -0
- package/build/commands/mcp/list.js.map +1 -0
- package/build/commands/mcp/remove.d.ts +10 -0
- package/build/commands/mcp/remove.d.ts.map +1 -0
- package/build/commands/mcp/remove.js +89 -0
- package/build/commands/mcp/remove.js.map +1 -0
- package/build/commands/mcp/status.d.ts +10 -0
- package/build/commands/mcp/status.d.ts.map +1 -0
- package/build/commands/mcp/status.js +243 -0
- package/build/commands/mcp/status.js.map +1 -0
- package/build/commands/mcp/update.d.ts +18 -0
- package/build/commands/mcp/update.d.ts.map +1 -0
- package/build/commands/mcp/update.js +157 -0
- package/build/commands/mcp/update.js.map +1 -0
- package/build/commands/mcp/utils/configUtils.d.ts +64 -0
- package/build/commands/mcp/utils/configUtils.d.ts.map +1 -0
- package/build/commands/mcp/utils/configUtils.js +266 -0
- package/build/commands/mcp/utils/configUtils.js.map +1 -0
- package/build/commands/mcp/utils/doubleHyphenParser.d.ts +32 -0
- package/build/commands/mcp/utils/doubleHyphenParser.d.ts.map +1 -0
- package/build/commands/mcp/utils/doubleHyphenParser.js +61 -0
- package/build/commands/mcp/utils/doubleHyphenParser.js.map +1 -0
- package/build/commands/mcp/utils/validation.d.ts +33 -0
- package/build/commands/mcp/utils/validation.d.ts.map +1 -0
- package/build/commands/mcp/utils/validation.js +235 -0
- package/build/commands/mcp/utils/validation.js.map +1 -0
- package/build/constants.d.ts +11 -2
- package/build/constants.d.ts.map +1 -1
- package/build/constants.js +18 -5
- package/build/constants.js.map +1 -1
- package/build/core/capabilities/asyncLoadingOrchestrator.d.ts +96 -0
- package/build/core/capabilities/asyncLoadingOrchestrator.d.ts.map +1 -0
- package/build/core/capabilities/asyncLoadingOrchestrator.js +256 -0
- package/build/core/capabilities/asyncLoadingOrchestrator.js.map +1 -0
- package/build/core/capabilities/capabilityAggregator.d.ts +114 -0
- package/build/core/capabilities/capabilityAggregator.d.ts.map +1 -0
- package/build/core/capabilities/capabilityAggregator.js +234 -0
- package/build/core/capabilities/capabilityAggregator.js.map +1 -0
- package/build/core/client/clientManager.d.ts +29 -0
- package/build/core/client/clientManager.d.ts.map +1 -1
- package/build/core/client/clientManager.js +151 -2
- package/build/core/client/clientManager.js.map +1 -1
- package/build/core/loading/loadingStateTracker.d.ts +128 -0
- package/build/core/loading/loadingStateTracker.d.ts.map +1 -0
- package/build/core/loading/loadingStateTracker.js +211 -0
- package/build/core/loading/loadingStateTracker.js.map +1 -0
- package/build/core/loading/mcpLoadingManager.d.ts +156 -0
- package/build/core/loading/mcpLoadingManager.d.ts.map +1 -0
- package/build/core/loading/mcpLoadingManager.js +352 -0
- package/build/core/loading/mcpLoadingManager.js.map +1 -0
- package/build/core/notifications/notificationManager.d.ts +111 -0
- package/build/core/notifications/notificationManager.d.ts.map +1 -0
- package/build/core/notifications/notificationManager.js +232 -0
- package/build/core/notifications/notificationManager.js.map +1 -0
- package/build/core/server/agentConfig.d.ts +50 -0
- package/build/core/server/agentConfig.d.ts.map +1 -1
- package/build/core/server/agentConfig.js +68 -1
- package/build/core/server/agentConfig.js.map +1 -1
- package/build/core/server/serverManager.d.ts +1 -0
- package/build/core/server/serverManager.d.ts.map +1 -1
- package/build/core/server/serverManager.js +3 -0
- package/build/core/server/serverManager.js.map +1 -1
- package/build/core/types/transport.d.ts +2 -2
- package/build/index.js +133 -34
- package/build/index.js.map +1 -1
- package/build/logger/logger.d.ts +9 -0
- package/build/logger/logger.d.ts.map +1 -1
- package/build/logger/logger.js +49 -0
- package/build/logger/logger.js.map +1 -1
- package/build/logger/secureLogger.d.ts +22 -0
- package/build/logger/secureLogger.d.ts.map +1 -0
- package/build/logger/secureLogger.js +120 -0
- package/build/logger/secureLogger.js.map +1 -0
- package/build/server.d.ts +23 -2
- package/build/server.d.ts.map +1 -1
- package/build/server.js +83 -10
- package/build/server.js.map +1 -1
- package/build/services/configReloadService.d.ts +8 -0
- package/build/services/configReloadService.d.ts.map +1 -1
- package/build/services/configReloadService.js +68 -0
- package/build/services/configReloadService.js.map +1 -1
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.d.ts +79 -0
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.d.ts.map +1 -0
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.js +306 -0
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.js.map +1 -0
- package/build/transport/http/routes/healthRoutes.d.ts +2 -1
- package/build/transport/http/routes/healthRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/healthRoutes.js +170 -1
- package/build/transport/http/routes/healthRoutes.js.map +1 -1
- package/build/transport/http/routes/sseRoutes.d.ts +2 -1
- package/build/transport/http/routes/sseRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/sseRoutes.js +13 -1
- package/build/transport/http/routes/sseRoutes.js.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.d.ts +2 -1
- package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.js +13 -1
- package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
- package/build/transport/http/server.d.ts +7 -1
- package/build/transport/http/server.d.ts.map +1 -1
- package/build/transport/http/server.js +15 -4
- package/build/transport/http/server.js.map +1 -1
- package/build/transport/transportFactory.d.ts +4 -0
- package/build/transport/transportFactory.d.ts.map +1 -1
- package/build/transport/transportFactory.js +1 -1
- package/build/transport/transportFactory.js.map +1 -1
- package/build/utils/appDiscovery.d.ts +75 -0
- package/build/utils/appDiscovery.d.ts.map +1 -0
- package/build/utils/appDiscovery.js +358 -0
- package/build/utils/appDiscovery.js.map +1 -0
- package/build/utils/appPresets.d.ts +88 -0
- package/build/utils/appPresets.d.ts.map +1 -0
- package/build/utils/appPresets.js +430 -0
- package/build/utils/appPresets.js.map +1 -0
- package/build/utils/backupManager.d.ts +61 -0
- package/build/utils/backupManager.d.ts.map +1 -0
- package/build/utils/backupManager.js +314 -0
- package/build/utils/backupManager.js.map +1 -0
- package/build/utils/urlDetection.d.ts +35 -0
- package/build/utils/urlDetection.d.ts.map +1 -0
- package/build/utils/urlDetection.js +115 -0
- package/build/utils/urlDetection.js.map +1 -0
- package/build/utils/validationHelpers.d.ts +62 -0
- package/build/utils/validationHelpers.d.ts.map +1 -0
- package/build/utils/validationHelpers.js +252 -0
- package/build/utils/validationHelpers.js.map +1 -0
- package/package.json +9 -2
package/build/index.js
CHANGED
|
@@ -4,18 +4,17 @@ import yargs from 'yargs';
|
|
|
4
4
|
import { hideBin } from 'yargs/helpers';
|
|
5
5
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
6
6
|
import { setupServer } from './server.js';
|
|
7
|
-
import logger, {
|
|
7
|
+
import logger, { configureLogger } from './logger/logger.js';
|
|
8
8
|
import configReloadService from './services/configReloadService.js';
|
|
9
9
|
import { McpConfigManager } from './config/mcpConfigManager.js';
|
|
10
10
|
import { ExpressServer } from './transport/http/server.js';
|
|
11
11
|
import { AgentConfigManager } from './core/server/agentConfig.js';
|
|
12
12
|
import { PORT, HOST } from './constants.js';
|
|
13
13
|
import { displayLogo } from './utils/logo.js';
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
.options({
|
|
14
|
+
import { setupAppCommands } from './commands/app/index.js';
|
|
15
|
+
import { setupMcpCommands } from './commands/mcp/index.js';
|
|
16
|
+
// Define server options that should only be available for serve commands
|
|
17
|
+
const serverOptions = {
|
|
19
18
|
transport: {
|
|
20
19
|
alias: 't',
|
|
21
20
|
describe: 'Transport type to use (stdio or http, sse is deprecated)',
|
|
@@ -110,18 +109,58 @@ const argv = yargs(hideBin(process.argv))
|
|
|
110
109
|
choices: ['full', 'basic', 'minimal'],
|
|
111
110
|
default: 'minimal',
|
|
112
111
|
},
|
|
112
|
+
'enable-async-loading': {
|
|
113
|
+
describe: 'Enable asynchronous MCP server loading with listChanged notifications',
|
|
114
|
+
type: 'boolean',
|
|
115
|
+
default: false,
|
|
116
|
+
},
|
|
117
|
+
'log-level': {
|
|
118
|
+
describe: 'Set the log level (debug, info, warn, error)',
|
|
119
|
+
type: 'string',
|
|
120
|
+
choices: ['debug', 'info', 'warn', 'error'],
|
|
121
|
+
default: undefined,
|
|
122
|
+
},
|
|
123
|
+
'log-file': {
|
|
124
|
+
describe: 'Write logs to a file in addition to console (disables console logging only for stdio transport)',
|
|
125
|
+
type: 'string',
|
|
126
|
+
default: undefined,
|
|
127
|
+
},
|
|
128
|
+
};
|
|
129
|
+
// Parse command line arguments and set up commands
|
|
130
|
+
let yargsInstance = yargs(hideBin(process.argv));
|
|
131
|
+
// Set up base yargs with serve commands having server options
|
|
132
|
+
yargsInstance = yargsInstance
|
|
133
|
+
.usage('Usage: $0 [command] [options]')
|
|
134
|
+
.command('$0', 'Start the 1mcp server (default)', serverOptions, () => {
|
|
135
|
+
// Default command handler - will be processed by main()
|
|
113
136
|
})
|
|
137
|
+
.command('serve', 'Start the 1mcp server', serverOptions, () => {
|
|
138
|
+
// Serve command handler - will be processed by main()
|
|
139
|
+
})
|
|
140
|
+
.env('ONE_MCP') // Enable environment variable parsing with ONE_MCP prefix
|
|
114
141
|
.help()
|
|
115
|
-
.alias('help', 'h')
|
|
116
|
-
|
|
142
|
+
.alias('help', 'h');
|
|
143
|
+
// Register command groups (these will have clean option lists without server options)
|
|
144
|
+
yargsInstance = setupAppCommands(yargsInstance);
|
|
145
|
+
yargsInstance = setupMcpCommands(yargsInstance);
|
|
117
146
|
/**
|
|
118
147
|
* Set up graceful shutdown handling
|
|
119
148
|
*/
|
|
120
|
-
function setupGracefulShutdown(serverManager, expressServer) {
|
|
149
|
+
function setupGracefulShutdown(serverManager, loadingManager, expressServer) {
|
|
121
150
|
const shutdown = async () => {
|
|
122
151
|
logger.info('Shutting down server...');
|
|
123
152
|
// Stop the configuration reload service
|
|
124
153
|
configReloadService.stop();
|
|
154
|
+
// Shutdown loading manager if it exists
|
|
155
|
+
if (loadingManager && typeof loadingManager.shutdown === 'function') {
|
|
156
|
+
try {
|
|
157
|
+
loadingManager.shutdown();
|
|
158
|
+
logger.info('Loading manager shutdown complete');
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
logger.error(`Error shutting down loading manager: ${error}`);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
125
164
|
// Shutdown ExpressServer if it exists
|
|
126
165
|
if (expressServer) {
|
|
127
166
|
try {
|
|
@@ -150,40 +189,80 @@ function setupGracefulShutdown(serverManager, expressServer) {
|
|
|
150
189
|
process.on('SIGTERM', shutdown);
|
|
151
190
|
process.on('SIGHUP', shutdown);
|
|
152
191
|
}
|
|
192
|
+
/**
|
|
193
|
+
* Check if the command is a CLI command that should not start the server
|
|
194
|
+
*/
|
|
195
|
+
function isCliCommand(argv) {
|
|
196
|
+
return argv.length >= 3 && (argv[2] === 'app' || argv[2] === 'mcp');
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Check if the command is the serve command (or should default to serve)
|
|
200
|
+
*/
|
|
201
|
+
function isServeCommand(argv) {
|
|
202
|
+
// If no command specified (length < 3) or first arg is not a known command, default to serve
|
|
203
|
+
if (argv.length < 3)
|
|
204
|
+
return true;
|
|
205
|
+
// If explicitly called serve
|
|
206
|
+
if (argv[2] === 'serve')
|
|
207
|
+
return true;
|
|
208
|
+
// If the third argument starts with '-', it's likely a flag, so default to serve
|
|
209
|
+
if (argv[2].startsWith('-'))
|
|
210
|
+
return true;
|
|
211
|
+
// Otherwise it's some other command
|
|
212
|
+
return false;
|
|
213
|
+
}
|
|
153
214
|
/**
|
|
154
215
|
* Start the server using the specified transport.
|
|
155
216
|
*/
|
|
156
217
|
async function main() {
|
|
218
|
+
// Check if this is a CLI command - if so, let yargs handle it and exit
|
|
219
|
+
if (isCliCommand(process.argv)) {
|
|
220
|
+
await yargsInstance.parse();
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
// Check if this is a serve command or should default to serve
|
|
224
|
+
if (!isServeCommand(process.argv)) {
|
|
225
|
+
// Let yargs handle other commands
|
|
226
|
+
await yargsInstance.parse();
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
229
|
+
// Parse arguments asynchronously first
|
|
230
|
+
const parsedArgv = (await yargsInstance.parse());
|
|
157
231
|
try {
|
|
158
|
-
|
|
159
|
-
|
|
232
|
+
// Configure logger with CLI options and transport awareness
|
|
233
|
+
configureLogger({
|
|
234
|
+
logLevel: parsedArgv['log-level'],
|
|
235
|
+
logFile: parsedArgv['log-file'],
|
|
236
|
+
transport: parsedArgv.transport,
|
|
237
|
+
});
|
|
238
|
+
if (parsedArgv.transport !== 'stdio' && !parsedArgv['log-file']) {
|
|
160
239
|
displayLogo();
|
|
161
240
|
}
|
|
162
|
-
McpConfigManager.getInstance(
|
|
241
|
+
McpConfigManager.getInstance(parsedArgv.config);
|
|
163
242
|
// Configure server settings from CLI arguments
|
|
164
243
|
const serverConfigManager = AgentConfigManager.getInstance();
|
|
165
244
|
// Handle backward compatibility for auth flag
|
|
166
|
-
const authEnabled =
|
|
167
|
-
const scopeValidationEnabled =
|
|
168
|
-
const enhancedSecurityEnabled =
|
|
245
|
+
const authEnabled = parsedArgv['enable-auth'] ?? parsedArgv['auth'] ?? false;
|
|
246
|
+
const scopeValidationEnabled = parsedArgv['enable-scope-validation'] ?? authEnabled;
|
|
247
|
+
const enhancedSecurityEnabled = parsedArgv['enable-enhanced-security'] ?? false;
|
|
169
248
|
// Handle trust proxy configuration (convert 'true'/'false' strings to boolean)
|
|
170
|
-
const trustProxyValue =
|
|
249
|
+
const trustProxyValue = parsedArgv['trust-proxy'];
|
|
171
250
|
const trustProxy = trustProxyValue === 'true' ? true : trustProxyValue === 'false' ? false : trustProxyValue;
|
|
172
251
|
serverConfigManager.updateConfig({
|
|
173
|
-
host:
|
|
174
|
-
port:
|
|
175
|
-
externalUrl:
|
|
252
|
+
host: parsedArgv.host,
|
|
253
|
+
port: parsedArgv.port,
|
|
254
|
+
externalUrl: parsedArgv['external-url'],
|
|
176
255
|
trustProxy,
|
|
177
256
|
auth: {
|
|
178
257
|
enabled: authEnabled,
|
|
179
|
-
sessionTtlMinutes:
|
|
180
|
-
sessionStoragePath:
|
|
258
|
+
sessionTtlMinutes: parsedArgv['session-ttl'],
|
|
259
|
+
sessionStoragePath: parsedArgv['session-storage-path'],
|
|
181
260
|
oauthCodeTtlMs: 60 * 1000, // 1 minute
|
|
182
|
-
oauthTokenTtlMs:
|
|
261
|
+
oauthTokenTtlMs: parsedArgv['session-ttl'] * 60 * 1000, // Convert minutes to milliseconds
|
|
183
262
|
},
|
|
184
263
|
rateLimit: {
|
|
185
|
-
windowMs:
|
|
186
|
-
max:
|
|
264
|
+
windowMs: parsedArgv['rate-limit-window'] * 60 * 1000, // Convert minutes to milliseconds
|
|
265
|
+
max: parsedArgv['rate-limit-max'],
|
|
187
266
|
},
|
|
188
267
|
features: {
|
|
189
268
|
auth: authEnabled,
|
|
@@ -191,26 +270,39 @@ async function main() {
|
|
|
191
270
|
enhancedSecurity: enhancedSecurityEnabled,
|
|
192
271
|
},
|
|
193
272
|
health: {
|
|
194
|
-
detailLevel:
|
|
273
|
+
detailLevel: parsedArgv['health-info-level'],
|
|
195
274
|
},
|
|
275
|
+
...(parsedArgv['enable-async-loading'] && {
|
|
276
|
+
asyncLoading: {
|
|
277
|
+
enabled: true,
|
|
278
|
+
},
|
|
279
|
+
}),
|
|
196
280
|
});
|
|
197
281
|
// Initialize server and get server manager with custom config path if provided
|
|
198
|
-
const serverManager = await setupServer();
|
|
282
|
+
const { serverManager, loadingManager, asyncOrchestrator } = await setupServer();
|
|
199
283
|
let expressServer;
|
|
200
|
-
switch (
|
|
284
|
+
switch (parsedArgv.transport) {
|
|
201
285
|
case 'stdio': {
|
|
202
286
|
// Use stdio transport
|
|
203
287
|
const transport = new StdioServerTransport();
|
|
204
288
|
// Parse and validate tags from CLI if provided
|
|
205
289
|
let tags;
|
|
206
|
-
if (
|
|
207
|
-
tags =
|
|
208
|
-
if (tags.length === 0) {
|
|
290
|
+
if (parsedArgv.tags) {
|
|
291
|
+
tags = parsedArgv.tags.split(',').filter((tag) => tag.trim().length > 0);
|
|
292
|
+
if (tags && tags.length === 0) {
|
|
209
293
|
logger.warn('No valid tags provided, ignoring tags parameter');
|
|
210
294
|
tags = undefined;
|
|
211
295
|
}
|
|
212
296
|
}
|
|
213
|
-
await serverManager.connectTransport(transport, 'stdio', { tags, enablePagination:
|
|
297
|
+
await serverManager.connectTransport(transport, 'stdio', { tags, enablePagination: parsedArgv.pagination });
|
|
298
|
+
// Initialize notifications for async loading if enabled
|
|
299
|
+
if (asyncOrchestrator) {
|
|
300
|
+
const inboundConnection = serverManager.getServer('stdio');
|
|
301
|
+
if (inboundConnection) {
|
|
302
|
+
asyncOrchestrator.initializeNotifications(inboundConnection);
|
|
303
|
+
logger.info('Async loading notifications initialized for stdio transport');
|
|
304
|
+
}
|
|
305
|
+
}
|
|
214
306
|
logger.info('Server started with stdio transport');
|
|
215
307
|
break;
|
|
216
308
|
}
|
|
@@ -220,16 +312,23 @@ async function main() {
|
|
|
220
312
|
// eslint-disable-next-line no-fallthrough
|
|
221
313
|
case 'http': {
|
|
222
314
|
// Use HTTP/SSE transport
|
|
223
|
-
expressServer = new ExpressServer(serverManager);
|
|
315
|
+
expressServer = new ExpressServer(serverManager, loadingManager, asyncOrchestrator);
|
|
224
316
|
expressServer.start();
|
|
225
317
|
break;
|
|
226
318
|
}
|
|
227
319
|
default:
|
|
228
|
-
logger.error(`Invalid transport: ${
|
|
320
|
+
logger.error(`Invalid transport: ${parsedArgv.transport}`);
|
|
229
321
|
process.exit(1);
|
|
230
322
|
}
|
|
231
323
|
// Set up graceful shutdown handling
|
|
232
|
-
setupGracefulShutdown(serverManager, expressServer);
|
|
324
|
+
setupGracefulShutdown(serverManager, loadingManager, expressServer);
|
|
325
|
+
// Log MCP loading progress (non-blocking)
|
|
326
|
+
loadingManager.on('loading-progress', (summary) => {
|
|
327
|
+
logger.info(`MCP loading progress: ${summary.ready}/${summary.totalServers} servers ready (${summary.loading} loading, ${summary.failed} failed)`);
|
|
328
|
+
});
|
|
329
|
+
loadingManager.on('loading-complete', (summary) => {
|
|
330
|
+
logger.info(`MCP loading complete: ${summary.ready}/${summary.totalServers} servers ready (${summary.successRate.toFixed(1)}% success rate)`);
|
|
331
|
+
});
|
|
233
332
|
}
|
|
234
333
|
catch (error) {
|
|
235
334
|
logger.error('Server error:', error);
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,gCAAgC,CAAC;AAExC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,MAAM,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/build/logger/logger.d.ts
CHANGED
|
@@ -9,5 +9,14 @@ export declare function enableConsoleTransport(): void;
|
|
|
9
9
|
* @param mcpLevel The MCP log level to set
|
|
10
10
|
*/
|
|
11
11
|
export declare function setLogLevel(mcpLevel: string): void;
|
|
12
|
+
/**
|
|
13
|
+
* Configure logger with CLI options and transport awareness
|
|
14
|
+
* @param options Configuration options for the logger
|
|
15
|
+
*/
|
|
16
|
+
export declare function configureLogger(options: {
|
|
17
|
+
logLevel?: string;
|
|
18
|
+
logFile?: string;
|
|
19
|
+
transport?: string;
|
|
20
|
+
}): void;
|
|
12
21
|
export default logger;
|
|
13
22
|
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAkC9B,QAAA,MAAM,MAAM,gBAYV,CAAC;AAEH;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAI7C;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CASlD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA0D1G;AAED,eAAe,MAAM,CAAC"}
|
package/build/logger/logger.js
CHANGED
|
@@ -4,6 +4,7 @@ const MCP_TO_WINSTON_LEVEL = {
|
|
|
4
4
|
debug: 'debug',
|
|
5
5
|
info: 'info',
|
|
6
6
|
notice: 'info',
|
|
7
|
+
warn: 'warn', // Support both 'warn' and 'warning' for user convenience
|
|
7
8
|
warning: 'warn',
|
|
8
9
|
error: 'error',
|
|
9
10
|
critical: 'error',
|
|
@@ -55,5 +56,53 @@ export function setLogLevel(mcpLevel) {
|
|
|
55
56
|
transport.level = winstonLevel;
|
|
56
57
|
});
|
|
57
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Configure logger with CLI options and transport awareness
|
|
61
|
+
* @param options Configuration options for the logger
|
|
62
|
+
*/
|
|
63
|
+
export function configureLogger(options) {
|
|
64
|
+
// Determine log level priority: CLI > ONE_MCP_LOG_LEVEL > LOG_LEVEL (deprecated)
|
|
65
|
+
let logLevel = options.logLevel;
|
|
66
|
+
if (!logLevel) {
|
|
67
|
+
logLevel = process.env.ONE_MCP_LOG_LEVEL;
|
|
68
|
+
}
|
|
69
|
+
if (!logLevel) {
|
|
70
|
+
logLevel = process.env.LOG_LEVEL;
|
|
71
|
+
if (logLevel) {
|
|
72
|
+
logger.warn('LOG_LEVEL environment variable is deprecated. Please use ONE_MCP_LOG_LEVEL or --log-level CLI option instead.');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
logLevel = logLevel || 'info';
|
|
76
|
+
// Convert MCP log level to Winston log level
|
|
77
|
+
const winstonLevel = MCP_TO_WINSTON_LEVEL[logLevel] || 'info';
|
|
78
|
+
// Clear existing transports
|
|
79
|
+
logger.clear();
|
|
80
|
+
// Set logger level
|
|
81
|
+
logger.level = winstonLevel;
|
|
82
|
+
// Configure transports based on options
|
|
83
|
+
if (options.logFile) {
|
|
84
|
+
// Add file transport
|
|
85
|
+
logger.add(new winston.transports.File({
|
|
86
|
+
filename: options.logFile,
|
|
87
|
+
format: customFormat,
|
|
88
|
+
level: winstonLevel,
|
|
89
|
+
}));
|
|
90
|
+
// Add console transport except for stdio transport
|
|
91
|
+
if (options.transport !== 'stdio') {
|
|
92
|
+
logger.add(new winston.transports.Console({
|
|
93
|
+
format: consoleFormat,
|
|
94
|
+
level: winstonLevel,
|
|
95
|
+
}));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
// Add console transport (default behavior)
|
|
100
|
+
logger.add(new winston.transports.Console({
|
|
101
|
+
format: consoleFormat,
|
|
102
|
+
level: winstonLevel,
|
|
103
|
+
silent: false,
|
|
104
|
+
}));
|
|
105
|
+
}
|
|
106
|
+
}
|
|
58
107
|
export default logger;
|
|
59
108
|
//# sourceMappingURL=logger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sanitize data before logging - handles all data types
|
|
3
|
+
*/
|
|
4
|
+
export declare function sanitizeForLogging(data: any): any;
|
|
5
|
+
/**
|
|
6
|
+
* Safe logger that automatically sanitizes sensitive data
|
|
7
|
+
*/
|
|
8
|
+
export declare const secureLogger: {
|
|
9
|
+
debug: (message: string, data?: any) => void;
|
|
10
|
+
info: (message: string, data?: any) => void;
|
|
11
|
+
warn: (message: string, data?: any) => void;
|
|
12
|
+
error: (message: string, data?: any) => void;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Utility function to redact OAuth server details from lists
|
|
16
|
+
*/
|
|
17
|
+
export declare function sanitizeOAuthServerList(servers: string[]): string[];
|
|
18
|
+
/**
|
|
19
|
+
* Utility function to create safe error messages that don't expose sensitive data
|
|
20
|
+
*/
|
|
21
|
+
export declare function createSafeErrorMessage(error: string): string;
|
|
22
|
+
//# sourceMappingURL=secureLogger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secureLogger.d.ts","sourceRoot":"","sources":["../../src/logger/secureLogger.ts"],"names":[],"mappings":"AAmFA;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,CAMjD;AAgBD;;GAEG;AACH,eAAO,MAAM,YAAY;qBAbN,MAAM,SAAS,GAAG;oBAAlB,MAAM,SAAS,GAAG;oBAAlB,MAAM,SAAS,GAAG;qBAAlB,MAAM,SAAS,GAAG;CAkBpC,CAAC;AAEF;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAMnE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAI5D"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import logger from './logger.js';
|
|
2
|
+
/**
|
|
3
|
+
* Consolidated patterns for sensitive data detection
|
|
4
|
+
*/
|
|
5
|
+
const SENSITIVE_PATTERNS = [
|
|
6
|
+
// OAuth tokens and credentials (consolidates 6 patterns)
|
|
7
|
+
/(?:access_token|refresh_token|authorization_code|client_secret|client_id|bearer\s+[\w\-.~+/]+=*)/gi,
|
|
8
|
+
// URLs with sensitive parameters (consolidates 4 patterns)
|
|
9
|
+
/https?:\/\/[^\s]*[?&](?:[tT]oken|[cC]ode)=[^\s&]*/gi,
|
|
10
|
+
// Query parameters with sensitive data (consolidates 2 patterns)
|
|
11
|
+
/[?&](?:[tT]oken|[cC]ode)=[^\s&]*/gi,
|
|
12
|
+
// OAuth configuration patterns (consolidates 4 patterns)
|
|
13
|
+
/(?:scopes?|redirect_uris?|with\s+scope):\s*(?:\[[^\]]*\]|[^\s,}]+(?:\s+[^\s]+)*)/gi,
|
|
14
|
+
// Generic secret patterns (consolidates 5 patterns)
|
|
15
|
+
/(?:api[_-]?key|secret|password|passwd|auth[_-]?token)/gi,
|
|
16
|
+
];
|
|
17
|
+
/**
|
|
18
|
+
* Base patterns for sensitive key detection (case-insensitive)
|
|
19
|
+
*/
|
|
20
|
+
const SENSITIVE_KEY_PATTERNS = ['secret', 'token', 'password', 'passwd', 'key'];
|
|
21
|
+
/**
|
|
22
|
+
* Check if a key contains sensitive patterns
|
|
23
|
+
*/
|
|
24
|
+
function isSensitiveKey(key) {
|
|
25
|
+
const lowerKey = key.toLowerCase();
|
|
26
|
+
return SENSITIVE_KEY_PATTERNS.some((pattern) => lowerKey.includes(pattern));
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Unified sanitization function for all data types
|
|
30
|
+
*/
|
|
31
|
+
function sanitize(value, depth = 0) {
|
|
32
|
+
// Prevent infinite recursion
|
|
33
|
+
if (depth > 10) {
|
|
34
|
+
return '[MAX_DEPTH]';
|
|
35
|
+
}
|
|
36
|
+
// Handle primitives and null/undefined
|
|
37
|
+
if (value === null || value === undefined) {
|
|
38
|
+
return value;
|
|
39
|
+
}
|
|
40
|
+
if (typeof value === 'string') {
|
|
41
|
+
// Apply pattern-based redaction to strings
|
|
42
|
+
let sanitized = value;
|
|
43
|
+
for (const pattern of SENSITIVE_PATTERNS) {
|
|
44
|
+
sanitized = sanitized.replace(pattern, '[REDACTED]');
|
|
45
|
+
}
|
|
46
|
+
return sanitized;
|
|
47
|
+
}
|
|
48
|
+
if (typeof value === 'number' || typeof value === 'boolean') {
|
|
49
|
+
return value;
|
|
50
|
+
}
|
|
51
|
+
if (Array.isArray(value)) {
|
|
52
|
+
return value.map((item) => sanitize(item, depth + 1));
|
|
53
|
+
}
|
|
54
|
+
if (typeof value === 'object') {
|
|
55
|
+
const sanitized = {};
|
|
56
|
+
for (const [key, val] of Object.entries(value)) {
|
|
57
|
+
if (isSensitiveKey(key)) {
|
|
58
|
+
sanitized[key] = '[REDACTED]';
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
sanitized[key] = sanitize(val, depth + 1);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return sanitized;
|
|
65
|
+
}
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Sanitize data before logging - handles all data types
|
|
70
|
+
*/
|
|
71
|
+
export function sanitizeForLogging(data) {
|
|
72
|
+
try {
|
|
73
|
+
return sanitize(data);
|
|
74
|
+
}
|
|
75
|
+
catch (_error) {
|
|
76
|
+
return '[SANITIZATION_ERROR]';
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Create a secure logger method for a specific log level
|
|
81
|
+
*/
|
|
82
|
+
function createLoggerMethod(level) {
|
|
83
|
+
return (message, data) => {
|
|
84
|
+
const sanitizedMessage = typeof message === 'string' ? sanitize(message) : message;
|
|
85
|
+
if (data !== undefined) {
|
|
86
|
+
logger[level](sanitizedMessage, sanitizeForLogging(data));
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
logger[level](sanitizedMessage);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Safe logger that automatically sanitizes sensitive data
|
|
95
|
+
*/
|
|
96
|
+
export const secureLogger = {
|
|
97
|
+
debug: createLoggerMethod('debug'),
|
|
98
|
+
info: createLoggerMethod('info'),
|
|
99
|
+
warn: createLoggerMethod('warn'),
|
|
100
|
+
error: createLoggerMethod('error'),
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Utility function to redact OAuth server details from lists
|
|
104
|
+
*/
|
|
105
|
+
export function sanitizeOAuthServerList(servers) {
|
|
106
|
+
return servers.map((server) => {
|
|
107
|
+
// Only show server name without any sensitive configuration
|
|
108
|
+
const serverName = server.split('|')[0] || server; // Extract just the name part
|
|
109
|
+
return serverName.replace(/[?&](client_id|client_secret|token|code)=[^&]*/gi, '[OAUTH_REDACTED]');
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Utility function to create safe error messages that don't expose sensitive data
|
|
114
|
+
*/
|
|
115
|
+
export function createSafeErrorMessage(error) {
|
|
116
|
+
return sanitize(error)
|
|
117
|
+
.replace(/HTTP \d+.*$/gi, 'HTTP [STATUS_CODE]') // Remove potentially sensitive HTTP response details
|
|
118
|
+
.replace(/server.*responding/gi, 'server connectivity issue'); // Generic server error
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=secureLogger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secureLogger.js","sourceRoot":"","sources":["../../src/logger/secureLogger.ts"],"names":[],"mappings":"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"}
|
package/build/server.d.ts
CHANGED
|
@@ -1,7 +1,28 @@
|
|
|
1
1
|
import { ServerManager } from './core/server/serverManager.js';
|
|
2
|
+
import { McpLoadingManager } from './core/loading/mcpLoadingManager.js';
|
|
3
|
+
import { AsyncLoadingOrchestrator } from './core/capabilities/asyncLoadingOrchestrator.js';
|
|
4
|
+
/**
|
|
5
|
+
* Result of server setup including both sync and async components
|
|
6
|
+
*/
|
|
7
|
+
export interface ServerSetupResult {
|
|
8
|
+
/** Server manager ready for HTTP transport */
|
|
9
|
+
serverManager: ServerManager;
|
|
10
|
+
/** Loading manager for async MCP server initialization */
|
|
11
|
+
loadingManager: McpLoadingManager;
|
|
12
|
+
/** Promise that resolves when all MCP servers finish loading */
|
|
13
|
+
loadingPromise: Promise<void>;
|
|
14
|
+
/** Async loading orchestrator (only present in async mode) */
|
|
15
|
+
asyncOrchestrator?: AsyncLoadingOrchestrator;
|
|
16
|
+
}
|
|
2
17
|
/**
|
|
3
18
|
* Main function to set up the MCP server
|
|
19
|
+
* Conditionally uses async or legacy loading based on configuration
|
|
20
|
+
*/
|
|
21
|
+
declare function setupServer(): Promise<ServerSetupResult>;
|
|
22
|
+
/**
|
|
23
|
+
* Legacy function for backward compatibility
|
|
24
|
+
* @deprecated Use setupServer() which returns ServerSetupResult
|
|
4
25
|
*/
|
|
5
|
-
declare function
|
|
6
|
-
export { setupServer };
|
|
26
|
+
declare function setupServerLegacy(): Promise<ServerManager>;
|
|
27
|
+
export { setupServer, setupServerLegacy };
|
|
7
28
|
//# sourceMappingURL=server.d.ts.map
|
package/build/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAI/D;;GAEG;AACH,iBAAe,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAI/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAE3F;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,aAAa,EAAE,aAAa,CAAC;IAC7B,0DAA0D;IAC1D,cAAc,EAAE,iBAAiB,CAAC;IAClC,gEAAgE;IAChE,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,8DAA8D;IAC9D,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;CAC9C;AAED;;;GAGG;AACH,iBAAe,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAqBvD;AAoFD;;;GAGG;AACH,iBAAe,iBAAiB,IAAI,OAAO,CAAC,aAAa,CAAC,CAKzD;AAED,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC"}
|