@apify/mcpc 0.1.2 → 0.1.4

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.
Files changed (124) hide show
  1. package/.claude/settings.local.json +35 -2
  2. package/.idea/codeStyles/Project.xml +4 -0
  3. package/.idea/workspace.xml +290 -274
  4. package/CONTRIBUTING.md +210 -0
  5. package/README.md +225 -344
  6. package/TODOs.md +29 -76
  7. package/dist/bridge/index.js +153 -86
  8. package/dist/bridge/index.js.map +1 -1
  9. package/dist/cli/commands/auth.d.ts.map +1 -1
  10. package/dist/cli/commands/auth.js +9 -4
  11. package/dist/cli/commands/auth.js.map +1 -1
  12. package/dist/cli/commands/clean.d.ts.map +1 -1
  13. package/dist/cli/commands/clean.js +42 -73
  14. package/dist/cli/commands/clean.js.map +1 -1
  15. package/dist/cli/commands/prompts.d.ts.map +1 -1
  16. package/dist/cli/commands/prompts.js +24 -1
  17. package/dist/cli/commands/prompts.js.map +1 -1
  18. package/dist/cli/commands/sessions.d.ts +5 -1
  19. package/dist/cli/commands/sessions.d.ts.map +1 -1
  20. package/dist/cli/commands/sessions.js +162 -132
  21. package/dist/cli/commands/sessions.js.map +1 -1
  22. package/dist/cli/commands/tools.d.ts.map +1 -1
  23. package/dist/cli/commands/tools.js +39 -1
  24. package/dist/cli/commands/tools.js.map +1 -1
  25. package/dist/cli/helpers.d.ts +5 -2
  26. package/dist/cli/helpers.d.ts.map +1 -1
  27. package/dist/cli/helpers.js +114 -74
  28. package/dist/cli/helpers.js.map +1 -1
  29. package/dist/cli/index.js +50 -14
  30. package/dist/cli/index.js.map +1 -1
  31. package/dist/cli/output.d.ts +19 -3
  32. package/dist/cli/output.d.ts.map +1 -1
  33. package/dist/cli/output.js +395 -85
  34. package/dist/cli/output.js.map +1 -1
  35. package/dist/cli/parser.d.ts +4 -0
  36. package/dist/cli/parser.d.ts.map +1 -1
  37. package/dist/cli/parser.js +88 -1
  38. package/dist/cli/parser.js.map +1 -1
  39. package/dist/cli/shell-parser.d.ts.map +1 -1
  40. package/dist/cli/shell-parser.js.map +1 -1
  41. package/dist/cli/shell.js +13 -13
  42. package/dist/cli/shell.js.map +1 -1
  43. package/dist/core/factory.d.ts +4 -4
  44. package/dist/core/factory.d.ts.map +1 -1
  45. package/dist/core/factory.js +4 -34
  46. package/dist/core/factory.js.map +1 -1
  47. package/dist/core/mcp-client.d.ts +2 -2
  48. package/dist/core/mcp-client.d.ts.map +1 -1
  49. package/dist/core/mcp-client.js +18 -22
  50. package/dist/core/mcp-client.js.map +1 -1
  51. package/dist/core/transports.d.ts +6 -2
  52. package/dist/core/transports.d.ts.map +1 -1
  53. package/dist/core/transports.js +58 -37
  54. package/dist/core/transports.js.map +1 -1
  55. package/dist/lib/auth/keychain.d.ts.map +1 -1
  56. package/dist/lib/auth/keychain.js +5 -2
  57. package/dist/lib/auth/keychain.js.map +1 -1
  58. package/dist/lib/auth/oauth-flow.d.ts.map +1 -1
  59. package/dist/lib/auth/oauth-flow.js +14 -2
  60. package/dist/lib/auth/oauth-flow.js.map +1 -1
  61. package/dist/lib/auth/oauth-provider.d.ts +19 -8
  62. package/dist/lib/auth/oauth-provider.d.ts.map +1 -1
  63. package/dist/lib/auth/oauth-provider.js +79 -29
  64. package/dist/lib/auth/oauth-provider.js.map +1 -1
  65. package/dist/lib/auth/oauth-token-manager.d.ts +8 -0
  66. package/dist/lib/auth/oauth-token-manager.d.ts.map +1 -1
  67. package/dist/lib/auth/oauth-token-manager.js +33 -0
  68. package/dist/lib/auth/oauth-token-manager.js.map +1 -1
  69. package/dist/lib/auth/{auth-profiles.d.ts → profiles.d.ts} +7 -2
  70. package/dist/lib/auth/profiles.d.ts.map +1 -0
  71. package/dist/lib/auth/profiles.js +188 -0
  72. package/dist/lib/auth/profiles.js.map +1 -0
  73. package/dist/lib/auth/token-refresh.js +1 -1
  74. package/dist/lib/auth/token-refresh.js.map +1 -1
  75. package/dist/lib/bridge-client.js.map +1 -1
  76. package/dist/lib/bridge-manager.d.ts +2 -3
  77. package/dist/lib/bridge-manager.d.ts.map +1 -1
  78. package/dist/lib/bridge-manager.js +48 -63
  79. package/dist/lib/bridge-manager.js.map +1 -1
  80. package/dist/lib/cleanup.d.ts +5 -0
  81. package/dist/lib/cleanup.d.ts.map +1 -0
  82. package/dist/lib/cleanup.js +48 -0
  83. package/dist/lib/cleanup.js.map +1 -0
  84. package/dist/lib/config.d.ts +3 -3
  85. package/dist/lib/config.d.ts.map +1 -1
  86. package/dist/lib/config.js.map +1 -1
  87. package/dist/lib/errors.d.ts +1 -1
  88. package/dist/lib/errors.d.ts.map +1 -1
  89. package/dist/lib/errors.js +5 -1
  90. package/dist/lib/errors.js.map +1 -1
  91. package/dist/lib/index.d.ts +1 -0
  92. package/dist/lib/index.d.ts.map +1 -1
  93. package/dist/lib/index.js +1 -0
  94. package/dist/lib/index.js.map +1 -1
  95. package/dist/lib/logger.d.ts +5 -1
  96. package/dist/lib/logger.d.ts.map +1 -1
  97. package/dist/lib/logger.js +10 -1
  98. package/dist/lib/logger.js.map +1 -1
  99. package/dist/lib/schema-validator.d.ts +36 -0
  100. package/dist/lib/schema-validator.d.ts.map +1 -0
  101. package/dist/lib/schema-validator.js +220 -0
  102. package/dist/lib/schema-validator.js.map +1 -0
  103. package/dist/lib/session-client.d.ts +2 -2
  104. package/dist/lib/session-client.d.ts.map +1 -1
  105. package/dist/lib/session-client.js +9 -9
  106. package/dist/lib/session-client.js.map +1 -1
  107. package/dist/lib/sessions.d.ts +6 -1
  108. package/dist/lib/sessions.d.ts.map +1 -1
  109. package/dist/lib/sessions.js +72 -14
  110. package/dist/lib/sessions.js.map +1 -1
  111. package/dist/lib/types.d.ts +17 -25
  112. package/dist/lib/types.d.ts.map +1 -1
  113. package/dist/lib/types.js.map +1 -1
  114. package/dist/lib/utils.d.ts +4 -1
  115. package/dist/lib/utils.d.ts.map +1 -1
  116. package/dist/lib/utils.js +24 -3
  117. package/dist/lib/utils.js.map +1 -1
  118. package/{claude-skill → docs/claude-skill}/SKILL.md +2 -2
  119. package/package.json +17 -8
  120. package/TESTING.md +0 -212
  121. package/dist/lib/auth/auth-profiles.d.ts.map +0 -1
  122. package/dist/lib/auth/auth-profiles.js +0 -105
  123. package/dist/lib/auth/auth-profiles.js.map +0 -1
  124. /package/{claude-skill → docs/claude-skill}/README.md +0 -0
