Back to the catalog

io.github.rog0x/testing

Test generation, mocks, coverage analysis for AI agents

Open source Open in the app JSON README (API)

About

Test generation, mocks, coverage analysis for AI agents

Details

Kind
MCP servers
Topic
No topic detected
Publisher
rog0x
Origin
official
Category
ferramentas
Transport
local
Version
1.0.2
Last push
2026-03-21T20:21:26Z
Repository state
ativo
Language
TypeScript
License
MIT
Added
2026-08-29 04:01:19
Updated
2026-08-29 04:01:19
Origin id
io.github.rog0x/testing

README

# @rog0x/mcp-testing-tools

Testing and quality assurance tools for AI agents, exposed via the [Model Context Protocol (MCP)](https://modelcontextprotocol.io/).

## 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

```bash
npm install
npm run build
```

## Usage with Claude Desktop

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "testing-tools": {
      "command": "node",
      "args": ["path/to/mcp-testing-tools/dist/index.js"]
    }
  }
}
```

## License

MIT

More