@apify/mcpc 0.1.11 → 0.2.0-beta.1

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 (103) hide show
  1. package/CHANGELOG.md +76 -2
  2. package/CONTRIBUTING.md +21 -0
  3. package/README.md +232 -201
  4. package/dist/bridge/index.js +240 -43
  5. package/dist/bridge/index.js.map +1 -1
  6. package/dist/cli/commands/auth.d.ts +2 -0
  7. package/dist/cli/commands/auth.d.ts.map +1 -1
  8. package/dist/cli/commands/auth.js +11 -1
  9. package/dist/cli/commands/auth.js.map +1 -1
  10. package/dist/cli/commands/logging.d.ts.map +1 -1
  11. package/dist/cli/commands/logging.js +1 -4
  12. package/dist/cli/commands/logging.js.map +1 -1
  13. package/dist/cli/commands/sessions.d.ts +3 -1
  14. package/dist/cli/commands/sessions.d.ts.map +1 -1
  15. package/dist/cli/commands/sessions.js +179 -141
  16. package/dist/cli/commands/sessions.js.map +1 -1
  17. package/dist/cli/commands/tasks.d.ts +5 -0
  18. package/dist/cli/commands/tasks.d.ts.map +1 -0
  19. package/dist/cli/commands/tasks.js +53 -0
  20. package/dist/cli/commands/tasks.js.map +1 -0
  21. package/dist/cli/commands/tools.d.ts +2 -0
  22. package/dist/cli/commands/tools.d.ts.map +1 -1
  23. package/dist/cli/commands/tools.js +158 -12
  24. package/dist/cli/commands/tools.js.map +1 -1
  25. package/dist/cli/commands/x402.d.ts.map +1 -1
  26. package/dist/cli/commands/x402.js +20 -6
  27. package/dist/cli/commands/x402.js.map +1 -1
  28. package/dist/cli/helpers.d.ts +2 -6
  29. package/dist/cli/helpers.d.ts.map +1 -1
  30. package/dist/cli/helpers.js +27 -185
  31. package/dist/cli/helpers.js.map +1 -1
  32. package/dist/cli/index.js +437 -204
  33. package/dist/cli/index.js.map +1 -1
  34. package/dist/cli/output.d.ts +7 -3
  35. package/dist/cli/output.d.ts.map +1 -1
  36. package/dist/cli/output.js +135 -16
  37. package/dist/cli/output.js.map +1 -1
  38. package/dist/cli/parser.d.ts +11 -8
  39. package/dist/cli/parser.d.ts.map +1 -1
  40. package/dist/cli/parser.js +89 -65
  41. package/dist/cli/parser.js.map +1 -1
  42. package/dist/cli/shell.d.ts.map +1 -1
  43. package/dist/cli/shell.js +30 -3
  44. package/dist/cli/shell.js.map +1 -1
  45. package/dist/core/mcp-client.d.ts +17 -3
  46. package/dist/core/mcp-client.d.ts.map +1 -1
  47. package/dist/core/mcp-client.js +236 -3
  48. package/dist/core/mcp-client.js.map +1 -1
  49. package/dist/core/transports.d.ts.map +1 -1
  50. package/dist/core/transports.js +3 -0
  51. package/dist/core/transports.js.map +1 -1
  52. package/dist/lib/auth/keychain.d.ts.map +1 -1
  53. package/dist/lib/auth/keychain.js +40 -15
  54. package/dist/lib/auth/keychain.js.map +1 -1
  55. package/dist/lib/auth/oauth-flow.d.ts +4 -1
  56. package/dist/lib/auth/oauth-flow.d.ts.map +1 -1
  57. package/dist/lib/auth/oauth-flow.js +108 -16
  58. package/dist/lib/auth/oauth-flow.js.map +1 -1
  59. package/dist/lib/auth/oauth-provider.d.ts +5 -0
  60. package/dist/lib/auth/oauth-provider.d.ts.map +1 -1
  61. package/dist/lib/auth/oauth-provider.js +16 -1
  62. package/dist/lib/auth/oauth-provider.js.map +1 -1
  63. package/dist/lib/auth/oauth-utils.d.ts.map +1 -1
  64. package/dist/lib/auth/oauth-utils.js +3 -2
  65. package/dist/lib/auth/oauth-utils.js.map +1 -1
  66. package/dist/lib/bridge-client.d.ts +1 -1
  67. package/dist/lib/bridge-client.d.ts.map +1 -1
  68. package/dist/lib/bridge-client.js +18 -4
  69. package/dist/lib/bridge-client.js.map +1 -1
  70. package/dist/lib/bridge-manager.d.ts +1 -0
  71. package/dist/lib/bridge-manager.d.ts.map +1 -1
  72. package/dist/lib/bridge-manager.js +39 -17
  73. package/dist/lib/bridge-manager.js.map +1 -1
  74. package/dist/lib/errors.js +2 -2
  75. package/dist/lib/errors.js.map +1 -1
  76. package/dist/lib/file-lock.d.ts.map +1 -1
  77. package/dist/lib/file-lock.js +4 -2
  78. package/dist/lib/file-lock.js.map +1 -1
  79. package/dist/lib/proxy.d.ts +6 -0
  80. package/dist/lib/proxy.d.ts.map +1 -0
  81. package/dist/lib/proxy.js +13 -0
  82. package/dist/lib/proxy.js.map +1 -0
  83. package/dist/lib/session-client.d.ts +16 -3
  84. package/dist/lib/session-client.d.ts.map +1 -1
  85. package/dist/lib/session-client.js +121 -15
  86. package/dist/lib/session-client.js.map +1 -1
  87. package/dist/lib/sessions.d.ts.map +1 -1
  88. package/dist/lib/sessions.js +9 -4
  89. package/dist/lib/sessions.js.map +1 -1
  90. package/dist/lib/types.d.ts +37 -6
  91. package/dist/lib/types.d.ts.map +1 -1
  92. package/dist/lib/types.js +2 -0
  93. package/dist/lib/types.js.map +1 -1
  94. package/dist/lib/utils.d.ts +0 -2
  95. package/dist/lib/utils.d.ts.map +1 -1
  96. package/dist/lib/utils.js +1 -19
  97. package/dist/lib/utils.js.map +1 -1
  98. package/dist/lib/x402/fetch-middleware.d.ts.map +1 -1
  99. package/dist/lib/x402/fetch-middleware.js +41 -8
  100. package/dist/lib/x402/fetch-middleware.js.map +1 -1
  101. package/docs/TODOs.md +87 -26
  102. package/package.json +2 -2
  103. package/renovate.json +2 -1