package/TODOs.md CHANGED
@@ -1,93 +1,46 @@
1
1
 
2
2
  # TODOs
3
3
 
4
-
5
- ## Bugs
6
- - Seems calling invalid/unknown MCP command in shell (perhaps also normally) causes the bridge to be flagged as expired
7
-
8
- - reconnection doesn't work
9
- mcpc @apify session  1 ✘
10
- error: missing required argument 'name'
11
-
12
-
13
4
  ## Next
14
5
 
15
- - nit: consistent good server and session info, on server/session info, print also auth info
16
- - [Using session: apify-docs] => change to show server + transport + version? + auth info!!!
17
- Active MCP sessions:
18
- @fs → npx (stdio) --- show also args instead of just "npx"
19
- - print PID of bridge process
20
-
21
- Visual examples:
22
-
23
- Xxx/
24
- ├── run.sh # Master runner (parallel by suite)
25
- ├── lib/
26
- │ ├── common.sh # Assertions, temp dirs, cleanup
27
- │ ├── server.sh # Start/stop test server helpers
28
- │ └── mcpc.sh # Wrapper to invoke mcpc with coverage
29
- ├── fixtures/
30
- │ └── configs/ # Test config files
31
- ├── server/
32
- │ └── index.ts # Configurable test MCP server
33
-
34
-
35
- * ▐▛███▜▌ * Claude Code v2.0.75
36
- * ▝▜█████▛▘ * Opus 4.5 · Claude Team
37
- * ▘▘ ▝▝ * ~/Projects/mcpc
38
-
39
-
40
- - Better error handling:
41
- - "mcpc https://mcp.sentry.dev/mcp" with an unknown sever => should hint to use "login"
42
- - Handle MCP errors by failing the command tool, e.g. invalid tool name..
6
+ - Simplify README - there are too many top-level sections, and then show just the second level ones
7
+ - in README, explain the MCP commands better in a standalone section, with details how they work
8
+ - Expand --help to use same text as in README, add link to README
43
9
 
