@1mcp/agent 0.30.3 → 0.31.0-beta2

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 (241) hide show
  1. package/README.md +75 -2
  2. package/build/commands/auth/index.d.ts +3 -0
  3. package/build/commands/auth/index.d.ts.map +1 -0
  4. package/build/commands/auth/index.js +47 -0
  5. package/build/commands/auth/index.js.map +1 -0
  6. package/build/commands/auth/login.d.ts +7 -0
  7. package/build/commands/auth/login.d.ts.map +1 -0
  8. package/build/commands/auth/login.js +83 -0
  9. package/build/commands/auth/login.js.map +1 -0
  10. package/build/commands/auth/logout.d.ts +7 -0
  11. package/build/commands/auth/logout.d.ts.map +1 -0
  12. package/build/commands/auth/logout.js +46 -0
  13. package/build/commands/auth/logout.js.map +1 -0
  14. package/build/commands/auth/status.d.ts +6 -0
  15. package/build/commands/auth/status.d.ts.map +1 -0
  16. package/build/commands/auth/status.js +54 -0
  17. package/build/commands/auth/status.js.map +1 -0
  18. package/build/commands/cliSetup/cliSetup.d.ts +12 -0
  19. package/build/commands/cliSetup/cliSetup.d.ts.map +1 -0
  20. package/build/commands/cliSetup/cliSetup.js +49 -0
  21. package/build/commands/cliSetup/cliSetup.js.map +1 -0
  22. package/build/commands/cliSetup/index.d.ts +3 -0
  23. package/build/commands/cliSetup/index.d.ts.map +1 -0
  24. package/build/commands/cliSetup/index.js +52 -0
  25. package/build/commands/cliSetup/index.js.map +1 -0
  26. package/build/commands/cliSetup/setupFiles.d.ts +24 -0
  27. package/build/commands/cliSetup/setupFiles.d.ts.map +1 -0
  28. package/build/commands/cliSetup/setupFiles.js +233 -0
  29. package/build/commands/cliSetup/setupFiles.js.map +1 -0
  30. package/build/commands/inspect/index.d.ts +3 -0
  31. package/build/commands/inspect/index.d.ts.map +1 -0
  32. package/build/commands/inspect/index.js +60 -0
  33. package/build/commands/inspect/index.js.map +1 -0
  34. package/build/commands/inspect/inspect.d.ts +36 -0
  35. package/build/commands/inspect/inspect.d.ts.map +1 -0
  36. package/build/commands/inspect/inspect.js +274 -0
  37. package/build/commands/inspect/inspect.js.map +1 -0
  38. package/build/commands/inspect/inspectUtils.d.ts +76 -0
  39. package/build/commands/inspect/inspectUtils.d.ts.map +1 -0
  40. package/build/commands/inspect/inspectUtils.js +303 -0
  41. package/build/commands/inspect/inspectUtils.js.map +1 -0
  42. package/build/commands/instructions/index.d.ts +3 -0
  43. package/build/commands/instructions/index.d.ts.map +1 -0
  44. package/build/commands/instructions/index.js +34 -0
  45. package/build/commands/instructions/index.js.map +1 -0
  46. package/build/commands/instructions/instructions.d.ts +10 -0
  47. package/build/commands/instructions/instructions.d.ts.map +1 -0
  48. package/build/commands/instructions/instructions.js +86 -0
  49. package/build/commands/instructions/instructions.js.map +1 -0
  50. package/build/commands/instructions/instructionsUtils.d.ts +24 -0
  51. package/build/commands/instructions/instructionsUtils.d.ts.map +1 -0
  52. package/build/commands/instructions/instructionsUtils.js +74 -0
  53. package/build/commands/instructions/instructionsUtils.js.map +1 -0
  54. package/build/commands/mcp/add.d.ts.map +1 -1
  55. package/build/commands/mcp/add.js +21 -2
  56. package/build/commands/mcp/add.js.map +1 -1
  57. package/build/commands/mcp/index.d.ts.map +1 -1
  58. package/build/commands/mcp/index.js +5 -4
  59. package/build/commands/mcp/index.js.map +1 -1
  60. package/build/commands/mcp/list.d.ts.map +1 -1
  61. package/build/commands/mcp/list.js +52 -8
  62. package/build/commands/mcp/list.js.map +1 -1
  63. package/build/commands/mcp/status.d.ts.map +1 -1
  64. package/build/commands/mcp/status.js +59 -26
  65. package/build/commands/mcp/status.js.map +1 -1
  66. package/build/commands/proxy/proxy.d.ts.map +1 -1
  67. package/build/commands/proxy/proxy.js +26 -30
  68. package/build/commands/proxy/proxy.js.map +1 -1
  69. package/build/commands/run/index.d.ts +3 -0
  70. package/build/commands/run/index.d.ts.map +1 -0
  71. package/build/commands/run/index.js +62 -0
  72. package/build/commands/run/index.js.map +1 -0
  73. package/build/commands/run/run.d.ts +35 -0
  74. package/build/commands/run/run.d.ts.map +1 -0
  75. package/build/commands/run/run.js +340 -0
  76. package/build/commands/run/run.js.map +1 -0
  77. package/build/commands/run/runUtils.d.ts +49 -0
  78. package/build/commands/run/runUtils.d.ts.map +1 -0
  79. package/build/commands/run/runUtils.js +195 -0
  80. package/build/commands/run/runUtils.js.map +1 -0
  81. package/build/commands/serve/index.d.ts +0 -22
  82. package/build/commands/serve/index.d.ts.map +1 -1
  83. package/build/commands/serve/index.js +0 -23
  84. package/build/commands/serve/index.js.map +1 -1
  85. package/build/commands/serve/serve.d.ts +23 -23
  86. package/build/commands/serve/serve.d.ts.map +1 -1
  87. package/build/commands/serve/serve.js +67 -51
  88. package/build/commands/serve/serve.js.map +1 -1
  89. package/build/commands/shared/apiClient.d.ts +27 -0
  90. package/build/commands/shared/apiClient.d.ts.map +1 -0
  91. package/build/commands/shared/apiClient.js +96 -0
  92. package/build/commands/shared/apiClient.js.map +1 -0
  93. package/build/commands/shared/authProfileStore.d.ts +16 -0
  94. package/build/commands/shared/authProfileStore.d.ts.map +1 -0
  95. package/build/commands/shared/authProfileStore.js +109 -0
  96. package/build/commands/shared/authProfileStore.js.map +1 -0
  97. package/build/commands/shared/baseConfigUtils.d.ts +15 -1
  98. package/build/commands/shared/baseConfigUtils.d.ts.map +1 -1
  99. package/build/commands/shared/baseConfigUtils.js +171 -40
  100. package/build/commands/shared/baseConfigUtils.js.map +1 -1
  101. package/build/commands/shared/cliContext.d.ts +13 -0
  102. package/build/commands/shared/cliContext.d.ts.map +1 -0
  103. package/build/commands/shared/cliContext.js +71 -0
  104. package/build/commands/shared/cliContext.js.map +1 -0
  105. package/build/commands/shared/commandRunner.d.ts +3 -0
  106. package/build/commands/shared/commandRunner.d.ts.map +1 -0
  107. package/build/commands/shared/commandRunner.js +13 -0
  108. package/build/commands/shared/commandRunner.js.map +1 -0
  109. package/build/commands/shared/serveClient.d.ts +68 -0
  110. package/build/commands/shared/serveClient.d.ts.map +1 -0
  111. package/build/commands/shared/serveClient.js +204 -0
  112. package/build/commands/shared/serveClient.js.map +1 -0
  113. package/build/commands/shared/serveTargetResolver.d.ts +21 -0
  114. package/build/commands/shared/serveTargetResolver.d.ts.map +1 -0
  115. package/build/commands/shared/serveTargetResolver.js +33 -0
  116. package/build/commands/shared/serveTargetResolver.js.map +1 -0
  117. package/build/config/configLoader.d.ts +28 -2
  118. package/build/config/configLoader.d.ts.map +1 -1
  119. package/build/config/configLoader.js +155 -28
  120. package/build/config/configLoader.js.map +1 -1
  121. package/build/config/configManager.d.ts +12 -1
  122. package/build/config/configManager.d.ts.map +1 -1
  123. package/build/config/configManager.js +74 -6
  124. package/build/config/configManager.js.map +1 -1
  125. package/build/config/mcpConfigManager.d.ts +18 -5
  126. package/build/config/mcpConfigManager.d.ts.map +1 -1
  127. package/build/config/mcpConfigManager.js +51 -44
  128. package/build/config/mcpConfigManager.js.map +1 -1
  129. package/build/config/mcpConfigMerge.d.ts +15 -0
  130. package/build/config/mcpConfigMerge.d.ts.map +1 -0
  131. package/build/config/mcpConfigMerge.js +87 -0
  132. package/build/config/mcpConfigMerge.js.map +1 -0
  133. package/build/config/projectConfigLoader.d.ts +9 -0
  134. package/build/config/projectConfigLoader.d.ts.map +1 -1
  135. package/build/config/projectConfigLoader.js +72 -20
  136. package/build/config/projectConfigLoader.js.map +1 -1
  137. package/build/config/templateProcessor.d.ts.map +1 -1
  138. package/build/config/templateProcessor.js +2 -2
  139. package/build/config/templateProcessor.js.map +1 -1
  140. package/build/constants/api.d.ts +6 -0
  141. package/build/constants/api.d.ts.map +1 -1
  142. package/build/constants/api.js +7 -0
  143. package/build/constants/api.js.map +1 -1
  144. package/build/constants/mcp.d.ts +2 -1
  145. package/build/constants/mcp.d.ts.map +1 -1
  146. package/build/constants/mcp.js +2 -1
  147. package/build/constants/mcp.js.map +1 -1
  148. package/build/constants/paths.d.ts +5 -0
  149. package/build/constants/paths.d.ts.map +1 -1
  150. package/build/constants/paths.js +9 -1
  151. package/build/constants/paths.js.map +1 -1
  152. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts +7 -2
  153. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts.map +1 -1
  154. package/build/core/capabilities/lazyLoadingOrchestrator.js +12 -12
  155. package/build/core/capabilities/lazyLoadingOrchestrator.js.map +1 -1
  156. package/build/core/capabilities/metaToolProvider.d.ts +1 -1
  157. package/build/core/capabilities/metaToolProvider.d.ts.map +1 -1
  158. package/build/core/capabilities/metaToolProvider.js +22 -21
  159. package/build/core/capabilities/metaToolProvider.js.map +1 -1
  160. package/build/core/server/connectionResolver.d.ts +4 -0
  161. package/build/core/server/connectionResolver.d.ts.map +1 -1
  162. package/build/core/server/connectionResolver.js +18 -11
  163. package/build/core/server/connectionResolver.js.map +1 -1
  164. package/build/core/server/serverManager.d.ts +4 -0
  165. package/build/core/server/serverManager.d.ts.map +1 -1
  166. package/build/core/server/serverManager.js +6 -0
  167. package/build/core/server/serverManager.js.map +1 -1
  168. package/build/core/tools/handlers/serverManagementHandler.d.ts +7 -2
  169. package/build/core/tools/handlers/serverManagementHandler.d.ts.map +1 -1
  170. package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts +1 -0
  171. package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts.map +1 -1
  172. package/build/core/tools/internal/schemas/discovery.d.ts +3 -3
  173. package/build/core/tools/internal/schemas/index.d.ts +4 -4
  174. package/build/core/tools/internal/schemas/management.d.ts +1 -1
  175. package/build/core/types/transport.d.ts +146 -0
  176. package/build/core/types/transport.d.ts.map +1 -1
  177. package/build/core/types/transport.js +75 -0
  178. package/build/core/types/transport.js.map +1 -1
  179. package/build/globalOptions.d.ts +6 -0
  180. package/build/globalOptions.d.ts.map +1 -1
  181. package/build/globalOptions.js +5 -0
  182. package/build/globalOptions.js.map +1 -1
  183. package/build/index.d.ts +2 -0
  184. package/build/index.d.ts.map +1 -1
  185. package/build/index.js +24 -4
  186. package/build/index.js.map +1 -1
  187. package/build/transport/http/routes/apiRoutes.d.ts +10 -0
  188. package/build/transport/http/routes/apiRoutes.d.ts.map +1 -0
  189. package/build/transport/http/routes/apiRoutes.js +18 -0
  190. package/build/transport/http/routes/apiRoutes.js.map +1 -0
  191. package/build/transport/http/routes/cliTokenRoute.d.ts +4 -0
  192. package/build/transport/http/routes/cliTokenRoute.d.ts.map +1 -0
  193. package/build/transport/http/routes/cliTokenRoute.js +35 -0
  194. package/build/transport/http/routes/cliTokenRoute.js.map +1 -0
  195. package/build/transport/http/routes/inspectHelpers.d.ts +68 -0
  196. package/build/transport/http/routes/inspectHelpers.d.ts.map +1 -0
  197. package/build/transport/http/routes/inspectHelpers.js +141 -0
  198. package/build/transport/http/routes/inspectHelpers.js.map +1 -0
  199. package/build/transport/http/routes/inspectRoutes.d.ts +8 -0
  200. package/build/transport/http/routes/inspectRoutes.d.ts.map +1 -0
  201. package/build/transport/http/routes/inspectRoutes.js +348 -0
  202. package/build/transport/http/routes/inspectRoutes.js.map +1 -0
  203. package/build/transport/http/routes/toolRoutes.d.ts +5 -0
  204. package/build/transport/http/routes/toolRoutes.d.ts.map +1 -0
  205. package/build/transport/http/routes/toolRoutes.js +204 -0
  206. package/build/transport/http/routes/toolRoutes.js.map +1 -0
  207. package/build/transport/http/server.d.ts.map +1 -1
  208. package/build/transport/http/server.js +16 -1
  209. package/build/transport/http/server.js.map +1 -1
  210. package/build/transport/http/utils/contextExtractor.d.ts +5 -1
  211. package/build/transport/http/utils/contextExtractor.d.ts.map +1 -1
  212. package/build/transport/http/utils/contextExtractor.js +75 -12
  213. package/build/transport/http/utils/contextExtractor.js.map +1 -1
  214. package/build/transport/stdioProxyTransport.d.ts +2 -2
  215. package/build/transport/stdioProxyTransport.d.ts.map +1 -1
  216. package/build/transport/stdioProxyTransport.js +11 -75
  217. package/build/transport/stdioProxyTransport.js.map +1 -1
  218. package/build/types/context.d.ts +1 -0
  219. package/build/types/context.d.ts.map +1 -1
  220. package/build/types/context.js.map +1 -1
  221. package/build/utils/cli/normalizedArgv.d.ts +3 -0
  222. package/build/utils/cli/normalizedArgv.d.ts.map +1 -0
  223. package/build/utils/cli/normalizedArgv.js +9 -0
  224. package/build/utils/cli/normalizedArgv.js.map +1 -0
  225. package/build/utils/context/contextHash.d.ts +11 -0
  226. package/build/utils/context/contextHash.d.ts.map +1 -0
  227. package/build/utils/context/contextHash.js +37 -0
  228. package/build/utils/context/contextHash.js.map +1 -0
  229. package/build/utils/typeGuards.d.ts +2 -0
  230. package/build/utils/typeGuards.d.ts.map +1 -0
  231. package/build/utils/typeGuards.js +4 -0
  232. package/build/utils/typeGuards.js.map +1 -0
  233. package/build/utils/urlUtils.d.ts +2 -0
  234. package/build/utils/urlUtils.d.ts.map +1 -0
  235. package/build/utils/urlUtils.js +4 -0
  236. package/build/utils/urlUtils.js.map +1 -0
  237. package/build/utils/validation/urlDetection.d.ts +1 -0
  238. package/build/utils/validation/urlDetection.d.ts.map +1 -1
  239. package/build/utils/validation/urlDetection.js +10 -4
  240. package/build/utils/validation/urlDetection.js.map +1 -1
  241. package/package.json +6 -4