@@ -5,5 +5,7 @@ export declare function listTools(target: string, options: CommandOptions & {
5
5
  export declare function getTool(target: string, name: string, options: CommandOptions): Promise<void>;
6
6
  export declare function callTool(target: string, name: string, options: CommandOptions & {
7
7
  args?: string[];
8
+ task?: boolean;
9
+ detach?: boolean;
8
10
  }): Promise<void>;
9
11
  //# sourceMappingURL=tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/tools.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAgBzD,wBAAsB,SAAS,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,cAAc,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC3C,OAAO,CAAC,IAAI,CAAC,CAgBf;AAKD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,IAAI,CAAC,CA0Cf;AAQD,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,GAAG;IACxB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB,GACA,OAAO,CAAC,IAAI,CAAC,CA6Df"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/tools.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,oBAAoB,CAAC;AAgBrE,wBAAsB,SAAS,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,cAAc,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC3C,OAAO,CAAC,IAAI,CAAC,CAUf;AAKD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,IAAI,CAAC,CA6Cf;AA+ED,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,GAAG;IACxB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,OAAO,CAAC,IAAI,CAAC,CAmLf"}
@@ -1,3 +1,5 @@
1
+ import ora from 'ora';
2
+ import chalk from 'chalk';
1
3
  import { formatOutput, formatToolDetail, formatSuccess, formatWarning } from '../output.js';
2
4
  import { ClientError } from '../../lib/errors.js';
3
5
  import { withMcpClient } from '../helpers.js';
@@ -5,14 +7,11 @@ import { parseCommandArgs, hasStdinData, readStdinArgs } from '../parser.js';
5
7
  import { loadSchemaFromFile, validateToolSchema, formatValidationError, } from '../../lib/schema-validator.js';
6
8
  export async function listTools(target, options) {
7
9
  await withMcpClient(target, options, async (client, _context) => {
8
- const allTools = [];
9
- let cursor = undefined;
10
- do {
11
- const result = await client.listTools(cursor);
12
- allTools.push(...result.tools);
13
- cursor = result.nextCursor;
14
- } while (cursor);
15
- console.log(formatOutput(allTools, options.outputMode, options.full ? { full: true } : undefined));
10
+ const result = await client.listAllTools({ refreshCache: true });
11
+ console.log(formatOutput(result.tools, options.outputMode, {
12
+ ...(options.full && { full: true }),
13
+ sessionName: target,
14
+ }));
16
15
  });
17
16
  }
18
17
  export async function getTool(target, name, options) {
@@ -21,8 +20,12 @@ export async function getTool(target, name, options) {
21
20
  expectedSchema = (await loadSchemaFromFile(options.schema));
22
21
  }
23
22
  await withMcpClient(target, options, async (client, _context) => {
24
- const result = await client.listTools();
25
- const tool = result.tools.find((t) => t.name === name);
23
+ let result = await client.listAllTools();
24
+ let tool = result.tools.find((t) => t.name === name);
25
+ if (!tool) {
26
+ result = await client.listAllTools({ refreshCache: true });
27
+ tool = result.tools.find((t) => t.name === name);
28
+ }
26
29
  if (!tool) {
27
30
  throw new ClientError(`Tool not found: ${name}`);
28
31
  }
@@ -46,6 +49,50 @@ export async function getTool(target, name, options) {
46
49
  }
47
50
  });
48
51
  }
52
+ function formatElapsed(ms) {
53
+ const totalSeconds = Math.floor(ms / 1000);
54
+ const hours = Math.floor(totalSeconds / 3600);
55
+ const minutes = Math.floor((totalSeconds % 3600) / 60);
56
+ const seconds = totalSeconds % 60;
57
+ if (hours > 0) {
58
+ return `${hours}:${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`;
59
+ }
60
+ return `${minutes}:${String(seconds).padStart(2, '0')}`;
61
+ }
62
+ async function shouldUseTask(client, async_) {
63
+ if (!async_)
64
+ return false;
65
+ const details = await client.getServerDetails();
66
+ return !!details.capabilities?.tasks?.requests?.tools?.call;
67
+ }
68
+ function setupEscListener(enabled, canDetach) {
69
+ if (!enabled || !process.stdin.isTTY) {
70
+ return { promise: null, cleanup: () => { } };
71
+ }
72
+ const ESC = '\x1b';
73
+ let cleaned = false;
74
+ let cleanupFn = () => { };
75
+ const promise = new Promise((resolve) => {
76
+ const onData = (key) => {
77
+ if (key.toString() === ESC && canDetach()) {
78
+ cleanupFn();
79
+ resolve('detached');
80
+ }
81
+ };
82
+ process.stdin.setRawMode(true);
83
+ process.stdin.resume();
84
+ process.stdin.on('data', onData);
85
+ cleanupFn = () => {
86
+ if (cleaned)
87
+ return;
88
+ cleaned = true;
89
+ process.stdin.off('data', onData);
90
+ process.stdin.setRawMode(false);
91
+ process.stdin.pause();
92
+ };
93
+ });
94
+ return { promise, cleanup: () => cleanupFn() };
95
+ }
49
96
  export async function callTool(target, name, options) {
50
97
  let parsedArgs;
51
98
  if (options.args && options.args.length > 0) {
@@ -79,9 +126,108 @@ export async function callTool(target, name, options) {
79
126
  }
80
127
  }
81
128
  }
82
- const result = await client.callTool(name, parsedArgs);
129
+ const taskRequested = options.detach || options.task;
130
+ const useTask = await shouldUseTask(client, taskRequested);
131
+ if (taskRequested && !useTask) {
132
+ if (options.outputMode === 'human') {
133
+ console.log(formatWarning('Server does not support tasks, falling back to synchronous execution'));
134
+ }
135
+ }
136
+ let result;
137
+ if (useTask && options.detach) {
138
+ const taskUpdate = await client.callToolDetached(name, parsedArgs);
139
+ if (options.outputMode === 'human') {
140
+ console.log(formatSuccess(`Task started: ${taskUpdate.taskId}`));
141
+ }
142
+ else {
143
+ console.log(formatOutput({ taskId: taskUpdate.taskId, status: taskUpdate.status }, 'json'));
144
+ }
145
+ return;
146
+ }
147
+ else if (useTask) {
148
+ const startTime = Date.now();
149
+ let spinner = null;
150
+ let timerInterval = null;
151
+ let lastStatusMessage;
152
+ let lastProgressMessage;
153
+ let capturedTaskId;
154
+ const updateSpinnerText = () => {
155
+ if (!spinner)
156
+ return;
157
+ const elapsed = formatElapsed(Date.now() - startTime);
158
+ const progressSuffix = lastProgressMessage ? ` ${chalk.dim(lastProgressMessage)}` : '';
159
+ const statusSuffix = !lastProgressMessage && lastStatusMessage ? ` ${chalk.dim(lastStatusMessage)}` : '';
160
+ const escHint = capturedTaskId && escListener.promise ? ` ${chalk.dim('(ESC to detach)')}` : '';
161
+ spinner.text = `Running tool ${chalk.bold(name)}... (${elapsed})${progressSuffix}${statusSuffix}${escHint}`;
162
+ };
163
+ if (options.outputMode === 'human') {
164
+ spinner = ora({
165
+ text: `Running tool ${chalk.bold(name)}... (0:00)`,
166
+ color: 'cyan',
167
+ }).start();
168
+ timerInterval = setInterval(updateSpinnerText, 1000);
169
+ }
170
+ const onUpdate = (update) => {
171
+ if (update.taskId) {
172
+ capturedTaskId = update.taskId;
173
+ }
174
+ if (update.statusMessage) {
175
+ lastStatusMessage = update.statusMessage;
176
+ }
177
+ if (update.progressMessage) {
178
+ lastProgressMessage = update.progressMessage;
179
+ }
180
+ if (spinner) {
181
+ updateSpinnerText();
182
+ }
183
+ };
184
+ const escListener = setupEscListener(options.outputMode === 'human' && !process.stdin.isRaw, () => !!capturedTaskId);
185
+ try {
186
+ const taskPromise = client.callToolWithTask(name, parsedArgs, onUpdate);
187
+ if (escListener.promise) {
188
+ const raceResult = await Promise.race([
189
+ taskPromise.then((r) => ({ type: 'completed', result: r })),
190
+ escListener.promise.then(() => ({ type: 'detached' })),
191
+ ]);
192
+ escListener.cleanup();
193
+ if (raceResult.type === 'detached') {
194
+ if (timerInterval)
195
+ clearInterval(timerInterval);
196
+ if (spinner) {
197
+ spinner.info(`Detached. Task ${chalk.bold(capturedTaskId)} continues in background`);
198
+ }
199
+ return;
200
+ }
201
+ result = raceResult.result;
202
+ }
203
+ else {
204
+ result = await taskPromise;
205
+ }
206
+ const elapsed = formatElapsed(Date.now() - startTime);
207
+ if (spinner) {
208
+ spinner.succeed(`Tool ${chalk.bold(name)} executed successfully (${elapsed})`);
209
+ }
210
+ }
211
+ catch (error) {
212
+ escListener.cleanup();
213
+ const elapsed = formatElapsed(Date.now() - startTime);
214
+ if (spinner) {
215
+ spinner.fail(`Tool ${chalk.bold(name)} failed (${elapsed})`);
216
+ }
217
+ throw error;
218
+ }
219
+ finally {
220
+ if (timerInterval)
221
+ clearInterval(timerInterval);
222
+ }
223
+ }
224
+ else {
225
+ result = await client.callTool(name, parsedArgs);
226
+ if (options.outputMode === 'human') {
227
+ console.log(formatSuccess(`Tool ${name} executed successfully`));
228
+ }
229
+ }
83
230
  if (options.outputMode === 'human') {
84
- console.log(formatSuccess(`Tool ${name} executed successfully`));
85
231
  console.log(formatOutput(result, 'human'));
86
232
  }
87
233
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/cli/commands/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/cli/commands/tools.ts"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,GAGtB,MAAM,+BAA+B,CAAC;AAOvC,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAc,EACd,OAA4C;IAE5C,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;QAC9D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CACT,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE;YAC7C,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACnC,WAAW,EAAE,MAAM;SACpB,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAKD,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAc,EACd,IAAY,EACZ,OAAuB;IAGvB,IAAI,cAAsC,CAAC;IAC3C,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,cAAc,GAAG,CAAC,MAAM,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAe,CAAC;IAC5E,CAAC;IAED,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;QAE9D,IAAI,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC;QACzC,IAAI,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAErD,IAAI,CAAC,IAAI,EAAE,CAAC;YAEV,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3D,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,WAAW,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAGD,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,UAAU,GAAe,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC;YAClE,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAkB,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;YAEtF,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACtB,MAAM,IAAI,WAAW,CAAC,qBAAqB,CAAC,UAAU,EAAE,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC;YAC7E,CAAC;YAGD,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBACrE,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;oBAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAKD,SAAS,aAAa,CAAC,EAAU;IAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAClC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC5F,CAAC;IACD,OAAO,GAAG,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AAC1D,CAAC;AAMD,KAAK,UAAU,aAAa,CAC1B,MAA+C,EAC/C,MAA2B;IAE3B,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAChD,OAAO,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC;AAC9D,CAAC;AAOD,SAAS,gBAAgB,CACvB,OAAgB,EAChB,SAAwB;IAExB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC;IACnB,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,SAAS,GAAG,GAAS,EAAE,GAAE,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,EAAE;QAClD,MAAM,MAAM,GAAG,CAAC,GAAW,EAAQ,EAAE;YACnC,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,SAAS,EAAE,EAAE,CAAC;gBAC1C,SAAS,EAAE,CAAC;gBACZ,OAAO,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEjC,SAAS,GAAG,GAAG,EAAE;YACf,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC;AACjD,CAAC;AAWD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,IAAY,EACZ,OAIC;IAGD,IAAI,UAAmC,CAAC;IAGxC,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAE5C,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;SAAM,IAAI,YAAY,EAAE,EAAE,CAAC;QAE1B,UAAU,GAAG,MAAM,aAAa,EAAE,CAAC;IACrC,CAAC;SAAM,CAAC;QAEN,UAAU,GAAG,EAAE,CAAC;IAClB,CAAC;IAGD,IAAI,cAAsC,CAAC;IAC3C,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,cAAc,GAAG,CAAC,MAAM,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAe,CAAC;IAC5E,CAAC;IAED,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;QAE9D,MAAM,UAAU,GAAe,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC;QAClE,IAAI,cAAc,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAE7D,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,WAAW,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,UAAU,GAAG,kBAAkB,CACnC,UAAwB,EACxB,cAAc,EACd,UAAU,EACV,UAAU,CACX,CAAC;YAEF,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACtB,MAAM,IAAI,WAAW,CAAC,qBAAqB,CAAC,UAAU,EAAE,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC;YAC7E,CAAC;YAGD,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBACrE,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;oBAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;QACH,CAAC;QAGD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;QAErD,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAG3D,IAAI,aAAa,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CACT,aAAa,CAAC,sEAAsE,CAAC,CACtF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC;QAEX,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAE9B,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAEnE,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,iBAAiB,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;YAC9F,CAAC;YACD,OAAO;QACT,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YAEnB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,OAAO,GAAkC,IAAI,CAAC;YAClD,IAAI,aAAa,GAA0C,IAAI,CAAC;YAChE,IAAI,iBAAqC,CAAC;YAC1C,IAAI,mBAAuC,CAAC;YAC5C,IAAI,cAAkC,CAAC;YAEvC,MAAM,iBAAiB,GAAG,GAAS,EAAE;gBACnC,IAAI,CAAC,OAAO;oBAAE,OAAO;gBACrB,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;gBACtD,MAAM,cAAc,GAAG,mBAAmB,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvF,MAAM,YAAY,GAChB,CAAC,mBAAmB,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtF,MAAM,OAAO,GACX,cAAc,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClF,OAAO,CAAC,IAAI,GAAG,gBAAgB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,OAAO,IAAI,cAAc,GAAG,YAAY,GAAG,OAAO,EAAE,CAAC;YAC9G,CAAC,CAAC;YAEF,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBACnC,OAAO,GAAG,GAAG,CAAC;oBACZ,IAAI,EAAE,gBAAgB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY;oBAClD,KAAK,EAAE,MAAM;iBACd,CAAC,CAAC,KAAK,EAAE,CAAC;gBACX,aAAa,GAAG,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YACvD,CAAC;YAED,MAAM,QAAQ,GAAG,CAAC,MAAkB,EAAQ,EAAE;gBAC5C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClB,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;gBACjC,CAAC;gBACD,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;oBACzB,iBAAiB,GAAG,MAAM,CAAC,aAAa,CAAC;gBAC3C,CAAC;gBACD,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;oBAC3B,mBAAmB,GAAG,MAAM,CAAC,eAAe,CAAC;gBAC/C,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,iBAAiB,EAAE,CAAC;gBACtB,CAAC;YACH,CAAC,CAAC;YAGF,MAAM,WAAW,GAAG,gBAAgB,CAClC,OAAO,CAAC,UAAU,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EACtD,GAAG,EAAE,CAAC,CAAC,CAAC,cAAc,CACvB,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAExE,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACxB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;wBACpC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,WAAoB,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;wBACpE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,CAAC,CAAC;qBAChE,CAAC,CAAC;oBAEH,WAAW,CAAC,OAAO,EAAE,CAAC;oBAEtB,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBACnC,IAAI,aAAa;4BAAE,aAAa,CAAC,aAAa,CAAC,CAAC;wBAChD,IAAI,OAAO,EAAE,CAAC;4BACZ,OAAO,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,cAAe,CAAC,0BAA0B,CAAC,CAAC;wBACxF,CAAC;wBACD,OAAO;oBACT,CAAC;oBAED,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,MAAM,WAAW,CAAC;gBAC7B,CAAC;gBAED,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;gBACtD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,OAAO,GAAG,CAAC,CAAC;gBACjF,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,WAAW,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;gBACtD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,OAAO,GAAG,CAAC,CAAC;gBAC/D,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;oBAAS,CAAC;gBACT,IAAI,aAAa;oBAAE,aAAa,CAAC,aAAa,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;aAAM,CAAC;YAEN,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,IAAI,wBAAwB,CAAC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/x402.ts"],"names":[],"mappings":"AAqOA,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyErE"}
1
+ {"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/x402.ts"],"names":[],"mappings":"AAqOA,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwFrE"}
@@ -141,8 +141,22 @@ async function signPaymentCommand(options) {
141
141
  }