44
- - implement resources-subscribe/resources-unsubscribe command properly
45
- - > # TODO: automatically update the -o file on changes, without it just keep track of changed files in bridge process' cache, and report in resources-list
10
+ - We support "prompts", "tools" etc commands ... do we need to?
46
11
 
12
+ ## MCP features
47
13
 
48
- ## Security
49
- - Double-check the MCP security guidelines
50
- - OAuth issuer - maybe save it and double-check it to ensure domain is not spoofed?
51
-
52
-
53
- ## Later
54
-
55
- - nit: Colorize output, e.g. JSONs in one color. MCP provided data like descriptions and instructions in orange.
56
- - warnings could be orange, errors red
57
- - - docs: add Claude Skills file to /docs, maybe also man page?
58
- - Add support for MCP elicitations, and potentially for sampling (e.g. via shell interface?)
59
14
  - Add `--proxy [HOST:]PORT` feature to `connect` command to enable MCP proxy:
60
- - `--proxy-bearer-token X` to require auth token for better security
15
+ - `--proxy-bearer-token X` for proxy to require auth token for better security
61
16
  - `--proxy-capabilities tools:TOOL_NAME,TOOL_NAME2,...,prompts[:...],...` to limit access to selected MCP features and tools
62
17
  (what if tools have ":" or "," in their names?)
63
18
  In theory, we could add limit of capabilities to normal sessions, but the LLM could still break out of it, so what's the point.
64
- - Explain this is useful for AI sandboxing!
65
- - Implement typing completions (e.g. "mcpc @a...") - not sure how difficult that is
66
- - nit: Nicer OAuth flow finish web page, add Apify example there. E.g. next step - check Apify rather than close
67
- - nit: cooler OAuth web pages "Authentication successful!" - show mcpc info
68
- - audit that on every command, we print next steps as examples
69
- - more shortcuts, e.g. --profile => -p
70
- - nit: in README, explain the MCP commands better in a standlone section, with details how they work
19
+ Explain this is useful for AI sandboxing!
20
+ - Implement resources-subscribe/resources-unsubscribe, --o file command properly, --max-size
21
+ automatically update the -o file on changes, without it just keep track of changed files in
22
+ bridge process' cache, and report in resources-list/resources-read operation
23
+ - Add support for asynchronous tasks
24
+ - Add support for client roots, need to figure how exactly
25
+
26
+ ## Later
27
+
28
+ - Check how we deal with connection and command timeouts, that --timeout and timeout from config
29
+ file are obeyed
30
+
31
+ - Consider adding support for MCP elicitations, and potentially for sampling (e.g. via shell
32
+ interface?)
71
33
 
34
+ - nit: Cooler OAuth flow finish web page with CSS animation, add Apify example there, show mcpc info. E.g. next step - check Apify rather than close
35
+ - nit: For auth profiles, fetch the detailed user info via http, ensure the info is up-to-date
36
+ - nit: add more shortcuts, e.g. --profile => -p
37
+ - later: Add unique Session.id and Profile.id and use it for OS keychain keys, to truly enable using multiple independent mcpc profiles
38
+ - nit: Implement typing completions (e.g. "mcpc @a...") - not sure if that's even possible
72
39
 
73
40
 
74
41
  ## E2E test scenarios
