@k08200/mcp-probe 1.6.0 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +120 -507
  2. package/dist/assertions.d.ts.map +1 -1
  3. package/dist/assertions.js +93 -0
  4. package/dist/assertions.js.map +1 -1
  5. package/dist/checker.d.ts.map +1 -1
  6. package/dist/checker.js +54 -56
  7. package/dist/checker.js.map +1 -1
  8. package/dist/cli.js +52 -10
  9. package/dist/cli.js.map +1 -1
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +30 -1
  12. package/dist/config.js.map +1 -1
  13. package/dist/doctor.d.ts +5 -0
  14. package/dist/doctor.d.ts.map +1 -1
  15. package/dist/doctor.js +258 -31
  16. package/dist/doctor.js.map +1 -1
  17. package/dist/exit-code.d.ts +3 -0
  18. package/dist/exit-code.d.ts.map +1 -0
  19. package/dist/exit-code.js +8 -0
  20. package/dist/exit-code.js.map +1 -0
  21. package/dist/init.d.ts.map +1 -1
  22. package/dist/init.js +1 -118
  23. package/dist/init.js.map +1 -1
  24. package/dist/issues.d.ts.map +1 -1
  25. package/dist/issues.js +33 -14
  26. package/dist/issues.js.map +1 -1
  27. package/dist/protocols/mcp-client.d.ts.map +1 -1
  28. package/dist/protocols/mcp-client.js +36 -17
  29. package/dist/protocols/mcp-client.js.map +1 -1
  30. package/dist/reporters/receipt.d.ts +16 -0
  31. package/dist/reporters/receipt.d.ts.map +1 -0
  32. package/dist/reporters/receipt.js +21 -0
  33. package/dist/reporters/receipt.js.map +1 -0
  34. package/dist/scaffold.d.ts +17 -0
  35. package/dist/scaffold.d.ts.map +1 -0
  36. package/dist/scaffold.js +152 -0
  37. package/dist/scaffold.js.map +1 -0
  38. package/dist/sidecar.d.ts +6 -0
  39. package/dist/sidecar.d.ts.map +1 -0
  40. package/dist/sidecar.js +79 -0
  41. package/dist/sidecar.js.map +1 -0
  42. package/dist/types.d.ts +8 -1
  43. package/dist/types.d.ts.map +1 -1
  44. package/dist/version.d.ts +2 -0
  45. package/dist/version.d.ts.map +1 -0
  46. package/dist/version.js +5 -0
  47. package/dist/version.js.map +1 -0
  48. package/examples/fixtures/stdio-mcp-server.js +68 -0
  49. package/examples/github-actions/fleet.yml +9 -1
  50. package/examples/github-actions/remote-server.yml +9 -1
  51. package/examples/github-actions/single-server.yml +9 -1
  52. package/examples/self-check.config.json +3 -1
  53. package/examples/self-check.strict.config.json +16 -0
  54. package/examples/self-check.strict.tools.json +49 -0
  55. package/package.json +1 -1
  56. package/schemas/mcp-probe.config.schema.json +15 -0
  57. package/schemas/mcp-probe.sidecar.schema.json +5 -1
package/dist/init.js CHANGED
@@ -1,19 +1,6 @@
1
1
  import { existsSync, mkdirSync, writeFileSync } from 'fs';
2
2
  import { dirname } from 'path';
