@slbdn/mcp-tester 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +87 -0
- package/README.md +141 -4
- package/dist/cli/index.js +114 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/client/MCPClient.d.ts +86 -0
- package/dist/client/MCPClient.d.ts.map +1 -1
- package/dist/client/MCPClient.js +165 -31
- package/dist/client/MCPClient.js.map +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/utils/validation.d.ts +48 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +249 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +8 -6
package/CHANGELOG.md
CHANGED
|
@@ -5,12 +5,98 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.3.0] - 2026-07-01
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- **TypeScript type generator** (`src/generate-types.ts`) — generate typed `.d.ts` from MCP tool schemas:
|
|
12
|
+
- `generateTypes()` API: connect to server, inspect schemas, emit TypeScript declarations
|
|
13
|
+
- CLI: `npx mcp-tester generate-types node ./server.js -o server.d.ts`
|
|
14
|
+
- Handles: primitives, enums, arrays, nested objects, oneOf/anyOf/allOf, $ref, const
|
|
15
|
+
- Generated types: `{Tool}Args`, `ToolName`, `ToolArgsMap`, `ToolCall`, `ResourceUri`, `PromptCall`
|
|
16
|
+
- 59 tests (12 e2e + 4 options + 43 unit)
|
|
17
|
+
- **Server health checks** — detect zombie processes and monitor server health:
|
|
18
|
+
- `isHealthy()` — sends a lightweight `tools/list` ping, returns `HealthStatus` with latency, PID, message
|
|
19
|
+
- `getServerPid()` — get the server process PID
|
|
20
|
+
- `getLastHealthStatus()` — cached result without re-checking
|
|
21
|
+
- `startHealthMonitor(options)` — periodic health monitoring with `onUnhealthy`/`onRecovery`/`onCheck` callbacks
|
|
22
|
+
- `stopHealthMonitor()` — stop periodic monitoring (also auto-stopped by `client.stop()`)
|
|
23
|
+
- Zombie process detection via `process.kill(pid, 0)`
|
|
24
|
+
- 17 tests (including SIGKILL zombie detection test)
|
|
25
|
+
- **Enhanced mock server** (`src/__tests__/fixtures/mock-server.ts`) — 68 tests:
|
|
26
|
+
- Configurable delays (`defaultDelay`) and random failures (`failureRate`)
|
|
27
|
+
- Input schema validation (`validateSchemas` option)
|
|
28
|
+
- Stateful tools: `counter` (increment/get/reset), `items` (add/list/remove/clear)
|
|
29
|
+
- Transform tool: `upper`/`lower`/`reverse`/`length` operations
|
|
30
|
+
- Custom handlers: `registerToolHandler`, `registerResourceHandler`, `registerPromptHandler`
|
|
31
|
+
- Call history: `getCallHistory`, `getCallCount` for test assertions
|
|
32
|
+
- Streaming support: `setupStream`, `nextStreamChunk`
|
|
33
|
+
- Dynamic registration/removal of tools, resources, prompts
|
|
34
|
+
|
|
35
|
+
### Changed
|
|
36
|
+
- **CLI version** is now read dynamically from `package.json` (was hardcoded `1.0.0`)
|
|
37
|
+
- Applied safe dependency patches: `@typescript-eslint/*` 8.60.0, `@types/node` 20.19.41, `prettier` 3.8.3, `ts-jest` 29.4.11
|
|
38
|
+
- `npm audit fix` — 0 vulnerabilities (was 11)
|
|
39
|
+
|
|
40
|
+
### Test Suite
|
|
41
|
+
- **635 tests** (17 suites), up from 491 (14 suites)
|
|
42
|
+
- New: mock server (68), generate-types (59), health checks (17)
|
|
43
|
+
|
|
8
44
|
## [1.2.0] - 2026-04-30
|
|
9
45
|
|
|
10
46
|
### Added
|
|
47
|
+
- **Visual test reports** — HTML test report auto-generated on every `npm test` run:
|
|
48
|
+
- Uses `jest-html-reporters` with collapsible test trees, timing, failure details
|
|
49
|
+
- Report saved to `reports/test-report.html`
|
|
50
|
+
- CI uploads report as artifact (14-day retention)
|
|
51
|
+
- Open locally: `open reports/test-report.html`
|
|
52
|
+
- **Property-based tests** (`src/__tests__/property-based.test.ts`) — 73 tests using fast-check:
|
|
53
|
+
- 44 validation tests: reject/accept all input types, error code invariants
|
|
54
|
+
- 17 masking tests: idempotency, completeness, secret detection, length bounds
|
|
55
|
+
- 12 generate-tests tests: no-throw, serializability, schema priority, nested arrays
|
|
56
|
+
- Fixed flaky `fc.double()` producing NaN/Infinity → use `fc.integer()` for numeric fields
|
|
57
|
+
- **Enhanced mock server** (`src/__tests__/fixtures/mock-server.ts`) — 68 tests:
|
|
58
|
+
- Configurable delays (`defaultDelay`) and random failures (`failureRate`)
|
|
59
|
+
- Input schema validation (`validateSchemas` option)
|
|
60
|
+
- Stateful tools: `counter` (increment/get/reset), `items` (add/list/remove/clear)
|
|
61
|
+
- Transform tool: `upper`/`lower`/`reverse`/`length` operations
|
|
62
|
+
- Custom handlers: `registerToolHandler`, `registerResourceHandler`, `registerPromptHandler`
|
|
63
|
+
- Call history: `getCallHistory`, `getCallCount` for test assertions
|
|
64
|
+
- Streaming support: `setupStream`, `nextStreamChunk`
|
|
65
|
+
- Dynamic registration/removal of tools, resources, prompts
|
|
66
|
+
- **TypeScript type generator** (`src/generate-types.ts`) — generate typed `.d.ts` from MCP tool schemas:
|
|
67
|
+
- `generateTypes()` API: connect to server, inspect schemas, emit TypeScript declarations
|
|
68
|
+
- CLI: `npx mcp-tester generate-types node ./server.js -o server.d.ts`
|
|
69
|
+
- Handles: primitives, enums, arrays, nested objects, oneOf/anyOf/allOf, $ref, const
|
|
70
|
+
- Generated types: `{Tool}Args`, `ToolName`, `ToolArgsMap`, `ToolCall`, `ResourceUri`, `PromptCall`
|
|
71
|
+
- 59 tests (12 e2e + 4 options + 43 unit)
|
|
72
|
+
- **Server health checks** — detect zombie processes and monitor server health:
|
|
73
|
+
- `isHealthy()` — sends a lightweight `tools/list` ping, returns `HealthStatus` with latency, PID, message
|
|
74
|
+
- `getServerPid()` — get the server process PID
|
|
75
|
+
- `getLastHealthStatus()` — cached result without re-checking
|
|
76
|
+
- `startHealthMonitor(options)` — periodic health monitoring with `onUnhealthy`/`onRecovery`/`onCheck` callbacks
|
|
77
|
+
- `stopHealthMonitor()` — stop periodic monitoring (also auto-stopped by `client.stop()`)
|
|
78
|
+
- Zombie process detection via `process.kill(pid, 0)`
|
|
79
|
+
- 17 tests (including SIGKILL zombie detection test)
|
|
80
|
+
- **Test code generator** (`src/generate-tests.ts`) — generate a complete test file from MCP server inspection:
|
|
81
|
+
- CLI: `mcp-tester generate node ./server.js -o server.test.ts` (alias: `gen`)
|
|
82
|
+
- API: `generateTests({ command, args, framework, ... })`
|
|
83
|
+
- Generates lifecycle tests, tool call tests with sample args from JSON Schema, resource read tests, prompt tests
|
|
84
|
+
- Options: `--framework jest|vitest`, `--output <file>`, `--description <name>`, `--no-tools`, `--no-resources`, `--no-prompts`, `--no-matchers`
|
|
85
|
+
- Sample arguments derived from JSON Schema: types, enums, defaults, examples
|
|
86
|
+
- 21 tests in `generate-tests.test.ts`
|
|
87
|
+
- **Input validation** (`src/utils/validation.ts`) — all MCPClient methods validate inputs before execution:
|
|
88
|
+
- `start()`: validates command (required string), args (string array), env (string values), startupDelay (non-negative number)
|
|
89
|
+
- `callTool()`: validates name (required string), arguments (object), timeout (positive number), retries (non-negative number)
|
|
90
|
+
- `readResource()`: validates URI (required non-empty string)
|
|
91
|
+
- `getPrompt()`: validates name (required string), args (string values)
|
|
92
|
+
- `requestSampling()`: validates messages (non-empty array)
|
|
93
|
+
- Constructor: validates timeout (positive), retries/retryDelay/startupDelay (non-negative), name/version (string)
|
|
94
|
+
- Validation runs before connection checks — invalid args throw `MCPClientError`, not `MCPNotStartedError`
|
|
95
|
+
- 91 tests in `validation.test.ts`
|
|
11
96
|
- **Code coverage comments on PRs** — GitHub Actions workflow now posts a coverage table as a sticky comment on every pull request (statements/branches/functions/lines with thresholds)
|
|
12
97
|
- **Dedicated `coverage` CI job** — runs on single Node.js version (faster than matrix), generates `coverage-summary.json`, uploads to Codecov v4
|
|
13
98
|
- **`coverageReporters`** in `jest.config.js` — added `json-summary` reporter for CI coverage data extraction
|
|
99
|
+
- **VS Code snippets** (`.vscode/mcp-tester.code-snippets`) — 15 snippets for MCP test patterns (type `mcp` prefix)
|
|
14
100
|
|
|
15
101
|
### Changed
|
|
16
102
|
- **Per-file coverage thresholds** updated for new files (`masking.ts`, `logger.ts`) and actual coverage numbers
|
|
@@ -20,6 +106,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
20
106
|
- **docs/testing.md** — updated coverage thresholds (was "80%", now per-file table)
|
|
21
107
|
- **AGENTS.md** — updated test count, coverage stats, CI job descriptions, file listing
|
|
22
108
|
- Fixed flaky `delay` test (100ms → 90ms tolerance for timing variance)
|
|
109
|
+
- **Updated test count**: 491 (was 306)
|
|
23
110
|
|
|
24
111
|
## [1.1.0] - 2026-04-23
|
|
25
112
|
|
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
[](https://www.npmjs.com/package/@slbdn/mcp-tester)
|
|
9
9
|
[](https://nodejs.org)
|
|
10
10
|
[](https://opensource.org/licenses/MIT)
|
|
11
|
-
[](https://github.com/islobodan/mcp-tester/actions/workflows/test.yml)
|
|
12
12
|
[](https://github.com/islobodan/mcp-tester/actions/workflows/test.yml) <!-- statements/branches/functions/lines -->
|
|
13
13
|
|
|
14
14
|
A production-ready MCP (Model Context Protocol) client for **automated testing** of MCP servers with Jest.
|
|
@@ -84,10 +84,22 @@ No more manual clicking through inspectors — write real tests, run them in CI,
|
|
|
84
84
|
| Branches | 61% |
|
|
85
85
|
| Functions | 60% |
|
|
86
86
|
| Lines | 68% |
|
|
87
|
-
| Tests |
|
|
87
|
+
| Tests | 635 passing |
|
|
88
88
|
|
|
89
89
|
Per-file coverage thresholds are set in `jest.config.js` to catch regressions while avoiding CI noise. Run `npm run test:coverage` to see the full breakdown by file. PRs automatically receive a coverage comment via GitHub Actions.
|
|
90
90
|
|
|
91
|
+
## Test Reports
|
|
92
|
+
|
|
93
|
+
Every `npm test` run auto-generates an HTML test report:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
npm test # generates reports/test-report.html
|
|
97
|
+
open reports/test-report.html # macOS
|
|
98
|
+
xdg-open reports/test-report.html # Linux
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
The report includes collapsible test trees, timing per test, and failure details with stack traces. CI uploads reports as artifacts (14-day retention).
|
|
102
|
+
|
|
91
103
|
## Install
|
|
92
104
|
|
|
93
105
|
```bash
|
|
@@ -173,12 +185,90 @@ npx @slbdn/mcp-tester list-tools node ./server.js --json
|
|
|
173
185
|
# Call a tool
|
|
174
186
|
npx @slbdn/mcp-tester call-tool echo node ./server.js --params '{"message":"Hello"}'
|
|
175
187
|
|
|
176
|
-
#
|
|
188
|
+
# Generate test file from server inspection
|
|
189
|
+
npx @slbdn/mcp-tester generate node ./server.js -o server.test.ts
|
|
190
|
+
npx @slbdn/mcp-tester gen node ./server.js --framework vitest --no-resources
|
|
191
|
+
|
|
192
|
+
# Short aliases: lt, ct, rr, gp, gen
|
|
177
193
|
npx @slbdn/mcp-tester lt node ./server.js
|
|
178
194
|
```
|
|
179
195
|
|
|
180
196
|
See [CLI Reference](./docs/cli.md) for all commands and options.
|
|
181
197
|
|
|
198
|
+
### Generate Test Files
|
|
199
|
+
|
|
200
|
+
Connect to any MCP server and generate a ready-to-run test file:
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
# Generate Jest test file
|
|
204
|
+
npx @slbdn/mcp-tester generate node ./server.js -o server.test.ts
|
|
205
|
+
|
|
206
|
+
# Generate Vitest test file
|
|
207
|
+
npx @slbdn/mcp-tester gen node ./server.js --framework vitest
|
|
208
|
+
|
|
209
|
+
# Skip specific sections
|
|
210
|
+
npx @slbdn/mcp-tester generate node ./server.js --no-resources --no-prompts -o tools-only.test.ts
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
Or use the API:
|
|
214
|
+
|
|
215
|
+
```typescript
|
|
216
|
+
import { generateTests } from '@slbdn/mcp-tester';
|
|
217
|
+
|
|
218
|
+
const code = await generateTests({
|
|
219
|
+
command: 'node',
|
|
220
|
+
args: ['./server.js'],
|
|
221
|
+
framework: 'jest',
|
|
222
|
+
description: 'My Server Tests',
|
|
223
|
+
});
|
|
224
|
+
|
|
225
|
+
fs.writeFileSync('server.test.ts', code);
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
The generator connects to the server, inspects all tools/resources/prompts, and generates:
|
|
229
|
+
- Connection and lifecycle tests
|
|
230
|
+
- Tool call tests with **sample arguments derived from JSON Schema**
|
|
231
|
+
- Resource read tests
|
|
232
|
+
- Prompt tests with sample arguments
|
|
233
|
+
- Proper `beforeEach`/`afterEach` cleanup
|
|
234
|
+
|
|
235
|
+
### Generate TypeScript Types
|
|
236
|
+
|
|
237
|
+
Connect to any MCP server and generate typed `.d.ts` declarations from tool schemas:
|
|
238
|
+
|
|
239
|
+
```bash
|
|
240
|
+
# Generate TypeScript types
|
|
241
|
+
npx @slbdn/mcp-tester generate-types node ./server.js -o server.d.ts
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
Or use the API:
|
|
245
|
+
|
|
246
|
+
```typescript
|
|
247
|
+
import { generateTypes } from '@slbdn/mcp-tester';
|
|
248
|
+
import { writeFileSync } from 'fs';
|
|
249
|
+
|
|
250
|
+
const types = await generateTypes({
|
|
251
|
+
command: 'node',
|
|
252
|
+
args: ['./server.js'],
|
|
253
|
+
});
|
|
254
|
+
|
|
255
|
+
writeFileSync('server.d.ts', types);
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
This produces typed interfaces you can use for type-safe tool calls:
|
|
259
|
+
|
|
260
|
+
```typescript
|
|
261
|
+
import type { ToolArgsMap } from './server.d.ts';
|
|
262
|
+
|
|
263
|
+
// TypeScript knows: { a: number; b: number }
|
|
264
|
+
const result = await client.callTool({
|
|
265
|
+
name: 'add',
|
|
266
|
+
arguments: { a: 1, b: 2 } as ToolArgsMap['add'],
|
|
267
|
+
});
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
Supports: primitives, enums, nested objects, arrays, `oneOf`/`anyOf`/`allOf`, `$ref`, `const`.
|
|
271
|
+
|
|
182
272
|
## Speed Up Your Tests with Parallel Execution
|
|
183
273
|
|
|
184
274
|
MCP Tester is built for concurrency. Fire off multiple tool calls at once — no waiting in line:
|
|
@@ -216,6 +306,10 @@ No extra config needed. Just `Promise.all` and go.
|
|
|
216
306
|
| `start(config)` | `Promise<void>` | Connect to an MCP server |
|
|
217
307
|
| `stop()` | `Promise<void>` | Disconnect and clean up |
|
|
218
308
|
| `isConnected()` | `boolean` | Check connection state |
|
|
309
|
+
| `isHealthy()` | `Promise<HealthStatus>` | Check server health and responsiveness |
|
|
310
|
+
| `getServerPid()` | `number | null` | Get server process PID |
|
|
311
|
+
| `startHealthMonitor(opts)` | `void` | Start periodic health monitoring |
|
|
312
|
+
| `stopHealthMonitor()` | `void` | Stop health monitoring |
|
|
219
313
|
| `listTools()` | `Promise<Tool[]>` | List available tools |
|
|
220
314
|
| `callTool(options)` | `Promise<CallToolResult>` | Call a tool with arguments |
|
|
221
315
|
| `listResources()` | `Promise<Resource[]>` | List available resources |
|
|
@@ -228,6 +322,25 @@ No extra config needed. Just `Promise.all` and go.
|
|
|
228
322
|
|
|
229
323
|
See [API Reference](./docs/api-reference.md) for full details including types, options, and error classes.
|
|
230
324
|
|
|
325
|
+
## Server Health Checks
|
|
326
|
+
|
|
327
|
+
Detect crashed servers and zombie processes during long test runs:
|
|
328
|
+
|
|
329
|
+
```typescript
|
|
330
|
+
// One-time check
|
|
331
|
+
const health = await client.isHealthy();
|
|
332
|
+
console.log(`Healthy: ${health.healthy}, PID: ${health.pid}, latency: ${health.latencyMs}ms`);
|
|
333
|
+
|
|
334
|
+
// Periodic monitoring
|
|
335
|
+
client.startHealthMonitor({
|
|
336
|
+
interval: 3000,
|
|
337
|
+
onUnhealthy: (status) => console.error('Server down:', status.message),
|
|
338
|
+
onRecovery: (status) => console.log('Server recovered!'),
|
|
339
|
+
});
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
Health checks detect zombie processes (killed/crashed but `isConnected()` still returns `true`) using `process.kill(pid, 0)`.
|
|
343
|
+
|
|
231
344
|
## Custom Jest Matchers
|
|
232
345
|
|
|
233
346
|
Built-in matchers so your assertions read like English:
|
|
@@ -390,7 +503,7 @@ mcp-tester/
|
|
|
390
503
|
npm install # Install dependencies
|
|
391
504
|
npm run build # Compile TypeScript
|
|
392
505
|
npm run dev # Watch mode — auto-rebuild on source changes
|
|
393
|
-
npm test # Run tests (
|
|
506
|
+
npm test # Run tests (auto-generates reports/test-report.html)
|
|
394
507
|
npm run lint # Lint code
|
|
395
508
|
npm run format # Format with Prettier
|
|
396
509
|
```
|
|
@@ -476,6 +589,30 @@ prettyPrint({ apiKey: 'sk-proj-abc123...', count: 42 });
|
|
|
476
589
|
|
|
477
590
|
See [Troubleshooting Guide](./docs/troubleshooting.md) for more details.
|
|
478
591
|
|
|
592
|
+
## VS Code Snippets
|
|
593
|
+
|
|
594
|
+
Type `mcp` in any TypeScript file to get started — 15 built-in snippets:
|
|
595
|
+
|
|
596
|
+
| Prefix | Inserts |
|
|
597
|
+
|--------|--------|
|
|
598
|
+
| `mcp-test` | Full test suite with lifecycle setup |
|
|
599
|
+
| `mcp-tool` | Tool call test + assertion |
|
|
600
|
+
| `mcp-resource` | Resource read test |
|
|
601
|
+
| `mcp-prompt` | Prompt get test |
|
|
602
|
+
| `mcp-client` | `new MCPClient()` + `start()` |
|
|
603
|
+
| `mcp-client-opts` | Client with timeout, retries, log level |
|
|
604
|
+
| `mcp-error` | Error handling test (`rejects.toThrow`) |
|
|
605
|
+
| `mcp-parallel` | `Promise.all` parallel tool calls |
|
|
606
|
+
| `mcp-list-tools` | List tools + `toHaveTool` assertion |
|
|
607
|
+
| `mcp-list-resources` | List resources + `toHaveResource` assertion |
|
|
608
|
+
| `mcp-list-prompts` | List prompts + `toHavePrompt` assertion |
|
|
609
|
+
| `mcp-assert-text` | `assert.toolTextEquals()` |
|
|
610
|
+
| `mcp-assert-json` | `assert.toolJsonEquals()` |
|
|
611
|
+
| `mcp-notifications` | Notification handler setup |
|
|
612
|
+
| `mcp-import` / `mcp-import-full` | Import statements |
|
|
613
|
+
|
|
614
|
+
Snippets are in `.vscode/mcp-tester.code-snippets` — works out of the box when you open the project in VS Code.
|
|
615
|
+
|
|
479
616
|
## Contributing
|
|
480
617
|
|
|
481
618
|
1. Fork the repository
|
package/dist/cli/index.js
CHANGED
|
@@ -3,11 +3,27 @@
|
|
|
3
3
|
import { Command } from 'commander';
|
|
4
4
|
import { MCPClient } from '../client/MCPClient.js';
|
|
5
5
|
import { MCPConnectionError, MCPTimeoutError, MCPServerError } from '../utils/errors.js';
|
|
6
|
+
import { generateTests } from '../generate-tests.js';
|
|
7
|
+
import { generateTypes } from '../generate-types.js';
|
|
8
|
+
import { readFileSync } from 'fs';
|
|
9
|
+
import { fileURLToPath } from 'url';
|
|
10
|
+
import { dirname, join } from 'path';
|
|
11
|
+
// Read version from package.json (works in both src and dist)
|
|
12
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
13
|
+
function getPackageVersion() {
|
|
14
|
+
try {
|
|
15
|
+
const pkg = JSON.parse(readFileSync(join(__dirname, '../../package.json'), 'utf-8'));
|
|
16
|
+
return pkg.version || '0.0.0';
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return '0.0.0';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
6
22
|
const program = new Command();
|
|
7
23
|
program
|
|
8
24
|
.name('mcp-tester')
|
|
9
25
|
.description('CLI tool for testing MCP servers')
|
|
10
|
-
.version(
|
|
26
|
+
.version(getPackageVersion(), '-V, --version');
|
|
11
27
|
// Global options - use string type since commander passes strings
|
|
12
28
|
program
|
|
13
29
|
.option('-t, --timeout <ms>', 'Request timeout in milliseconds', '30000')
|
|
@@ -290,6 +306,101 @@ program
|
|
|
290
306
|
await client.stop();
|
|
291
307
|
}
|
|
292
308
|
});
|
|
309
|
+
// Generate test file command
|
|
310
|
+
program
|
|
311
|
+
.command('generate')
|
|
312
|
+
.alias('gen')
|
|
313
|
+
.description('Generate test file from MCP server inspection')
|
|
314
|
+
.argument('<command>', 'Command to run the MCP server')
|
|
315
|
+
.argument('[args...]', 'Arguments for the server command')
|
|
316
|
+
.option('-o, --output <file>', 'Output file path (prints to stdout if omitted)')
|
|
317
|
+
.option('--framework <fw>', 'Test framework: jest or vitest', 'jest')
|
|
318
|
+
.option('--description <desc>', 'Description for the test suite')
|
|
319
|
+
.option('--no-resources', 'Skip resource tests')
|
|
320
|
+
.option('--no-prompts', 'Skip prompt tests')
|
|
321
|
+
.option('--no-tools', 'Skip tool tests')
|
|
322
|
+
.option('--no-matchers', 'Skip custom matchers import')
|
|
323
|
+
.action(async (command, serverArgs, opts) => {
|
|
324
|
+
const framework = String(opts['framework'] || 'jest');
|
|
325
|
+
if (framework !== 'jest' && framework !== 'vitest') {
|
|
326
|
+
console.error('❌ Framework must be "jest" or "vitest"');
|
|
327
|
+
process.exit(1);
|
|
328
|
+
}
|
|
329
|
+
try {
|
|
330
|
+
console.error('🔍 Inspecting MCP server...');
|
|
331
|
+
const code = await generateTests({
|
|
332
|
+
command,
|
|
333
|
+
args: serverArgs,
|
|
334
|
+
framework: framework,
|
|
335
|
+
description: opts['description'],
|
|
336
|
+
includeResources: opts['resources'] !== false,
|
|
337
|
+
includePrompts: opts['prompts'] !== false,
|
|
338
|
+
includeTools: opts['tools'] !== false,
|
|
339
|
+
includeMatchers: opts['matchers'] !== false,
|
|
340
|
+
timeout: parseInt(String(opts['timeout'] || '30000')),
|
|
341
|
+
});
|
|
342
|
+
if (opts['output']) {
|
|
343
|
+
const fs = await import('fs');
|
|
344
|
+
const path = await import('path');
|
|
345
|
+
const outputPath = String(opts['output']);
|
|
346
|
+
const dir = path.dirname(outputPath);
|
|
347
|
+
if (dir && dir !== '.') {
|
|
348
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
349
|
+
}
|
|
350
|
+
fs.writeFileSync(outputPath, code, 'utf-8');
|
|
351
|
+
console.error(`✅ Generated test file: ${outputPath}`);
|
|
352
|
+
}
|
|
353
|
+
else {
|
|
354
|
+
process.stdout.write(code);
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
catch (error) {
|
|
358
|
+
console.error(`❌ Error: ${error instanceof Error ? error.message : String(error)}`);
|
|
359
|
+
process.exit(1);
|
|
360
|
+
}
|
|
361
|
+
});
|
|
362
|
+
// Generate TypeScript types command
|
|
363
|
+
program
|
|
364
|
+
.command('generate-types')
|
|
365
|
+
.alias('gen-types')
|
|
366
|
+
.description('Generate TypeScript type declarations from MCP server tool schemas')
|
|
367
|
+
.argument('<command>', 'Command to run the MCP server')
|
|
368
|
+
.argument('[args...]', 'Arguments for the server command')
|
|
369
|
+
.option('-o, --output <file>', 'Output file path (prints to stdout if omitted)')
|
|
370
|
+
.option('--module-name <name>', 'Module name for import hints', '@slbdn/mcp-tester')
|
|
371
|
+
.option('--no-resources', 'Skip resource URI types')
|
|
372
|
+
.option('--no-prompts', 'Skip prompt argument types')
|
|
373
|
+
.action(async (command, serverArgs, opts) => {
|
|
374
|
+
try {
|
|
375
|
+
console.error('🔍 Inspecting MCP server for type generation...');
|
|
376
|
+
const types = await generateTypes({
|
|
377
|
+
command,
|
|
378
|
+
args: serverArgs,
|
|
379
|
+
moduleName: opts['moduleName'],
|
|
380
|
+
includeResources: opts['resources'] !== false,
|
|
381
|
+
includePrompts: opts['prompts'] !== false,
|
|
382
|
+
timeout: parseInt(String(opts['timeout'] || '30000')),
|
|
383
|
+
});
|
|
384
|
+
if (opts['output']) {
|
|
385
|
+
const fs = await import('fs');
|
|
386
|
+
const path = await import('path');
|
|
387
|
+
const outputPath = String(opts['output']);
|
|
388
|
+
const dir = path.dirname(outputPath);
|
|
389
|
+
if (dir && dir !== '.') {
|
|
390
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
391
|
+
}
|
|
392
|
+
fs.writeFileSync(outputPath, types, 'utf-8');
|
|
393
|
+
console.error(`✅ Generated type declarations: ${outputPath}`);
|
|
394
|
+
}
|
|
395
|
+
else {
|
|
396
|
+
process.stdout.write(types);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
catch (error) {
|
|
400
|
+
console.error(`❌ Error: ${error instanceof Error ? error.message : String(error)}`);
|
|
401
|
+
process.exit(1);
|
|
402
|
+
}
|
|
403
|
+
});
|
|
293
404
|
// Add custom help with examples using Commander's built-in help system
|
|
294
405
|
program.addHelpText('after', `
|
|
295
406
|
Examples:
|
|
@@ -300,6 +411,8 @@ Examples:
|
|
|
300
411
|
mcp-tester get-prompt greet node ./server.js --args '{"name":"World"}'
|
|
301
412
|
mcp-tester lt node ./server.js # short alias for list-tools
|
|
302
413
|
mcp-tester ct echo node ./server.js --params '{}' # short alias for call-tool
|
|
414
|
+
mcp-tester generate node ./server.js -o server.test.ts # generate test file
|
|
415
|
+
mcp-tester generate-types node ./server.js -o server.d.ts # generate TypeScript types
|
|
303
416
|
`);
|
|
304
417
|
// Show help when invoked with no arguments
|
|
305
418
|
const args = process.argv.slice(2);
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -160,6 +160,34 @@ export interface RetryOptions {
|
|
|
160
160
|
*
|
|
161
161
|
* @see {@link https://spec.modelcontextprotocol.io | MCP Specification}
|
|
162
162
|
*/
|
|
163
|
+
/**
|
|
164
|
+
* Health status of an MCP server connection.
|
|
165
|
+
*/
|
|
166
|
+
export interface HealthStatus {
|
|
167
|
+
/** Whether the server is healthy and responsive. */
|
|
168
|
+
healthy: boolean;
|
|
169
|
+
/** Timestamp of the health check. */
|
|
170
|
+
checkedAt: number;
|
|
171
|
+
/** Round-trip latency in ms, or -1 if the check failed. */
|
|
172
|
+
latencyMs: number;
|
|
173
|
+
/** Server PID, or null if not available. */
|
|
174
|
+
pid: number | null;
|
|
175
|
+
/** Human-readable status message. */
|
|
176
|
+
message: string;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Options for periodic health monitoring.
|
|
180
|
+
*/
|
|
181
|
+
export interface HealthMonitorOptions {
|
|
182
|
+
/** Interval between health checks in ms. @defaultValue 5000 */
|
|
183
|
+
interval?: number;
|
|
184
|
+
/** Called when the server becomes unhealthy. */
|
|
185
|
+
onUnhealthy?: (status: HealthStatus) => void;
|
|
186
|
+
/** Called when a previously unhealthy server recovers. */
|
|
187
|
+
onRecovery?: (status: HealthStatus) => void;
|
|
188
|
+
/** Called on every health check (healthy or not). */
|
|
189
|
+
onCheck?: (status: HealthStatus) => void;
|
|
190
|
+
}
|
|
163
191
|
export declare class MCPClient {
|
|
164
192
|
private client;
|
|
165
193
|
private transport;
|
|
@@ -167,6 +195,8 @@ export declare class MCPClient {
|
|
|
167
195
|
private notificationHandlers;
|
|
168
196
|
private logger;
|
|
169
197
|
private retryOptions;
|
|
198
|
+
private healthMonitorTimer;
|
|
199
|
+
private lastHealthStatus;
|
|
170
200
|
/**
|
|
171
201
|
* Creates a new MCPClient instance.
|
|
172
202
|
*
|
|
@@ -367,6 +397,62 @@ export declare class MCPClient {
|
|
|
367
397
|
* ```
|
|
368
398
|
*/
|
|
369
399
|
isConnected(): boolean;
|
|
400
|
+
/**
|
|
401
|
+
* Check if the server is alive and responsive.
|
|
402
|
+
*
|
|
403
|
+
* Sends a lightweight request to verify the server process is running
|
|
404
|
+
* and the MCP connection is functional. Detects zombie processes by
|
|
405
|
+
* checking if the PID is still alive.
|
|
406
|
+
*
|
|
407
|
+
* @returns A {@link HealthStatus} object with health info
|
|
408
|
+
*
|
|
409
|
+
* @example
|
|
410
|
+
* ```typescript
|
|
411
|
+
* const health = await client.isHealthy();
|
|
412
|
+
* if (!health.healthy) {
|
|
413
|
+
* console.error(`Server unhealthy: ${health.message}`);
|
|
414
|
+
* console.error(`PID ${health.pid}, latency: ${health.latencyMs}ms`);
|
|
415
|
+
* }
|
|
416
|
+
* ```
|
|
417
|
+
*/
|
|
418
|
+
isHealthy(): Promise<HealthStatus>;
|
|
419
|
+
/**
|
|
420
|
+
* Get the last health check result without performing a new check.
|
|
421
|
+
*
|
|
422
|
+
* @returns The last {@link HealthStatus}, or null if never checked
|
|
423
|
+
*/
|
|
424
|
+
getLastHealthStatus(): HealthStatus | null;
|
|
425
|
+
/**
|
|
426
|
+
* Get the server process PID.
|
|
427
|
+
*
|
|
428
|
+
* @returns The PID, or null if not connected / not available
|
|
429
|
+
*/
|
|
430
|
+
getServerPid(): number | null;
|
|
431
|
+
/**
|
|
432
|
+
* Start periodic health monitoring.
|
|
433
|
+
*
|
|
434
|
+
* Runs {@link isHealthy} at the specified interval and calls
|
|
435
|
+
* the provided callbacks on status changes.
|
|
436
|
+
*
|
|
437
|
+
* @param options - Monitoring configuration
|
|
438
|
+
*
|
|
439
|
+
* @example
|
|
440
|
+
* ```typescript
|
|
441
|
+
* client.startHealthMonitor({
|
|
442
|
+
* interval: 3000,
|
|
443
|
+
* onUnhealthy: (status) => console.error('Server down:', status.message),
|
|
444
|
+
* onRecovery: (status) => console.log('Server recovered:', status.message),
|
|
445
|
+
* });
|
|
446
|
+
*
|
|
447
|
+
* // Later...
|
|
448
|
+
* client.stopHealthMonitor();
|
|
449
|
+
* ```
|
|
450
|
+
*/
|
|
451
|
+
startHealthMonitor(options?: HealthMonitorOptions): void;
|
|
452
|
+
/**
|
|
453
|
+
* Stop periodic health monitoring.
|
|
454
|
+
*/
|
|
455
|
+
stopHealthMonitor(): void;
|
|
370
456
|
/**
|
|
371
457
|
* Sets the logging level for the client.
|
|
372
458
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MCPClient.d.ts","sourceRoot":"","sources":["../../src/client/MCPClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAgBL,0BAA0B,EAE1B,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,QAAQ,EAKT,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"MCPClient.d.ts","sourceRoot":"","sources":["../../src/client/MCPClient.ts"],"names":[],"mappings":"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"}
|