75
- - add end-to-end tests e.g. under `test/e2e` - one bash script per test suite , organized in directories, and one master script that runs them all or selected ones (per directory) in parallel
76
- - Invariants:
77
- - --verbose only adds extra info to stderr, never to stdout
78
- - --json always returns single JSON object to stdout on success (exit code = 0), or an object or nothing at all on error (exit code != 0)
79
- - We'll need a testing server with all the available features and configurable, for testing.
80
- - Things to test:
81
- - handling of errors, invalid params, names, etc.
82
- - pagination
83
- - env vars...
84
- - stdio + filesystem operations,
85
- - sessions
86
- - for all commands, tests --verbose doesn't print anything extra to stdout, --json returns json
87
- - that on session close we send HTTP DELETE https://modelcontextprotocol.io/specification/2025-11-25/basic/transports#session-management
88
- - Test session failover - e.g. kill the bridge process, and try to access the session again (should be restarted)
89
- - Test server session aborting - if session is aborted by server, bridge process should exit and set session status to "expired"
90
- - Test auth profiles work long-term and sessions too
91
- - Can we track test coverage also this way?
92
- - Text copy can change, but the core texts needs to be shown in both text and JSON mode
93
42
 
43
+ Later
44
+ - Test auth profiles work long-term and sessions too - basically when running some tests the
45
+ next day they should use old saved auths and sessions.
46
+ We could have some special dir for long-term testing...
@@ -1,13 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import { createServer } from 'net';
3
- import { unlink, readdir, stat } from 'fs/promises';
3
+ import { unlink } from 'fs/promises';
4
4
  import { createMcpClient } from '../core/index.js';
5
5
  import { createLogger, setVerbose, initFileLogger, closeFileLogger } from '../lib/index.js';
6
- import { fileExists, getBridgesDir, ensureDir, getLogsDir } from '../lib/index.js';
6
+ import { fileExists, getBridgesDir, getSocketPath, ensureDir, cleanupOrphanedLogFiles } from '../lib/index.js';
7
7
  import { ClientError, NetworkError } from '../lib/index.js';
8
8
  import { loadSessions, updateSession } from '../lib/sessions.js';
9
9
  import { OAuthTokenManager } from '../lib/auth/oauth-token-manager.js';
10
- import { join } from 'path';
10
+ import { OAuthProvider } from '../lib/auth/oauth-provider.js';
11
+ import { storeKeychainOAuthTokenInfo, readKeychainOAuthTokenInfo } from '../lib/auth/keychain.js';
12
+ import { updateAuthProfileRefreshedAt } from '../lib/auth/profiles.js';
11
13
  import packageJson from '../../package.json' with { type: 'json' };
12
14
  const KEEPALIVE_INTERVAL_MS = 30_000;
13
15
  const logger = createLogger('bridge');