3
- const CONFIG_SCHEMA_URL = 'https://raw.githubusercontent.com/k08200/mcp-probe/main/schemas/mcp-probe.config.schema.json';
4
- const SIDECAR_SCHEMA_URL = 'https://raw.githubusercontent.com/k08200/mcp-probe/main/schemas/mcp-probe.sidecar.schema.json';
5
- function serverNameFromTarget(target) {
6
- const withoutProtocol = target.replace(/^https?:\/\//i, '');
7
- const last = withoutProtocol.split('/').filter(Boolean).pop() ?? 'mcp-server';
8
- return last
9
- .replace(/^@/, '')
10
- .replace(/[^a-zA-Z0-9_-]+/g, '-')
11
- .replace(/^-+|-+$/g, '')
12
- || 'mcp-server';
13
- }
14
- function json(value) {
15
- return JSON.stringify(value, null, 2) + '\n';
16
- }
3
+ import { buildConfig, buildToolsFile, buildWorkflow, json } from './scaffold.js';
17
4
  function writeFileIfAllowed(path, content, force) {
18
5
  if (existsSync(path) && !force) {
19
6
  return { path, status: 'skipped' };
@@ -25,110 +12,6 @@ function writeFileIfAllowed(path, content, force) {
25
12
  writeFileSync(path, content);
26
13
  return { path, status: 'created' };
27
14
  }
28
- function buildConfig(options) {
29
- const server = {
30
- name: options.name ?? serverNameFromTarget(options.target),
31
- target: options.target,
32
- probeTools: true,
33
- toolsFile: options.toolsFile,
34
- };
35
- if (options.transport) {
36
- server.transport = options.transport;
37
- }
38
- if (options.headerEnv) {
39
- server.headers = {
40
- Authorization: `Bearer \${${options.headerEnv}}`,
41
- };
42
- }
43
- return {
44
- $schema: CONFIG_SCHEMA_URL,
45
- timeoutMs: 10000,
46
- servers: [server],
47
- };
48
- }
49
- function minimalInputFromSchema(schema) {
50
- if (!schema || typeof schema !== 'object')
51
- return {};
52
- const typed = schema;
53
- const properties = typed.properties;
54
- if (!properties)
55
- return {};
56
- const required = typed.required ?? Object.keys(properties);
57
- const input = {};
58
- for (const key of required) {
59
- const property = properties[key];
60
- const type = Array.isArray(property?.type) ? property?.type[0] : property?.type;
61
- switch (type) {
62
- case 'string':
63
- input[key] = '';
64
- break;
65
- case 'number':
66
- case 'integer':
67
- input[key] = 0;
68
- break;
69
- case 'boolean':
70
- input[key] = false;
71
- break;
72
- case 'array':
73
- input[key] = [];
74
- break;
75
- case 'object':
76
- input[key] = {};
77
- break;
78
- default:
79
- input[key] = null;
80
- }
81
- }
82
- return input;
83
- }
84
- function sidecarEntryForTool(tool) {
85
- return {
86
- input: minimalInputFromSchema(tool.inputSchema),
87
- expect: {
88
- not_error_code: [401, 403],
89
- },
90
- };
91
- }
92
- function buildToolsFile(discoveredTools) {
93
- const tools = discoveredTools && discoveredTools.length > 0
94
- ? Object.fromEntries(discoveredTools.map((tool) => [tool.name, sidecarEntryForTool(tool)]))
95
- : {
96
- replace_with_tool_name: {
97
- input: {},
98
- expect: {
99
- not_error_code: [401, 403],
100
- },
101
- },
102
- };
103
- return {
104
- $schema: SIDECAR_SCHEMA_URL,
105
- tools,
106
- };
107
- }
108
- function buildWorkflow(configFile) {
109
- return `name: MCP Probe
110
-
111
- on:
112
- pull_request:
113
- push:
114
- branches: [main]
115
-
116
- jobs:
117
- mcp-probe:
118
- runs-on: ubuntu-latest
119
- timeout-minutes: 5
120
-
121
- steps:
122
- - uses: actions/checkout@v6
123
-
124
- - name: Validate MCP readiness
125
- run: |
126
- npx @k08200/mcp-probe@latest \\
127
- --config ${configFile} \\
128
- --github-summary \\
129
- --badge-file mcp-probe-badge.json
130
- `;
131
- }
132
15
  export function initProject(options) {
133
16
  const files = [];
134
17
  files.push(writeFileIfAllowed(options.configFile, json(buildConfig(options)), options.force));
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAwBjF,SAAS,kBAAkB,CAAC,IAAY,EAAE,OAAe,EAAE,KAAc;IACvE,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACrC,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;QACvB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IACD,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAoB;IAC9C,MAAM,KAAK,GAAqB,EAAE,CAAC;IAEnC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAC3B,OAAO,CAAC,UAAU,EAClB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAC1B,OAAO,CAAC,KAAK,CACd,CAAC,CAAC;IAEH,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAC3B,OAAO,CAAC,SAAS,EACjB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,EAC7C,OAAO,CAAC,KAAK,CACd,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAC3B,OAAO,CAAC,YAAY,EACpB,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,EACjC,OAAO,CAAC,KAAK,CACd,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../src/issues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAgBnE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,GAAG,SAAS,CAwC1E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS,CAmFjE;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,SAAS,GAAG,cAAc,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAG1E"}
1
+ {"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../src/issues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAqBnE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,GAAG,SAAS,CAwC1E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS,CAmGjE;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,SAAS,GAAG,cAAc,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAG1E"}
package/dist/issues.js CHANGED
@@ -1,4 +1,9 @@
1
1
  const DOCS_BASE = 'https://github.com/k08200/mcp-probe#';
2
+ const DOCS = {
3
+ commands: `${DOCS_BASE}commands`,
4
+ config: `${DOCS_BASE}config`,
5
+ sidecarInputs: `${DOCS_BASE}sidecar-inputs`,
6
+ };
2
7
  function lower(value) {
3
8
  return (value ?? '').toLowerCase();
4
9
  }
@@ -15,34 +20,34 @@ export function issueForToolCall(result) {
15
20
  return {
16
21
  code: 'CONTRACT_ASSERTION_FAILED',
17
22
  hint: 'The tool call completed, but its output did not satisfy the sidecar contract. Check required metadata, row limits, stable error codes, and leak assertions.',
18
- docsUrl: `${DOCS_BASE}tool-call-contract-assertions`,
23
+ docsUrl: DOCS.sidecarInputs,
19
24
  };
20
25
  }
21
26
  if (isAuthLike(result.error)) {
22
27
  return {
23
28
  code: 'TOOL_CALL_AUTH',
24
29
  hint: 'The server registered this tool, but the call path hit auth or permission handling. Check OAuth/browser handoff, service tokens, and CI secrets.',
25
- docsUrl: `${DOCS_BASE}tool-call-dry-runs`,
30
+ docsUrl: DOCS.sidecarInputs,
26
31
  };
27
32
  }
28
33
  if (isTimeout(result.error)) {
29
34
  return {
30
35
  code: 'TOOL_CALL_TIMEOUT',
31
36
  hint: 'The tool call timed out. Increase --timeout if the downstream service is slow, or add a safer sidecar input that reaches a fast read-only path.',
32
- docsUrl: `${DOCS_BASE}tool-call-dry-runs`,
37
+ docsUrl: DOCS.sidecarInputs,
33
38
  };
34
39
  }
35
40
  if (result.source === 'auto') {
36
41
  return {
37
42
  code: 'AUTO_DRY_RUN_INPUT',
38
43
  hint: 'The auto-generated schema-minimum input failed. Add a .mcp-probe.json sidecar with realistic read-only sample inputs for this tool.',
39
- docsUrl: `${DOCS_BASE}tool-call-dry-runs`,
44
+ docsUrl: DOCS.sidecarInputs,
40
45
  };
41
46
  }
42
47
  return {
43
48
  code: 'TOOL_CALL_FAILED',
44
49
  hint: 'The sidecar input reached tools/call but returned an error. Verify the sample input is safe, valid for this environment, and exercises a real read-only path.',
45
- docsUrl: `${DOCS_BASE}tool-call-dry-runs`,
50
+ docsUrl: DOCS.sidecarInputs,
46
51
  };
47
52
  }
48
53
  export function issueForCheck(check) {
@@ -53,14 +58,28 @@ export function issueForCheck(check) {
53
58
  return {
54
59
  code: 'NO_TOOLS',
55
60
  hint: 'The server responded but did not expose tools. If this is expected, it may be a resources/prompts-only server; otherwise check the server registration code.',
56
- docsUrl: `${DOCS_BASE}what-it-checks`,
61
+ docsUrl: DOCS.commands,
57
62
  };
58
63
  }
59
64
  if (check.name === 'Tool schema validation') {
60
65
  return {
61
66
  code: 'TOOL_SCHEMA_INVALID',
62
67
  hint: 'At least one discovered tool has an invalid schema. Make sure every MCP tool has a stable name and valid input schema.',
63
- docsUrl: `${DOCS_BASE}what-it-checks`,
68
+ docsUrl: DOCS.commands,
69
+ };
70
+ }
71
+ if (check.name === 'Tool catalog policy') {
72
+ return {
73
+ code: 'TOOL_CATALOG_MISMATCH',
74
+ hint: 'The discovered tool catalog does not match the configured policy. Check expectedTools, allowedTools, and forbiddenTools in mcp-probe.config.json.',
75
+ docsUrl: DOCS.config,
76
+ };
77
+ }
78
+ if (check.name === 'Tool dry-run coverage') {
79
+ return {
80
+ code: 'TOOL_DRY_RUN_COVERAGE_MISSING',
81
+ hint: 'At least one expected tool is not covered by a sidecar sample input. Add it to the toolsFile so CI verifies the real tools/call path.',
82
+ docsUrl: DOCS.sidecarInputs,
64
83
  };
65
84
  }
66
85
  if (check.name === 'Tool sidecar') {
@@ -68,13 +87,13 @@ export function issueForCheck(check) {
68
87
  return {
69
88
  code: 'SIDECAR_MISSING',
70
89
  hint: 'The configured tools file does not exist. Run mcp-probe init --discover or fix the --tools-file / toolsFile path.',
71
- docsUrl: `${DOCS_BASE}tool-call-dry-runs`,
90
+ docsUrl: DOCS.sidecarInputs,
72
91
  };
73
92
  }
74
93
  return {
75
94
  code: 'SIDECAR_INVALID',
76
95
  hint: 'The tools sidecar is not valid JSON or does not match the expected shape. Validate it against schemas/mcp-probe.sidecar.schema.json.',
77
- docsUrl: `${DOCS_BASE}batch-ci-gate`,
96
+ docsUrl: DOCS.config,
78
97
  };
79
98
  }
80
99
  if (check.name === 'MCP protocol handshake') {
@@ -82,27 +101,27 @@ export function issueForCheck(check) {
82
101
  return {
83
102
  code: 'HANDSHAKE_TIMEOUT',
84
103
  hint: 'The server did not complete initialize before the timeout. Increase --timeout or inspect server startup latency and dependency loading.',
85
- docsUrl: `${DOCS_BASE}usage`,
104
+ docsUrl: DOCS.commands,
86
105
  };
87
106
  }
88
107
  if (isAuthLike(check.message)) {
89
108
  return {
90
109
  code: 'HANDSHAKE_AUTH',
91
110
  hint: 'The server failed during initialization with an auth-like error. Check required environment variables, tokens, or remote headers.',
92
- docsUrl: `${DOCS_BASE}usage`,
111
+ docsUrl: DOCS.commands,
93
112
  };
94
113
  }
95
114
  if (message.includes('enoent') || message.includes('spawn') || message.includes('not found')) {
96
115
  return {
97
116
  code: 'TARGET_NOT_FOUND',
98
117
  hint: 'mcp-probe could not start the target. Check the package name, local path, executable, and server arguments.',
99
- docsUrl: `${DOCS_BASE}usage`,
118
+ docsUrl: DOCS.commands,
100
119
  };
101
120
  }
102
121
  return {
103
122
  code: 'HANDSHAKE_FAILED',
104
123
  hint: 'The target started but did not complete the MCP initialize handshake. Run with the same server arguments locally and inspect stderr.',
105
- docsUrl: `${DOCS_BASE}stderr-classification`,
124
+ docsUrl: DOCS.commands,
106
125
  };
107
126
  }
108
127
  if (check.name === 'Tool call dry-run') {
@@ -114,7 +133,7 @@ export function issueForCheck(check) {
114
133
  : check.status === 'warn'
115
134
  ? 'At least one tool call hit auth or permission handling. This often means CI needs tokens or the server needs non-browser auth.'
116
135
  : 'At least one tool call failed. Inspect toolCallResults in JSON output for the exact tool and add or refine sidecar inputs.',
117
- docsUrl: `${DOCS_BASE}${failedContract ? 'tool-call-contract-assertions' : 'tool-call-dry-runs'}`,
136
+ docsUrl: DOCS.sidecarInputs,
118
137
  };
119
138
  }
120
139
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"issues.js","sourceRoot":"","sources":["../src/issues.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issues.js","sourceRoot":"","sources":["../src/issues.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client.d.ts","sourceRoot":"","sources":["../../src/protocols/mcp-client.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAe,YAAY,EAAE,WAAW,EAAiD,MAAM,aAAa,CAAC;AAuKzH,wBAAsB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAgHhF"}
1
+ {"version":3,"file":"mcp-client.d.ts","sourceRoot":"","sources":["../../src/protocols/mcp-client.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAe,YAAY,EAAE,WAAW,EAAiD,MAAM,aAAa,CAAC;AAqKzH,wBAAsB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAoIhF"}
@@ -5,7 +5,7 @@ import { SSEClientTransport } from '@modelcontextprotocol/sdk/client/sse.js';
5
5
  import { assertionFailureMessage, evaluateToolAssertions } from '../assertions.js';
6
6
  import { withIssue } from '../issues.js';
7
7
  import { redactText } from '../redact.js';
8
- const VERSION = '1.6.0';
8
+ import { VERSION } from '../version.js';
9
9
  // Known startup warning patterns from official MCP servers — not fatal errors
10
10
  const STDERR_WARNING_PATTERNS = [
11
11
  /^warn(?:ing)?:/i,
@@ -189,9 +189,14 @@ export async function probeMcpServer(options) {
189
189
  const rawServerInfo = client.getServerVersion();
190
190
  const rawCaps = client.getServerCapabilities();
191
191
  const capabilities = Object.keys(rawCaps ?? {});
192
- const toolsStart = Date.now();
193
- const toolsResult = await withTimeout(client.listTools(), options.timeoutMs, 'tools/list');
194
- const toolsLatencyMs = Date.now() - toolsStart;
192
+ let toolsLatencyMs = 0;
193
+ let tools = [];
194
+ if (rawCaps?.tools) {
195
+ const toolsStart = Date.now();
196
+ const toolsResult = await withTimeout(client.listTools(), options.timeoutMs, 'tools/list');
197
+ toolsLatencyMs = Date.now() - toolsStart;
198
+ tools = toolsResult.tools;
199
+ }
195
200
  let resourcesLatencyMs;
196
201
  let promptsLatencyMs;
197
202
  const resourcesList = [];
@@ -213,31 +218,45 @@ export async function probeMcpServer(options) {
213
218
  }
214
219
  }
215
220
  let toolCallResults;
216
- if (options.probeTools && toolsResult.tools.length > 0) {
221
+ if (options.probeTools) {
217
222
  toolCallResults = [];
218
- for (const tool of toolsResult.tools) {
219
- const sidecarEntry = options.sidecar?.tools[tool.name];
220
- // Sidecar input beats auto-generated because it can reach the real call path.
221
- const input = sidecarEntry?.input ?? generateMinimalInput(tool.inputSchema);
222
- const source = sidecarEntry ? 'sidecar' : 'auto';
223
- const notErrorCodes = sidecarEntry?.expect?.not_error_code;
224
- const expectations = sidecarEntry?.expect;
223
+ const toolsByName = new Map(tools.map((tool) => [tool.name, tool]));
224
+ const toolsToCall = options.sidecar
225
+ ? Object.entries(options.sidecar.tools).map(([name, entry]) => ({ name, entry, tool: toolsByName.get(name) }))
226
+ : tools.map((tool) => ({ name: tool.name, entry: undefined, tool }));
227
+ for (const candidate of toolsToCall) {
228
+ if (!candidate.tool) {
229
+ toolCallResults.push(withIssue({
230
+ tool: candidate.name,
231
+ status: 'fail',
232
+ latencyMs: 0,
233
+ source: 'sidecar',
234
+ error: `Sidecar references a tool that was not discovered: ${candidate.name}`,
235
+ }));
236
+ continue;
237
+ }
238
+ // With a sidecar, only explicitly declared tools are called.
239
+ // Without a sidecar, fall back to schema-minimum inputs for broad smoke coverage.
240
+ const input = candidate.entry?.input ?? generateMinimalInput(candidate.tool.inputSchema);
241
+ const source = candidate.entry ? 'sidecar' : 'auto';
242
+ const notErrorCodes = candidate.entry?.expect?.not_error_code;
243
+ const expectations = candidate.entry?.expect;
225
244
  const start = Date.now();
226
245
  try {
227
- const result = await withTimeout(client.callTool({ name: tool.name, arguments: input }), options.timeoutMs, `callTool(${tool.name})`);
246
+ const result = await withTimeout(client.callTool({ name: candidate.tool.name, arguments: input }), options.timeoutMs, `callTool(${candidate.tool.name})`);
228
247
  const toolError = toolResultErrorMessage(result);
229
248
  if (toolError) {
230
249
  const error = redactText(toolError, secretValues);
231
250
  const status = isAuthError(error, notErrorCodes) ? 'warn' : 'fail';
232
- toolCallResults.push(finalToolResult(tool.name, status, Date.now() - start, source, expectations, result, error));
251
+ toolCallResults.push(finalToolResult(candidate.tool.name, status, Date.now() - start, source, expectations, result, error));
233
252
  continue;
234
253
  }
235
- toolCallResults.push(finalToolResult(tool.name, 'pass', Date.now() - start, source, expectations, result));
254
+ toolCallResults.push(finalToolResult(candidate.tool.name, 'pass', Date.now() - start, source, expectations, result));
236
255
  }
237
256
  catch (err) {
238
257
  const msg = redactText(err instanceof Error ? err.message : String(err), secretValues);
239
258
  const status = isAuthError(msg, notErrorCodes) ? 'warn' : 'fail';
240
- toolCallResults.push(finalToolResult(tool.name, status, Date.now() - start, source, expectations, undefined, msg));
259
+ toolCallResults.push(finalToolResult(candidate.tool.name, status, Date.now() - start, source, expectations, undefined, msg));
241
260
  }
242
261
  }
243
262
  }
@@ -247,7 +266,7 @@ export async function probeMcpServer(options) {
247
266
  version: rawServerInfo?.version ?? 'unknown',
248
267
  capabilities,
249
268
  },
250
- tools: toolsResult.tools.map((t) => ({
269
+ tools: tools.map((t) => ({
251
270
  name: t.name,
252
271
  description: t.description,
253
272
  inputSchema: t.inputSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../src/protocols/mcp-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../src/protocols/mcp-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { BatchReport, CheckReport } from '../types.js';
2
+ type AnyReport = CheckReport | BatchReport;
3
+ export type ProbeReceipt = {
4
+ formatVersion: 1;
5
+ generatedBy: {
6
+ name: 'mcp-probe';
7
+ version: string;
8
+ };
9
+ generatedAt: string;
10
+ receiptType: 'mcp-readiness';
11
+ report: AnyReport;
12
+ };
13
+ export declare function buildReceipt(report: AnyReport): ProbeReceipt;
14
+ export declare function writeReceiptFile(report: AnyReport, path: string): void;
15
+ export {};
16
+ //# sourceMappingURL=receipt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"receipt.d.ts","sourceRoot":"","sources":["../../src/reporters/receipt.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE5D,KAAK,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;AAE3C,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE;QACX,IAAI,EAAE,WAAW,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,eAAe,CAAC;IAC7B,MAAM,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,YAAY,CAW5D;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAGtE"}
@@ -0,0 +1,21 @@
1
+ import { mkdirSync, writeFileSync } from 'fs';
2
+ import { dirname } from 'path';
3
+ import { redactUnknown } from '../redact.js';
4
+ import { VERSION } from '../version.js';
5
+ export function buildReceipt(report) {
6
+ return {
7
+ formatVersion: 1,
8
+ generatedBy: {
9
+ name: 'mcp-probe',
10
+ version: VERSION,
11
+ },
12
+ generatedAt: new Date().toISOString(),
13
+ receiptType: 'mcp-readiness',
14
+ report: redactUnknown(report),
15
+ };
16
+ }
17
+ export function writeReceiptFile(report, path) {
18
+ mkdirSync(dirname(path), { recursive: true });
19
+ writeFileSync(path, `${JSON.stringify(buildReceipt(report), null, 2)}\n`);
20
+ }
21
+ //# sourceMappingURL=receipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"receipt.js","sourceRoot":"","sources":["../../src/reporters/receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAgBxC,MAAM,UAAU,YAAY,CAAC,MAAiB;IAC5C,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,WAAW,EAAE;YACX,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,OAAO;SACjB;QACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,aAAa,CAAC,MAAM,CAAc;KAC3C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAiB,EAAE,IAAY;IAC9D,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5E,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { ToolInfo, TransportMode } from './types.js';
2
+ export declare const CONFIG_SCHEMA_URL = "https://raw.githubusercontent.com/k08200/mcp-probe/main/schemas/mcp-probe.config.schema.json";
3
+ export declare const SIDECAR_SCHEMA_URL = "https://raw.githubusercontent.com/k08200/mcp-probe/main/schemas/mcp-probe.sidecar.schema.json";
4
+ export type BuildConfigOptions = {
5
+ target: string;
6
+ name?: string;
7
+ toolsFile: string;
8
+ transport?: TransportMode;
9
+ headerEnv?: string;
10
+ };
11
+ export declare function json(value: unknown): string;
12
+ export declare function serverNameFromTarget(target: string): string;
13
+ export declare function buildConfig(options: BuildConfigOptions): unknown;
14
+ export declare function buildToolsFile(discoveredTools?: ToolInfo[]): unknown;
15
+ export declare function buildToolsFileFromNames(toolNames: string[]): unknown;
16
+ export declare function buildWorkflow(configFile: string): string;
17
+ //# sourceMappingURL=scaffold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE1D,eAAO,MAAM,iBAAiB,iGAAiG,CAAC;AAChI,eAAO,MAAM,kBAAkB,kGAAkG,CAAC;AAElI,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE3C;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ3D;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAuBhE;AAiDD,wBAAgB,cAAc,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,CAgBpE;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAyBpE;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CA+BxD"}