142
142
  export async function handleX402Command(args) {
143
143
  const program = new Command();
144
- program.name('mcpc x402').description('x402 wallet management and payment signing');
145
- program.option('-j, --json', 'Output in JSON format').option('--verbose', 'Enable debug logging');
144
+ program
145
+ .name('mcpc x402')
146
+ .description('x402 wallet management and payment signing (EXPERIMENTAL)');
147
+ program.configureHelp({
148
+ styleTitle: (str) => chalk.bold(str),
149
+ styleSubcommandText: (str) => chalk.cyan(str),
150
+ });
151
+ program
152
+ .option('-j, --json', 'Output in JSON format')
153
+ .option('--verbose', 'Enable debug logging')
154
+ .helpOption('-h, --help', 'Display help')
155
+ .helpCommand('help [command]', 'Display help for command')
156
+ .addHelpText('after', `
157
+ ${chalk.bold('sign options:')}
158
+ --amount <usd> Override amount in USD
159
+ --expiry <seconds> Override expiry in seconds`);
146
160
  const resolveOutputMode = (cmd) => {
147
161
  const opts = cmd.optsWithGlobals();
148
162
  return opts.json ? 'json' : 'human';
@@ -172,14 +186,14 @@ export async function handleX402Command(args) {
172
186
  await removeWalletCmd({ outputMode: resolveOutputMode(cmd) });
173
187
  });
174
188
  program
175
- .command('sign')
189
+ .command('sign <payment-required>')
176
190
  .description('Sign a payment using the wallet')
177
- .requiredOption('-r, --payment-required <base64>', 'PAYMENT-REQUIRED header from a 402 response')
191
+ .helpOption('-h, --help', 'Display help')
178
192
  .option('--amount <usd>', 'Override amount in USD')
179
193
  .option('--expiry <seconds>', 'Override expiry in seconds')
180
- .action(async (opts, cmd) => {
194
+ .action(async (paymentRequired, opts, cmd) => {
181
195
  await signPaymentCommand({
182
- paymentRequired: opts.paymentRequired,
196
+ paymentRequired,
183
197
  amount: opts.amount,
184
198
  expiry: opts.expiry,
185
199
  outputMode: resolveOutputMode(cmd),
@@ -1 +1 @@
1
- {"version":3,"file":"x402.js","sourceRoot":"","sources":["../../../src/cli/commands/x402.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"x402.js","sourceRoot":"","sources":["../../../src/cli/commands/x402.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { IMcpClient, OutputMode, ServerConfig } from '../lib/types.js';
2
- export declare function resolveAuthProfile(serverUrl: string, target: string, specifiedProfile?: string, context?: {
2
+ export declare function resolveAuthProfile(serverUrl: string, target: string, specifiedProfile?: string, _context?: {
3
3
  sessionName?: string;
4
4
  }): Promise<string | undefined>;
5
5
  export declare function resolveTarget(target: string, options?: {
@@ -16,12 +16,8 @@ export interface McpClientContext {
16
16
  }
17
17
  export declare function withMcpClient<T>(target: string, options: {
18
18
  outputMode?: OutputMode;
19
- config?: string;
20
- headers?: string[];
21
- timeout?: number;
22
19
  verbose?: boolean;
23
20
  hideTarget?: boolean;
24
- profile?: string;
25
- x402?: boolean;
21
+ timeout?: number;
26
22
  }, callback: (client: IMcpClient, context: McpClientContext) => Promise<T>): Promise<T>;
27
23
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/cli/helpers.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAsG5E,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,EACzB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACjC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA6C7B;AAWD,wBAAsB,aAAa,CACjC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GACL,OAAO,CAAC,YAAY,CAAC,CAmDvB;AAKD,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;CACzC;AAYD,wBAAsB,aAAa,CAAC,CAAC,EACnC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IACP,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,EACD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,GACtE,OAAO,CAAC,CAAC,CAAC,CAyJZ"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/cli/helpers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAwB5E,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,EACzB,QAAQ,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAClC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA4B7B;AAWD,wBAAsB,aAAa,CACjC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GACL,OAAO,CAAC,YAAY,CAAC,CAiDvB;AAKD,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;CACzC;AAUD,wBAAsB,aAAa,CAAC,CAAC,EACnC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IACP,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EACD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,GACtE,OAAO,CAAC,CAAC,CAAC,CAkCZ"}
@@ -1,72 +1,20 @@
1
- import { createMcpClient } from '../core/factory.js';
2
- import { ClientError, NetworkError, AuthError, McpError, isAuthenticationError, createServerAuthError, } from '../lib/errors.js';
1
+ import { ClientError } from '../lib/errors.js';
3
2
  import { normalizeServerUrl, isValidSessionName, getServerHost } from '../lib/utils.js';
4
3
  import { setVerbose, createLogger } from '../lib/logger.js';
5
4
  import { loadConfig, getServerConfig, validateServerConfig } from '../lib/config.js';
6
- import { OAuthProvider } from '../lib/auth/oauth-provider.js';
7
- import { OAuthTokenManager } from '../lib/auth/oauth-token-manager.js';
8
- import { getAuthProfile, listAuthProfiles } from '../lib/auth/profiles.js';
9
- import { readKeychainOAuthTokenInfo, readKeychainOAuthClientInfo } from '../lib/auth/keychain.js';
5
+ import { getAuthProfile } from '../lib/auth/profiles.js';
10
6
  import { logTarget } from './output.js';
11
- import { getWallet } from '../lib/wallets.js';
12
- import { createX402FetchMiddleware } from '../lib/x402/fetch-middleware.js';
13
- import { createRequire } from 'module';
14
- const { version: mcpcVersion } = createRequire(import.meta.url)('../../package.json');
15
7
  import { DEFAULT_AUTH_PROFILE } from '../lib/auth/oauth-utils.js';
16
8
  import { parseHeaderFlags } from './parser.js';
17
9
  const logger = createLogger('cli');
18
- async function createAuthProviderForServer(url, profileName = DEFAULT_AUTH_PROFILE) {
19
- try {
20
- const profile = await getAuthProfile(url, profileName);
21
- if (!profile) {
22
- logger.debug(`No auth profile found for ${url} (profile: ${profileName})`);
23
- return undefined;
24
- }
25
- const tokens = await readKeychainOAuthTokenInfo(url, profileName);
26
- if (!tokens?.refreshToken) {
27
- logger.debug(`No refresh token in keychain for profile: ${profileName}`);
28
- return undefined;
29
- }
30
- const clientInfo = await readKeychainOAuthClientInfo(url, profileName);
31
- if (!clientInfo?.clientId) {
32
- logger.warn(`OAuth client ID not found in keychain for profile: ${profileName}`);
33
- return undefined;
34
- }
35
- const tokenManagerOptions = {
36
- serverUrl: url,
37
- profileName,
38
- clientId: clientInfo.clientId,
39
- refreshToken: tokens.refreshToken,
40
- accessToken: tokens.accessToken,
41
- };
42
- if (tokens.expiresAt !== undefined) {
43
- tokenManagerOptions.accessTokenExpiresAt = tokens.expiresAt;
44
- }
45
- const tokenManager = new OAuthTokenManager(tokenManagerOptions);
46
- logger.debug(`Created OAuthProvider for profile: ${profileName}`);
47
- return new OAuthProvider({
48
- serverUrl: url,
49
- profileName,
50
- tokenManager,
51
- clientId: clientInfo.clientId,
52
- });
53
- }
54
- catch (error) {
55
- if (error instanceof AuthError) {
56
- throw error;
57
- }
58
- logger.warn(`Failed to create auth provider: ${error.message}`);
59
- return undefined;
60
- }
61
- }
62
- export async function resolveAuthProfile(serverUrl, target, specifiedProfile, context) {
10
+ export async function resolveAuthProfile(serverUrl, target, specifiedProfile, _context) {
63
11
  const host = getServerHost(serverUrl);
64
12
  if (specifiedProfile) {
65
13
  const profile = await getAuthProfile(serverUrl, specifiedProfile);
66
14
  if (!profile) {
67
15
  throw new ClientError(`Authentication profile "${specifiedProfile}" not found for ${host}.\n\n` +
68
16
  `To create this profile, run:\n` +
69
- ` mcpc ${target} login --profile ${specifiedProfile}`);
17
+ ` mcpc login ${target} --profile ${specifiedProfile}`);
70
18
  }
71
19
  return specifiedProfile;
72
20
  }
@@ -75,22 +23,8 @@ export async function resolveAuthProfile(serverUrl, target, specifiedProfile, co
75
23
  logger.debug(`Using default auth profile for ${host}`);
76
24
  return DEFAULT_AUTH_PROFILE;
77
25
  }
78
- const allProfiles = await listAuthProfiles();
79
- const serverProfiles = allProfiles.filter((p) => getServerHost(p.serverUrl) === host);
80
- if (serverProfiles.length === 0) {
81
- logger.debug(`No auth profiles for ${host}, attempting unauthenticated connection`);
82
- return undefined;
83
- }
84
- else {
85
- const profileNames = serverProfiles.map((p) => p.name).join(', ');
86
- const commandHint = context?.sessionName
87
- ? `mcpc ${target} connect ${context.sessionName} --profile <name>`
88
- : `mcpc ${target} <command> --profile <name>`;
89
- throw new ClientError(`No default authentication profile for ${host}.\n\n` +
90
- `Available profiles: ${profileNames}\n\n` +
91
- `To use a profile, run:\n` +
92
- ` ${commandHint}`);
93
- }
26
+ logger.debug(`No default auth profile for ${host}, attempting unauthenticated connection`);
27
+ return undefined;
94
28
  }
95
29
  export async function resolveTarget(target, options = {}) {
96
30
  if (options.verbose) {
@@ -118,10 +52,7 @@ export async function resolveTarget(target, options = {}) {
118
52
  }
119
53
  catch (error) {
120
54
  throw new ClientError(`Failed to resolve target: ${target}\n` +
121
- `Target must be one of:\n` +
122
- ` - Named session (@name)\n` +
123
- ` - Server URL (e.g., mcp.apify.com or https://mcp.apify.com)\n` +
124
- ` - Entry in JSON config file specified by --config flag\n\n` +
55
+ `Target must be a server URL (e.g., mcp.apify.com or https://mcp.apify.com)\n\n` +
125
56
  `Error: ${error.message}`);
126
57
  }
127
58
  const headers = parseHeaderFlags(options.headers);
@@ -132,117 +63,28 @@ export async function resolveTarget(target, options = {}) {
132
63
  };
133
64
  }
134
65
  export async function withMcpClient(target, options, callback) {
135
- if (isValidSessionName(target)) {
136
- const { withSessionClient } = await import('../lib/session-client.js');
137
- const { getSession } = await import('../lib/sessions.js');
138
- logger.debug('Using session:', target);
139
- const session = await getSession(target);
140
- const context = {
141
- sessionName: session?.name,
142
- profileName: session?.profileName,
143
- serverConfig: session?.server,
144
- };
145
- if (options.outputMode) {
146
- await logTarget(target, {
147
- outputMode: options.outputMode,
148
- hide: options.hideTarget,
149
- });
150
- }
151
- return await withSessionClient(target, (client) => callback(client, context));
152
- }
153
- const serverConfig = await resolveTarget(target, options);
154
- logger.debug('Resolved target:', { target, serverConfig });
155
- const clientConfig = {
156
- clientInfo: { name: 'mcpc', version: mcpcVersion },
157
- serverConfig,
158
- capabilities: {
159
- roots: { listChanged: true },
160
- sampling: {},
161
- },
162
- autoConnect: true,
66
+ if (!isValidSessionName(target)) {
67
+ throw new ClientError(`Invalid session name: ${target}\n` +
68
+ `Session names must start with @ (e.g. @apify).\n\n` +
69
+ `To create a session, run:\n` +
70
+ ` mcpc connect <server> @my-session`);
71
+ }
72
+ const { withSessionClient } = await import('../lib/session-client.js');
73
+ const { getSession } = await import('../lib/sessions.js');
74
+ logger.debug('Using session:', target);
75
+ const session = await getSession(target);
76
+ const context = {
77
+ sessionName: session?.name,
78
+ profileName: session?.profileName,
79
+ serverConfig: session?.server,
163
80
  };
164
- if (options.verbose) {
165
- clientConfig.verbose = true;
166
- }
167
- let profileName;
168
- if (serverConfig.url) {
169
- profileName = await resolveAuthProfile(serverConfig.url, target, options.profile);
170
- const authProvider = await createAuthProviderForServer(serverConfig.url, profileName);
171
- if (authProvider) {
172
- clientConfig.authProvider = authProvider;
173
- logger.debug(`Using auth profile: ${profileName}`);
174
- }
175
- if (options.x402) {
176
- const wallet = await getWallet();
177
- if (!wallet) {
178
- throw new ClientError('x402 wallet not found. Create one with: mcpc x402 init');
179
- }
180
- logger.debug(`Using x402 wallet: ${wallet.address}`);
181
- clientConfig.customFetch = createX402FetchMiddleware(fetch, {
182
- wallet: { privateKey: wallet.privateKey, address: wallet.address },
183
- });
184
- }
185
- }
186
- let client;
187
- try {
188
- client = await createMcpClient(clientConfig);
189
- }
190
- catch (error) {
191
- const errorMessage = error.message || '';
192
- if (isAuthenticationError(errorMessage)) {
193
- throw createServerAuthError(target, { originalError: error });
194
- }
195
- if (error instanceof NetworkError) {
196
- const serverUrl = serverConfig.url ?? target;
197
- const causeMsg = error.message.replace(/^Failed to connect to MCP server: /, '');
198
- throw new NetworkError(`Failed to connect to MCP server "${serverUrl}": ${causeMsg}`, error.details);
199
- }
200
- if (error instanceof McpError)
201
- throw error;
202
- throw new NetworkError(`Failed to connect to ${serverConfig.url ?? target}: ${errorMessage}`, {
203
- originalError: error,
204
- });
205
- }
206
- try {
207
- logger.debug('Connected successfully');
208
- if (options.outputMode) {
209
- const serverDetails = await client.getServerDetails();
210
- await logTarget(target, {
211
- outputMode: options.outputMode,
212
- hide: options.hideTarget,
213
- profileName,
214
- serverConfig,
215
- protocolVersion: serverDetails.protocolVersion,
216
- });
217
- }
218
- const context = { serverConfig, profileName };
219
- const result = await callback(client, context);
220
- return result;
221
- }
222
- catch (error) {
223
- logger.error('MCP operation failed:', error);
224
- if (error instanceof NetworkError ||
225
- error instanceof ClientError ||
226
- error instanceof AuthError) {
227
- throw error;
228
- }
229
- const errorMessage = error.message || '';
230
- if (isAuthenticationError(errorMessage)) {
231
- throw createServerAuthError(target, { originalError: error });
232
- }
233
- throw new NetworkError(`Failed to communicate with MCP server: ${error.message}`, {
234
- originalError: error,
81
+ if (options.outputMode) {
82
+ await logTarget(target, {
83
+ outputMode: options.outputMode,
84
+ hide: options.hideTarget,
235
85
  });
236
86
  }
237
- finally {
238
- try {
239
- logger.debug('Closing connection...');
240
- await client.close();
241
- logger.debug('Connection closed');
242
- }
243
- catch (error) {
244
- logger.warn('Error closing connection:', error);
245
- }
246
- }
87
+ const sessionOpts = options.timeout !== undefined ? { timeout: options.timeout } : undefined;
88
+ return await withSessionClient(target, (client) => callback(client, context), sessionOpts);
247
89
  }
248
90
  //# sourceMappingURL=helpers.js.map