@rog0x/mcp-testing-tools
v1.0.2
Published
Testing and quality assurance tools for AI agents via MCP
Downloads
223
Maintainers
Readme
@rog0x/mcp-testing-tools
Testing and quality assurance tools for AI agents, exposed via the Model Context Protocol (MCP).
Tools
generate_tests
Generate test cases from a function signature. Produces four categories of tests as ready-to-run Jest or Vitest code:
- Happy path -- valid inputs, expected outputs
- Edge cases -- empty strings, zero values, null parameters
- Error cases -- missing arguments, wrong types
- Boundary values -- extreme numbers, large arrays, NaN
Parameters:
| Name | Type | Required | Description |
|------|------|----------|-------------|
| signature | string | Yes | Function signature, e.g. async function fetchUser(id: number): Promise<User> |
| framework | string | No | jest or vitest (default: vitest) |
| module_path | string | No | Import path for the module under test (default: ./module) |
generate_mock_data
Generate realistic mock data for testing. Supported types:
name, email, address, date, uuid, phone, company, credit_card, ip
Parameters:
| Name | Type | Required | Description |
|------|------|----------|-------------|
| type | string | Yes | Data type to generate |
| count | number | No | Number of items (default: 10, max: 1000) |
| locale | string | No | en or es (default: en) |
| types | string[] | No | Generate mixed records with multiple field types |
generate_api_mock
Generate mock API responses from a schema definition. Creates realistic JSON payloads for REST endpoints by inferring values from field names and types.
Parameters:
| Name | Type | Required | Description |
|------|------|----------|-------------|
| endpoint | string | Yes | API endpoint path |
| method | string | No | HTTP method (default: GET) |
| fields | object[] | Yes | Field schemas with name, type, optional items, fields, nullable, enum |
| count | number | No | Number of records (default: 1, max: 100) |
| status_code | number | No | HTTP status code (default: 200) |
| wrap_in_envelope | boolean | No | Wrap in { success, data, meta } (default: true) |
analyze_test_coverage
Analyze source code and test code to find untested functions. Prioritizes suggestions by:
- Export status (public API surface)
- Cyclomatic complexity estimate
- Parameter count
- Async functions (more error paths)
Parameters:
| Name | Type | Required | Description |
|------|------|----------|-------------|
| source_code | string | Yes | Source code to analyze |
| test_code | string | Yes | Existing test code |
| source_file_name | string | No | Filename label (default: source.ts) |
generate_assertions
Generate detailed assertion code by comparing expected and actual values. Performs deep diff and produces per-field assertions with descriptive comments.
Parameters:
| Name | Type | Required | Description |
|------|------|----------|-------------|
| expected | string | Yes | Expected value as JSON string |
| actual | string | Yes | Actual value as JSON string |
| label | string | No | Description for the comparison |
| framework | string | No | jest, vitest, or chai (default: jest) |
| deep | boolean | No | Deep equality for objects/arrays (default: true) |
Setup
npm install
npm run buildUsage with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"testing-tools": {
"command": "node",
"args": ["path/to/mcp-testing-tools/dist/index.js"]
}
}
}License
MIT