@@ -16,9 +18,11 @@ class BridgeProcess {
16
18
  server = null;
17
19
  connections = new Set();
18
20
  options;
21
+ socketPath;
19
22
  isShuttingDown = false;
20
23
  keepaliveInterval = null;
21
24
  tokenManager = null;
25
+ authProvider = null;
22
26
  headers = null;
23
27
  authCredentialsReceived = null;
24
28
  authCredentialsResolver = null;
@@ -27,6 +31,7 @@ class BridgeProcess {
27
31
  mcpClientReadyRejecter;
28
32
  constructor(options) {
29
33
  this.options = options;
34
+ this.socketPath = getSocketPath(options.sessionName);
30
35
  this.mcpClientReady = new Promise((resolve, reject) => {
31
36
  this.mcpClientReadyResolver = resolve;
32
37
  this.mcpClientReadyRejecter = reject;
@@ -37,21 +42,72 @@ class BridgeProcess {
37
42
  }
38
43
  setAuthCredentials(credentials) {
39
44
  logger.info(`Received auth credentials for profile: ${credentials.profileName}`);
45
+ logger.debug(` serverUrl: ${credentials.serverUrl}`);
46
+ logger.debug(` refreshToken: ${credentials.refreshToken ? 'present' : 'MISSING'}`);
47
+ logger.debug(` clientId: ${credentials.clientId ? 'present' : 'MISSING'}`);
48
+ logger.debug(` headers: ${credentials.headers ? Object.keys(credentials.headers).length : 0}`);
40
49
  if (credentials.refreshToken && credentials.clientId) {
41
50
  this.tokenManager = new OAuthTokenManager({
42
51
  serverUrl: credentials.serverUrl,
43
52
  profileName: credentials.profileName,
44
53
  clientId: credentials.clientId,
45
54
  refreshToken: credentials.refreshToken,
55
+ onBeforeRefresh: async () => {
56
+ logger.debug('Reloading tokens from keychain before refresh...');
57
+ const tokenInfo = await readKeychainOAuthTokenInfo(credentials.serverUrl, credentials.profileName);
58
+ if (!tokenInfo) {
59
+ logger.debug('No tokens found in keychain');
60
+ return undefined;
61
+ }
62
+ logger.debug('Loaded tokens from keychain');
63
+ const result = {
64
+ accessToken: tokenInfo.accessToken,
65
+ };
66
+ if (tokenInfo.refreshToken) {
67
+ result.refreshToken = tokenInfo.refreshToken;
68
+ }
69
+ if (tokenInfo.expiresAt !== undefined) {
70
+ result.accessTokenExpiresAt = tokenInfo.expiresAt;
71
+ }
72
+ return result;
73
+ },
74
+ onTokenRefresh: async (tokens) => {
75
+ logger.debug('Token refresh detected, persisting new tokens to keychain');
76
+ const tokenInfo = {
77
+ accessToken: tokens.access_token,
78
+ tokenType: tokens.token_type,
79
+ };
80
+ if (tokens.expires_in !== undefined) {
81
+ tokenInfo.expiresIn = tokens.expires_in;
82
+ tokenInfo.expiresAt = Math.floor(Date.now() / 1000) + tokens.expires_in;
83
+ }
84
+ if (tokens.refresh_token !== undefined) {
85
+ tokenInfo.refreshToken = tokens.refresh_token;
86
+ }
87
+ if (tokens.scope !== undefined) {
88
+ tokenInfo.scope = tokens.scope;
89
+ }
90
+ await storeKeychainOAuthTokenInfo(credentials.serverUrl, credentials.profileName, tokenInfo);
91
+ await updateAuthProfileRefreshedAt(credentials.serverUrl, credentials.profileName);
92
+ logger.debug('Profile refreshedAt timestamp updated');
93
+ logger.debug('New tokens persisted to keychain');
94
+ },
46
95
  });
47
96
  logger.debug('OAuth token manager initialized');
97
+ this.authProvider = new OAuthProvider({
98
+ serverUrl: credentials.serverUrl,
99
+ profileName: credentials.profileName,
100
+ tokenManager: this.tokenManager,
101
+ clientId: credentials.clientId,
102
+ });
103
+ logger.debug('OAuthProvider created for SDK transport (runtime mode)');
48
104
  }
49
105
  else if (credentials.refreshToken && !credentials.clientId) {
50
106
  logger.warn('Refresh token provided but client ID is missing - token refresh will not work');
51
107
  }
52
108
  if (credentials.headers) {
53
109
  this.headers = credentials.headers;
54
- logger.debug(`Stored ${Object.keys(this.headers).length} headers in memory`);
110
+ logger.debug(`Stored headers "${Object.keys(this.headers).join(', ')}" in memory`);
55
111
  }
56
112
  if (this.authCredentialsResolver) {
57
113
  this.authCredentialsResolver();
@@ -59,8 +115,8 @@ class BridgeProcess {
59
115
  }
60
116
  }
61
117
  async updateTransportAuth() {
62
- const config = { ...this.options.target };
63
- if (config.type !== 'http') {
118
+ const config = { ...this.options.serverConfig };
119
+ if (!config.url) {
64
120
  return config;
65
121
  }
66
122
  try {
@@ -90,52 +146,16 @@ class BridgeProcess {
90
146
  }
91
147
  return config;
92
148
  }
93
- cleanupOrphanedLogFiles() {
149
+ runOrphanedLogCleanup() {
94
150
  void (async () => {
95
151
  try {
96
152
  logger.debug('Starting cleanup of orphaned log files');
97
153
  const sessionsStorage = await loadSessions();
98
154
  const activeSessions = sessionsStorage.sessions;
99
- const logsDir = getLogsDir();
100
- await ensureDir(logsDir);
101
- const files = await readdir(logsDir);
102
- const bridgeLogPattern = /^bridge-(@.+?)\.log(?:\.\d+)?$/;
103
- const sevenDaysAgo = Date.now() - 7 * 24 * 60 * 60 * 1000;
104
- logger.debug(`Found ${files.length} files in logs directory, cutoff date: ${new Date(sevenDaysAgo).toISOString()}`);
105
- for (const file of files) {
106
- const match = file.match(bridgeLogPattern);
107
- if (!match || !match[1])
108
- continue;
109
- const sessionName = match[1];
110
- logger.debug(`Checking log file: ${file} (session: ${sessionName})`);
111
- if (sessionName === this.options.sessionName) {
112
- logger.debug(`Skipping current session's log file: ${file}`);
113
- continue;
114
- }
115
- if (!activeSessions[sessionName]) {
116
- const filePath = join(logsDir, file);
117
- try {
118
- const fileStats = await stat(filePath);
119
- const fileAge = fileStats.mtime.getTime();
120
- const ageInDays = Math.floor((Date.now() - fileAge) / (24 * 60 * 60 * 1000));
121
- logger.debug(`File ${file} age: ${ageInDays} days (mtime: ${new Date(fileAge).toISOString()})`);
122
- if (fileAge < sevenDaysAgo) {
123
- await unlink(filePath);
124
- logger.debug(`Cleaned up orphaned log file: ${file} (age: ${ageInDays} days)`);
125
- }
126
- else {
127
- logger.debug(`Keeping recent orphaned log file: ${file} (age: ${ageInDays} days)`);
128
- }
129
- }
130
- catch (error) {
131
- logger.debug(`Failed to stat log file ${file}:`, error);
132
- }
133
- }
134
- else {
135
- logger.debug(`Session ${sessionName} still exists, keeping log file: ${file}`);
136
- }
137
- }
138
- logger.debug('Finished cleanup of orphaned log files');
155
+ const deleted = await cleanupOrphanedLogFiles(activeSessions, {
156
+ skipSession: this.options.sessionName,
157
+ });
158
+ logger.debug(`Finished cleanup of orphaned log files (deleted: ${deleted})`);
139
159
  }
140
160
  catch (error) {
141
161
  logger.warn('Failed to clean up orphaned log files:', error);
@@ -143,9 +163,12 @@ class BridgeProcess {
143
163
  })();
144
164
  }
145
165
  async start() {
146
- await initFileLogger(`bridge-${this.options.sessionName}.log`);
166
+ await initFileLogger(`bridge-${this.options.sessionName}.log`, {
167
+ version: packageJson.version,
168
+ command: process.argv.slice(1).join(' '),
169
+ });
147
170
  logger.info(`Bridge process starting for session: ${this.options.sessionName}`);
148
- this.cleanupOrphanedLogFiles();
171
+ this.runOrphanedLogCleanup();
149
172
  try {
150
173
  await this.createSocketServer();
151
174
  if (this.options.profileName) {
@@ -164,8 +187,14 @@ class BridgeProcess {
164
187
  this.mcpClientReadyResolver();
165
188
  }
166
189
  catch (error) {
190
+ logger.error('MCP connection failed, will stay alive briefly for CLI to receive error:', error);
167
191
  this.mcpClientReadyRejecter(error);
168
- throw error;
192
+ this.setupSignalHandlers();
193
+ setTimeout(() => {
194
+ logger.info('Shutting down after MCP connection failure');
195
+ this.shutdown().catch(() => process.exit(1));
196
+ }, 10_000);
197
+ return;
169
198
  }
170
199
  this.startKeepalive();
171
200
  this.setupSignalHandlers();
@@ -197,33 +226,53 @@ class BridgeProcess {
197
226
  }
198
227
  async connectToMcp() {
199
228
  logger.debug('Connecting to MCP server...');
200
- const transport = await this.updateTransportAuth();
229
+ logger.debug(` authProvider: ${this.authProvider ? 'present' : 'NOT SET'}`);
230
+ logger.debug(` tokenManager: ${this.tokenManager ? 'present' : 'NOT SET'}`);
231
+ logger.debug(` headers: ${this.headers ? Object.keys(this.headers).join(', ') : 'none'}`);
232
+ let serverConfig;
233
+ if (this.authProvider) {
234
+ serverConfig = { ...this.options.serverConfig };
235
+ if (this.headers) {
236
+ serverConfig.headers = { ...serverConfig.headers, ...this.headers };
237
+ logger.debug(`Added non-OAuth headers "${Object.keys(this.headers).join(', ')}" to transport`);
238
+ }
239
+ }
240
+ else {
241
+ logger.debug('No authProvider - using updateTransportAuth for headers');
242
+ serverConfig = await this.updateTransportAuth();
243
+ }
244
+ logger.debug('Building MCP client config...');
245
+ logger.debug(` this.authProvider is set: ${!!this.authProvider}`);
246
+ if (this.authProvider) {
247
+ logger.debug(` authProvider type: ${this.authProvider.constructor.name}`);
248
+ }
201
249
  const clientConfig = {
202
250
  clientInfo: { name: 'mcpc', version: packageJson.version },
203
- transport,
251
+ serverConfig,
204
252
  capabilities: {
205
253
  roots: { listChanged: true },
206
254
  sampling: {},
207
255
  },
256
+ ...(this.authProvider && { authProvider: this.authProvider }),
208
257
  listChanged: {
209
258
  tools: {
210
259
  autoRefresh: true,
211
- onChanged: () => {
212
- logger.debug('Tools list changed');
260
+ onChanged: (error, tools) => {
261
+ logger.debug('Tools list changed', { error, count: tools?.length });
213
262
  this.broadcastNotification('tools/list_changed');
214
263
  },
215
264
  },
216
265
  resources: {
217
266
  autoRefresh: true,
218
- onChanged: () => {
219
- logger.debug('Resources list changed');
267
+ onChanged: (error, resources) => {
268
+ logger.debug('Resources list changed', { error, count: resources?.length });
220
269
  this.broadcastNotification('resources/list_changed');
221
270
  },
222
271
  },
223
272
  prompts: {
224
273
  autoRefresh: true,
225
- onChanged: () => {
226
- logger.debug('Prompts list changed');
274
+ onChanged: (error, prompts) => {
275
+ logger.debug('Prompts list changed', { error, count: prompts?.length });
227
276
  this.broadcastNotification('prompts/list_changed');
228
277
  },
229
278
  },
@@ -231,9 +280,21 @@ class BridgeProcess {
231
280
  autoConnect: true,
232
281
  verbose: this.options.verbose || false,
233
282
  };
283
+ logger.debug('Calling createMcpClient with authProvider:', !!clientConfig.authProvider);
234
284
  this.client = await createMcpClient(clientConfig);
235
285
  logger.info('Connected to MCP server');
236
- await this.updateLastSeenAt();
286
+ logger.debug('MCP client created successfully, authProvider was:', !!clientConfig.authProvider);
287
+ const serverDetails = await this.client.getServerDetails();
288
+ const sessionUpdate = {
289
+ lastSeenAt: new Date().toISOString(),
290
+ };
291
+ if (serverDetails.protocolVersion) {
292
+ sessionUpdate.protocolVersion = serverDetails.protocolVersion;
293
+ }
294
+ if (serverDetails.serverInfo) {
295
+ sessionUpdate.serverInfo = serverDetails.serverInfo;
296
+ }
297
+ await updateSession(this.options.sessionName, sessionUpdate);
237
298
  }
238
299
  startKeepalive() {
239
300
  logger.debug(`Starting keepalive ping every ${KEEPALIVE_INTERVAL_MS / 1000}s`);
@@ -266,11 +327,11 @@ class BridgeProcess {
266
327
  }
267
328
  handlePossibleExpiration(error) {
268
329
  const errorMessage = error.message.toLowerCase();
269
- const isExpired = errorMessage.includes('404') ||
270
- errorMessage.includes('-32000') ||
271
- errorMessage.includes('not found') ||
330
+ const isExpired = (errorMessage.includes('404') && !errorMessage.includes('tool')) ||
272
331
  errorMessage.includes('session expired') ||
273
- errorMessage.includes('invalid session');
332
+ errorMessage.includes('session not found') ||
333
+ errorMessage.includes('invalid session') ||
334
+ errorMessage.includes('session is no longer valid');
274
335
  if (isExpired) {
275
336
  logger.warn('Session appears to be expired, marking as expired and shutting down');
276
337
  this.markSessionExpiredAndExit().catch((e) => {
@@ -293,17 +354,18 @@ class BridgeProcess {
293
354
  await this.shutdown();
294
355
  }
295
356
  async createSocketServer() {
296
- const { socketPath } = this.options;
297
- await ensureDir(getBridgesDir());
298
- if (await fileExists(socketPath)) {
299
- logger.debug(`Removing existing socket: ${socketPath}`);
300
- await unlink(socketPath);
357
+ if (process.platform !== 'win32') {
358
+ await ensureDir(getBridgesDir());
359
+ if (await fileExists(this.socketPath)) {
360
+ logger.debug(`Removing existing socket: ${this.socketPath}`);
361
+ await unlink(this.socketPath);
362
+ }
301
363
  }
302
364
  const server = createServer((socket) => this.handleConnection(socket));
303
365
  this.server = server;
304
366
  await new Promise((resolve, reject) => {
305
- server.listen(socketPath, () => {
306
- logger.info(`Socket server listening: ${socketPath}`);
367
+ server.listen(this.socketPath, () => {
368
+ logger.info(`Socket server listening: ${this.socketPath}`);
307
369
  resolve();
308
370
  });
309
371
  server.on('error', (error) => {
@@ -380,6 +442,7 @@ class BridgeProcess {
380
442
  }
381
443
  }
382
444
  async handleMcpRequest(socket, message) {
445
+ logger.debug(`>>> handleMcpRequest: ${message.method} <<<`);
383
446
  await this.mcpClientReady;
384
447
  if (!this.client) {
385
448
  throw new NetworkError('MCP client not connected');
@@ -387,6 +450,11 @@ class BridgeProcess {
387
450
  if (!message.method) {
388
451
  throw new ClientError('Missing method in request');
389
452
  }
453
+ logger.debug(` authProvider is set: ${!!this.authProvider}`);
454
+ if (this.tokenManager) {
455
+ const expiresIn = this.tokenManager.getSecondsUntilExpiry();
456
+ logger.debug(` token expires in: ${expiresIn} seconds`);
457
+ }
390
458
  try {
391
459
  let result;
392
460
  switch (message.method) {
@@ -443,8 +511,8 @@ class BridgeProcess {
443
511
  result = await this.client.setLoggingLevel(params);
444
512
  break;
445
513
  }
446
- case 'getServerInfo':
447
- result = await this.client.getServerInfo();
514
+ case 'getServerDetails':
515
+ result = await this.client.getServerDetails();
448
516
  break;
449
517
  default:
450
518
  throw new ClientError(`Unknown MCP method: ${message.method}`);
@@ -518,14 +586,16 @@ class BridgeProcess {
518
586
  resolve();
519
587
  });
520
588
  });
521
- try {
522
- if (await fileExists(this.options.socketPath)) {
523
- await unlink(this.options.socketPath);
524
- logger.debug('Socket file removed');
589
+ if (process.platform !== 'win32') {
590
+ try {
591
+ if (await fileExists(this.socketPath)) {
592
+ await unlink(this.socketPath);
593
+ logger.debug('Socket file removed');
594
+ }
595
+ }
596
+ catch (error) {
597
+ logger.warn('Failed to remove socket file:', error);
525
598
  }
526
- }
527
- catch (error) {
528
- logger.warn('Failed to remove socket file:', error);
529
599
  }
530
600
  }
531
601
  if (this.client) {
@@ -548,13 +618,12 @@ class BridgeProcess {
548
618
  }
549
619
  async function main() {
550
620
  const args = process.argv.slice(2);
551
- if (args.length < 3) {
552
- console.error('Usage: mcpc-bridge <sessionName> <socketPath> <transportConfigJson> [--verbose] [--profile <name>]');
621
+ if (args.length < 2) {
622
+ console.error('Usage: mcpc-bridge <sessionName> <transportConfigJson> [--verbose] [--profile <name>]');
553
623
  process.exit(1);
554
624
  }
555
625
  const sessionName = args[0];
556
- const socketPath = args[1];
557
- const transportConfigJson = args[2];
626
+ const transportConfigJson = args[1];
558
627
  const verbose = args.includes('--verbose');
559
628
  let profileName;
560
629
  const profileIndex = args.indexOf('--profile');
@@ -562,11 +631,9 @@ async function main() {
562
631
  profileName = args[profileIndex + 1];
563
632
  }
564
633
  try {
565
- const target = JSON.parse(transportConfigJson);
566
634
  const bridgeOptions = {
567
635
  sessionName,
568
- target,
569
- socketPath,
636
+ serverConfig: JSON.parse(transportConfigJson),
570
637
  verbose,
571
638
  };
572
639
  if (profileName) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bridge/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bridge/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUzD,wBAAsB,KAAK,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7D,OAAO,CAAC,IAAI,CAAC,CA2Cf;AAKD,wBAAsB,MAAM,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUzD,wBAAsB,KAAK,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7D,OAAO,CAAC,IAAI,CAAC,CA2Cf;AAKD,wBAAsB,MAAM,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,IAAI,CAAC,CAqDf"}