@@ -0,0 +1,76 @@
1
+ import type { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ import type { ParsedToolReference } from '../../commands/run/runUtils.js';
3
+ export type InspectOutputFormat = 'text' | 'json' | 'toon';
4
+ export interface InspectArgumentInfo {
5
+ name: string;
6
+ required: boolean;
7
+ type: string;
8
+ description?: string;
9
+ defaultValue?: unknown;
10
+ enumValues?: unknown[];
11
+ }
12
+ export interface InspectToolInfo {
13
+ kind: 'tool';
14
+ server: string;
15
+ tool: string;
16
+ qualifiedName: string;
17
+ description?: string;
18
+ inputSchema: Record<string, unknown>;
19
+ outputSchema?: Record<string, unknown>;
20
+ fromCache?: boolean;
21
+ requiredArgs: InspectArgumentInfo[];
22
+ optionalArgs: InspectArgumentInfo[];
23
+ examples: unknown[];
24
+ }
25
+ export interface InspectServerToolSummary {
26
+ tool: string;
27
+ qualifiedName: string;
28
+ description?: string;
29
+ requiredArgs: number;
30
+ optionalArgs: number;
31
+ }
32
+ export interface InspectServerInfo {
33
+ kind: 'server';
34
+ server: string;
35
+ type?: string;
36
+ status?: string;
37
+ available?: boolean;
38
+ instructions?: string | null;
39
+ tools: InspectServerToolSummary[];
40
+ totalTools?: number;
41
+ hasMore?: boolean;
42
+ nextCursor?: string;
43
+ fromCache?: boolean;
44
+ }
45
+ export interface InspectServerSummary {
46
+ server: string;
47
+ type?: string;
48
+ status?: string;
49
+ available?: boolean;
50
+ toolCount: number;
51
+ hasInstructions: boolean;
52
+ }
53
+ export interface InspectServersInfo {
54
+ kind: 'servers';
55
+ instructions?: string | null;
56
+ servers: InspectServerSummary[];
57
+ serverInstructions?: Record<string, string>;
58
+ }
59
+ export type InspectResult = InspectToolInfo | InspectServerInfo | InspectServersInfo;
60
+ export type InspectTarget = {
61
+ kind: 'tool';
62
+ reference: ParsedToolReference;
63
+ } | {
64
+ kind: 'server';
65
+ serverName: string;
66
+ } | {
67
+ kind: 'all';
68
+ };
69
+ export declare class InspectCommandError extends Error {
70
+ constructor(message?: string);
71
+ }
72
+ export declare function parseInspectTarget(value: string | undefined): InspectTarget;
73
+ export declare function extractInspectToolInfo(tool: Tool, reference: ParsedToolReference, fromCache?: boolean): InspectToolInfo;
74
+ export declare function extractInspectServerInfo(serverName: string, tools: Tool[], fromCache?: boolean, instructions?: string | null): InspectServerInfo;
75
+ export declare function formatInspectOutput(result: InspectResult, format: InspectOutputFormat): string;
76
+ //# sourceMappingURL=inspectUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspectUtils.d.ts","sourceRoot":"","sources":["../../../src/commands/inspect/inspectUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,303 @@
1
+ import { encode } from '@toon-format/toon';
2
+ import { MCP_URI_SEPARATOR } from '../../constants.js';
3
+ import { buildUri, parseUri } from '../../utils/core/parsing.js';
4
+ import { isPlainObject } from '../../utils/typeGuards.js';
5
+ import chalk from 'chalk';
6
+ export class InspectCommandError extends Error {
7
+ constructor(message) {
8
+ super(message);
9
+ this.name = 'InspectCommandError';
10
+ Object.setPrototypeOf(this, InspectCommandError.prototype);
11
+ }
12
+ }
13
+ export function parseInspectTarget(value) {
14
+ if (value === undefined || value.trim() === '') {
15
+ return { kind: 'all' };
16
+ }
17
+ const trimmed = value.trim();
18
+ if (!trimmed.includes('/')) {
19
+ return {
20
+ kind: 'server',
21
+ serverName: trimmed,
22
+ };
23
+ }
24
+ const parts = trimmed.split('/');
25
+ if (parts.length !== 2 || parts.some((part) => part.trim().length === 0)) {
26
+ throw new InspectCommandError('Inspect target must be <server> or <server>/<tool>.');
27
+ }
28
+ const [serverName, toolName] = parts.map((part) => part.trim());
29
+ return {
30
+ kind: 'tool',
31
+ reference: {
32
+ serverName,
33
+ toolName,
34
+ qualifiedName: buildUri(serverName, toolName, MCP_URI_SEPARATOR),
35
+ },
36
+ };
37
+ }
38
+ export function extractInspectToolInfo(tool, reference, fromCache) {
39
+ const inputSchema = getSchemaObject(tool.inputSchema);
40
+ const outputSchema = getOptionalSchemaObject(tool.outputSchema);
41
+ const args = collectInspectArguments(inputSchema);
42
+ return {
43
+ kind: 'tool',
44
+ server: reference.serverName,
45
+ tool: reference.toolName,
46
+ qualifiedName: reference.qualifiedName,
47
+ description: tool.description,
48
+ inputSchema,
49
+ outputSchema,
50
+ fromCache,
51
+ requiredArgs: args.filter((arg) => arg.required),
52
+ optionalArgs: args.filter((arg) => !arg.required),
53
+ examples: getExamples(tool),
54
+ };
55
+ }
56
+ export function extractInspectServerInfo(serverName, tools, fromCache, instructions) {
57
+ const summaries = tools
58
+ .filter((tool) => getServerName(tool) === serverName)
59
+ .map((tool) => {
60
+ const args = collectInspectArguments(getSchemaObject(tool.inputSchema));
61
+ return {
62
+ tool: getToolName(tool),
63
+ qualifiedName: tool.name,
64
+ description: tool.description,
65
+ requiredArgs: args.filter((arg) => arg.required).length,
66
+ optionalArgs: args.filter((arg) => !arg.required).length,
67
+ };
68
+ })
69
+ .sort((left, right) => left.tool.localeCompare(right.tool));
70
+ return {
71
+ kind: 'server',
72
+ server: serverName,
73
+ instructions,
74
+ tools: summaries,
75
+ fromCache,
76
+ };
77
+ }
78
+ export function formatInspectOutput(result, format) {
79
+ if (format === 'json') {
80
+ return JSON.stringify(result, null, 2);
81
+ }
82
+ if (format === 'toon') {
83
+ return encode(result);
84
+ }
85
+ if (result.kind === 'servers')
86
+ return formatServersOutput(result);
87
+ if (result.kind === 'server')
88
+ return formatServerOutput(result);
89
+ return formatToolOutput(result);
90
+ }
91
+ function formatServersOutput(info) {
92
+ if (info.servers.length === 0) {
93
+ return 'No servers available.';
94
+ }
95
+ const serverLines = [chalk.bold('servers:')];
96
+ const sections = [chalk.bold.cyan('Inspect: Servers'), `count: ${info.servers.length}`];
97
+ if (info.instructions !== undefined) {
98
+ sections.push(info.instructions
99
+ ? `${chalk.bold('instructions:')}\n\`\`\`\n${info.instructions}\n\`\`\``
100
+ : `${chalk.bold('instructions:')}\n${chalk.dim('(none)')}`);
101
+ }
102
+ for (const s of info.servers) {
103
+ serverLines.push(``);
104
+ serverLines.push(`- server: ${chalk.bold(s.server)}`);
105
+ if (s.type) {
106
+ serverLines.push(` type: ${chalk.dim(s.type)}`);
107
+ }
108
+ if (s.status) {
109
+ const status = s.status === 'connected'
110
+ ? chalk.green(s.status)
111
+ : s.status === 'disconnected'
112
+ ? chalk.red(s.status)
113
+ : chalk.yellow(s.status);
114
+ serverLines.push(` status: ${status}`);
115
+ }
116
+ if (s.available !== undefined) {
117
+ serverLines.push(` available: ${s.available ? 'yes' : 'no'}`);
118
+ }
119
+ serverLines.push(` tools: ${s.toolCount}`);
120
+ serverLines.push(` instructions: ${s.hasInstructions ? 'yes' : 'no'}`);
121
+ }
122
+ sections.push(serverLines.join('\n'));
123
+ return sections.join('\n\n');
124
+ }
125
+ function formatToolOutput(toolInfo) {
126
+ const sections = [
127
+ chalk.bold.cyan('Inspect: Tool'),
128
+ [`server: ${toolInfo.server}`, `tool: ${toolInfo.tool}`, `qualified_name: ${toolInfo.qualifiedName}`].join('\n'),
129
+ ];
130
+ if (toolInfo.description) {
131
+ sections.push(`${chalk.bold('description:')}\n${indentBlock(toolInfo.description, 2)}`);
132
+ }
133
+ sections.push(formatArgumentSection('Required args', toolInfo.requiredArgs));
134
+ sections.push(formatArgumentSection('Optional args', toolInfo.optionalArgs));
135
+ if (toolInfo.outputSchema) {
136
+ sections.push(formatOutputSchemaSection(toolInfo.outputSchema));
137
+ }
138
+ if (toolInfo.fromCache !== undefined) {
139
+ const cacheValue = toolInfo.fromCache ? chalk.green('hit') : chalk.yellow('miss');
140
+ sections.push(`schema_cache: ${cacheValue}`);
141
+ }
142
+ if (toolInfo.examples.length > 0) {
143
+ sections.push(`${chalk.bold('examples:')}\n${toolInfo.examples.map((example) => `- ${JSON.stringify(example)}`).join('\n')}`);
144
+ }
145
+ return sections.join('\n\n');
146
+ }
147
+ function formatServerOutput(serverInfo) {
148
+ const totalTools = serverInfo.totalTools ?? serverInfo.tools.length;
149
+ const summaryLines = [`server: ${serverInfo.server}`, `tools_total: ${totalTools}`];
150
+ if (serverInfo.type) {
151
+ summaryLines.push(`type: ${serverInfo.type}`);
152
+ }
153
+ if (serverInfo.status) {
154
+ const status = serverInfo.status === 'connected'
155
+ ? chalk.green(serverInfo.status)
156
+ : serverInfo.status === 'disconnected'
157
+ ? chalk.red(serverInfo.status)
158
+ : chalk.yellow(serverInfo.status);
159
+ summaryLines.push(`status: ${status}`);
160
+ }
161
+ if (serverInfo.available !== undefined) {
162
+ summaryLines.push(`available: ${serverInfo.available ? 'yes' : 'no'}`);
163
+ }
164
+ const sections = [chalk.bold.cyan('Inspect: Server'), summaryLines.join('\n')];
165
+ sections.push(chalk.bold(`tools (${totalTools}):`));
166
+ sections.push(serverInfo.tools
167
+ .map((tool) => {
168
+ const lines = [
169
+ ``,
170
+ `- tool: ${chalk.yellow(tool.tool)}`,
171
+ ` required_args: ${tool.requiredArgs}`,
172
+ ` optional_args: ${tool.optionalArgs}`,
173
+ ];
174
+ if (tool.description) {
175
+ lines.push(` description: ${tool.description}`);
176
+ }
177
+ return lines.join('\n');
178
+ })
179
+ .join('\n'));
180
+ if (serverInfo.hasMore) {
181
+ const hint = serverInfo.nextCursor
182
+ ? `Use --cursor ${serverInfo.nextCursor} to see more, or --all to fetch everything.`
183
+ : 'Use --all to fetch all tools.';
184
+ sections.push(chalk.dim(`pagination: showing ${serverInfo.tools.length} of ${totalTools} tools. ${hint.trim()}`));
185
+ }
186
+ if (serverInfo.fromCache !== undefined) {
187
+ const cacheValue = serverInfo.fromCache ? chalk.green('hit') : chalk.yellow('miss');
188
+ sections.push(`schema_cache: ${cacheValue}`);
189
+ }
190
+ return sections.join('\n\n');
191
+ }
192
+ function formatArgumentSection(title, args) {
193
+ if (args.length === 0) {
194
+ return `${chalk.bold(`${toSectionKey(title)}:`)}\n${chalk.dim('(none)')}`;
195
+ }
196
+ return `${chalk.bold(`${toSectionKey(title)}:`)}\n${args.map(formatArgumentLine).join('\n')}`;
197
+ }
198
+ function formatOutputSchemaSection(outputSchema) {
199
+ const schemaObject = getSchemaObject(outputSchema);
200
+ const fields = collectInspectArguments(schemaObject);
201
+ if (fields.length > 0) {
202
+ const lines = [chalk.bold('output_schema:')];
203
+ const requiredFields = fields.filter((field) => field.required);
204
+ const optionalFields = fields.filter((field) => !field.required);
205
+ lines.push(indentBlock(formatArgumentSection('Required fields', requiredFields), 2));
206
+ lines.push('');
207
+ lines.push(indentBlock(formatArgumentSection('Optional fields', optionalFields), 2));
208
+ return lines.join('\n');
209
+ }
210
+ const schemaType = summarizeSchemaType(schemaObject);
211
+ return `${chalk.bold('output_schema:')}\n type=${chalk.dim(schemaType)}`;
212
+ }
213
+ function formatArgumentLine(arg) {
214
+ const details = [`type=${chalk.dim(arg.type)}`];
215
+ if (arg.enumValues && arg.enumValues.length > 0) {
216
+ details.push(`enum=${chalk.dim(arg.enumValues.map((value) => String(value)).join(' | '))}`);
217
+ }
218
+ if (arg.defaultValue !== undefined) {
219
+ details.push(`default=${chalk.dim(JSON.stringify(arg.defaultValue))}`);
220
+ }
221
+ const lines = [``, `- name: ${chalk.yellow(arg.name)}`, ` ${details.join(chalk.dim(' '))}`];
222
+ if (arg.description) {
223
+ lines.push(` description: ${arg.description}`);
224
+ }
225
+ return lines.join('\n');
226
+ }
227
+ function toSectionKey(title) {
228
+ return title.toLowerCase().replace(/\s+/g, '_');
229
+ }
230
+ function indentBlock(value, spaces) {
231
+ const prefix = ' '.repeat(spaces);
232
+ return value
233
+ .split('\n')
234
+ .map((line) => `${prefix}${line}`)
235
+ .join('\n');
236
+ }
237
+ function collectInspectArguments(inputSchema) {
238
+ const schemaObject = getSchemaObject(inputSchema);
239
+ const properties = isPlainObject(schemaObject.properties) ? schemaObject.properties : {};
240
+ const requiredSet = new Set(Array.isArray(schemaObject.required)
241
+ ? schemaObject.required.filter((value) => typeof value === 'string' && value.length > 0)
242
+ : []);
243
+ return Object.entries(properties).map(([name, value]) => {
244
+ const propertySchema = getSchemaObject(value);
245
+ return {
246
+ name,
247
+ required: requiredSet.has(name),
248
+ type: summarizeSchemaType(propertySchema),
249
+ description: typeof propertySchema.description === 'string' ? propertySchema.description : undefined,
250
+ defaultValue: propertySchema.default,
251
+ enumValues: Array.isArray(propertySchema.enum) ? propertySchema.enum : undefined,
252
+ };
253
+ });
254
+ }
255
+ function summarizeSchemaType(schema) {
256
+ if (Array.isArray(schema.type)) {
257
+ const types = schema.type.filter((value) => typeof value === 'string');
258
+ return types.length > 0 ? types.join(' | ') : 'unknown';
259
+ }
260
+ if (typeof schema.type === 'string') {
261
+ if (schema.type === 'array') {
262
+ const items = getOptionalSchemaObject(schema.items);
263
+ if (items?.type && typeof items.type === 'string') {
264
+ return `array<${items.type}>`;
265
+ }
266
+ }
267
+ return schema.type;
268
+ }
269
+ if (Array.isArray(schema.enum) && schema.enum.length > 0) {
270
+ return schema.enum.every((value) => typeof value === 'string') ? 'string' : 'enum';
271
+ }
272
+ return 'unknown';
273
+ }
274
+ function getExamples(schema) {
275
+ if (!isPlainObject(schema) || !('examples' in schema)) {
276
+ return [];
277
+ }
278
+ const examples = schema.examples;
279
+ return Array.isArray(examples) ? examples : [];
280
+ }
281
+ function getSchemaObject(value) {
282
+ return isPlainObject(value) ? value : {};
283
+ }
284
+ function getOptionalSchemaObject(value) {
285
+ return isPlainObject(value) ? value : undefined;
286
+ }
287
+ function getServerName(tool) {
288
+ try {
289
+ return parseUri(tool.name, MCP_URI_SEPARATOR).clientName;
290
+ }
291
+ catch {
292
+ return '';
293
+ }
294
+ }
295
+ function getToolName(tool) {
296
+ try {
297
+ return parseUri(tool.name, MCP_URI_SEPARATOR).resourceName;
298
+ }
299
+ catch {
300
+ return tool.name;
301
+ }
302
+ }
303
+ //# sourceMappingURL=inspectUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspectUtils.js","sourceRoot":"","sources":["../../../src/commands/inspect/inspectUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Argv } from 'yargs';
2
+ export declare function setupInstructionsCommand(yargs: Argv): Argv;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/instructions/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAElC,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAoC1D"}
@@ -0,0 +1,34 @@
1
+ import { runCliCommand } from '../../commands/shared/commandRunner.js';
2
+ import { globalOptions } from '../../globalOptions.js';
3
+ export function setupInstructionsCommand(yargs) {
4
+ return yargs.command('instructions', 'Show CLI-mode instructions for AI agents using a running 1MCP serve instance', (commandYargs) => commandYargs
5
+ .options(globalOptions || {})
6
+ .option('url', {
7
+ alias: 'u',
8
+ describe: 'Override auto-detected 1MCP server URL',
9
+ type: 'string',
10
+ })
11
+ .option('preset', {
12
+ alias: 'p',
13
+ describe: 'Use a preset when querying the running 1MCP server',
14
+ type: 'string',
15
+ })
16
+ .option('tag-filter', {
17
+ alias: 'f',
18
+ describe: 'Apply an advanced tag filter expression',
19
+ type: 'string',
20
+ })
21
+ .option('tags', {
22
+ describe: 'Apply simple comma-separated tags',
23
+ type: 'array',
24
+ string: true,
25
+ })
26
+ .example('$0 instructions', 'Show the CLI-mode agent playbook and current servers')
27
+ .example('$0 instructions --tags backend', 'Show CLI instructions for a filtered backend server set')
28
+ .example('$0 instructions --preset development', 'Show CLI instructions using a preset')
29
+ .epilogue('This command requires a running `1mcp serve` instance. Errors are written to stderr only.'), async (argv) => {
30
+ const { instructionsCommand } = await import('./instructions.js');
31
+ await runCliCommand(argv, instructionsCommand);
32
+ });
33
+ }
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/instructions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAItD,MAAM,UAAU,wBAAwB,CAAC,KAAW;IAClD,OAAO,KAAK,CAAC,OAAO,CAClB,cAAc,EACd,8EAA8E,EAC9E,CAAC,YAAY,EAAE,EAAE,CACf,YAAY;SACT,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,KAAK,EAAE;QACb,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,wCAAwC;QAClD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE;QAChB,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,oDAAoD;QAC9D,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,MAAM,CAAC,YAAY,EAAE;QACpB,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,yCAAyC;QACnD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,QAAQ,EAAE,mCAAmC;QAC7C,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,IAAI;KACb,CAAC;SACD,OAAO,CAAC,iBAAiB,EAAE,sDAAsD,CAAC;SAClF,OAAO,CAAC,gCAAgC,EAAE,yDAAyD,CAAC;SACpG,OAAO,CAAC,sCAAsC,EAAE,sCAAsC,CAAC;SACvF,QAAQ,CAAC,2FAA2F,CAAC,EAC1G,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAClE,MAAM,aAAa,CAAC,IAAiD,EAAE,mBAAmB,CAAC,CAAC;IAC9F,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { GlobalOptions } from '../../globalOptions.js';
2
+ export interface InstructionsCommandOptions extends GlobalOptions {
3
+ url?: string;
4
+ preset?: string;
5
+ filter?: string;
6
+ tags?: string[];
7
+ 'tag-filter'?: string;
8
+ }
9
+ export declare function instructionsCommand(options: InstructionsCommandOptions): Promise<void>;
10
+ //# sourceMappingURL=instructions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../../src/commands/instructions/instructions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAI3D,MAAM,WAAW,0BAA2B,SAAQ,aAAa;IAC/D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAcD,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CA+E5F"}
@@ -0,0 +1,86 @@
1
+ import { getInspectResult } from '../../commands/inspect/inspect.js';
2
+ import { formatInstructionsOutput } from './instructionsUtils.js';
3
+ function toInspectOptions(options, target) {
4
+ return { ...options, target };
5
+ }
6
+ function shouldEagerlyInspectServer(server) {
7
+ if (server.type === 'template') {
8
+ return true;
9
+ }
10
+ return server.available !== false && server.status !== 'disconnected';
11
+ }
12
+ export async function instructionsCommand(options) {
13
+ const allServers = await getInspectResult(toInspectOptions(options), { includeServerInstructions: true });
14
+ if (allServers.kind !== 'servers') {
15
+ throw new Error('Unexpected inspect result for server listing.');
16
+ }
17
+ const serverInstructions = allServers.serverInstructions ?? {};
18
+ const details = [];
19
+ for (const server of allServers.servers) {
20
+ if (!shouldEagerlyInspectServer(server)) {
21
+ const instructions = serverInstructions[server.server];
22
+ details.push({
23
+ server: server.server,
24
+ type: server.type,
25
+ status: server.status,
26
+ available: server.available,
27
+ toolCount: server.toolCount,
28
+ hasInstructions: server.hasInstructions,
29
+ instructions,
30
+ note: '(unavailable: server is not currently connected)',
31
+ });
32
+ continue;
33
+ }
34
+ try {
35
+ const detailResult = await getInspectResult(toInspectOptions(options, server.server), {
36
+ includeServerInstructions: true,
37
+ });
38
+ if (detailResult.kind !== 'server') {
39
+ details.push({
40
+ server: server.server,
41
+ type: server.type,
42
+ status: server.status,
43
+ available: server.available,
44
+ toolCount: server.toolCount,
45
+ hasInstructions: server.hasInstructions,
46
+ instructions: null,
47
+ note: '(unavailable)',
48
+ });
49
+ continue;
50
+ }
51
+ const serverDetail = detailResult;
52
+ details.push({
53
+ server: serverDetail.server,
54
+ type: serverDetail.type,
55
+ status: serverDetail.status,
56
+ available: serverDetail.available,
57
+ toolCount: serverDetail.totalTools ?? serverDetail.tools.length,
58
+ hasInstructions: Boolean(serverDetail.instructions?.trim()),
59
+ instructions: serverDetail.instructions,
60
+ note: serverDetail.instructions ? undefined : '(none provided)',
61
+ });
62
+ }
63
+ catch {
64
+ details.push({
65
+ server: server.server,
66
+ type: server.type,
67
+ status: server.status,
68
+ available: server.available,
69
+ toolCount: server.toolCount,
70
+ hasInstructions: server.hasInstructions,
71
+ instructions: null,
72
+ note: server.type === 'template'
73
+ ? '(unavailable: template server could not be initialized with the current context)'
74
+ : '(unavailable: server is not currently connected)',
75
+ });
76
+ }
77
+ }
78
+ const output = formatInstructionsOutput({
79
+ servers: allServers.servers,
80
+ details,
81
+ });
82
+ if (output.length > 0) {
83
+ process.stdout.write(`${output}\n`);
84
+ }
85
+ }
86
+ //# sourceMappingURL=instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../../src/commands/instructions/instructions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ export interface InstructionsServerSummary {
2
+ server: string;
3
+ type?: string;
4
+ status?: string;
5
+ available?: boolean;
6
+ toolCount: number;
7
+ hasInstructions: boolean;
8
+ }
9
+ export interface InstructionsServerDetail {
10
+ server: string;
11
+ type?: string;
12
+ status?: string;
13
+ available?: boolean;
14
+ toolCount: number;
15
+ hasInstructions: boolean;
16
+ instructions?: string | null;
17
+ note?: string;
18
+ }
19
+ export interface InstructionsOutput {
20
+ servers: InstructionsServerSummary[];
21
+ details: InstructionsServerDetail[];
22
+ }
23
+ export declare function formatInstructionsOutput(output: InstructionsOutput): string;
24
+ //# sourceMappingURL=instructionsUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructionsUtils.d.ts","sourceRoot":"","sources":["../../../src/commands/instructions/instructionsUtils.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,yBAAyB,EAAE,CAAC;IACrC,OAAO,EAAE,wBAAwB,EAAE,CAAC;CACrC;AAiCD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAkD3E"}