- Home
- MCP servers
- Test Runner
Test Runner
- typescript
15
GitHub Stars
typescript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"privsim-mcp-test-runner": {
"command": "node",
"args": [
"/path/to/test-runner-mcp/build/index.js"
],
"env": {
"PATH": "/path/to/flutter/bin:/usr/local/bin:/usr/bin:/bin",
"NODE_PATH": "/path/to/test-runner-mcp/node_modules",
"PUB_CACHE": "/path/to/pub-cache",
"FLUTTER_ROOT": "/path/to/flutter"
}
}
}
}You run this MCP server to execute tests across multiple frameworks from a unified interface, parse their outputs, and produce structured results for easy reporting and automation.
How to use
You connect to the Test Runner MCP from an MCP client and configure it to execute tests for the frameworks you use. The server accepts a single, consistent testing interface so you can run Bats, Pytest, Flutter tests, Jest, Go tests, Rust tests, or a generic command through one endpoint. Use the configured command and arguments to start a test run, collect live output, and save structured results for reporting and CI pipelines.
How to install
Prerequisites you need before installing the MCP server include Node.js and npm. You also install the test frameworks you intend to use, such as Bats, Pytest, Flutter, Jest, Go, and Rust, according to their official guides.
# Install the MCP server package
npm install test-runner-mcp
# Optional: verify installation
npm ls test-runner-mcp -g
# Install example prerequisites for Flutter users (adjust paths as needed)
# Flutter itself is installed outside of npm; ensure Flutter is available on your PATH
# Example: flutter doctor will verify setup
Configuration and examples
Configure the MCP server in your MCP settings to point to the local Node-based runner and pass the required environment variables for your Flutter setup if you plan to run Flutter tests.
{
"mcpServers": {
"test_runner": {
"command": "node",
"args": ["/path/to/test-runner-mcp/build/index.js"],
"env": {
"NODE_PATH": "/path/to/test-runner-mcp/node_modules",
"FLUTTER_ROOT": "/path/to/flutter",
"PUB_CACHE": "/path/to/pub-cache",
"PATH": "/path/to/flutter/bin:/usr/local/bin:/usr/bin:/bin"
}
}
}
}
Security features
The server includes built-in security features to guard against potentially harmful commands, especially for the generic framework. It validates commands, sanitizes environment variables, and allows configurable overrides to balance safety with power when needed.
Security options you can configure include defaults that block sudo/su, prevent dangerous operations, and control shell behavior. You can override these restrictions when necessary.
Flutter Test Support
Flutter test support includes automatic environment setup, path configuration, and Flutter installation verification. It captures stack traces, assertions, and exceptions, and preserves raw output for detailed debugging.
Rust Test Support
Rust test support ensures RUST_BACKTRACE is enabled for clearer error messages. It parses cargo test output, captures detailed failure messages, identifies ignored tests, and provides a concise summary.
Generic Test Support
For CI/CD workflows or arbitrary commands, the generic framework analyzes output blocks, detects pass/fail indicators, and yields a structured result even when the format is unknown. It supports integration with tools like act, Docker, or custom scripts while enforcing configurable security.
Output format
The server outputs a structured representation of test results while preserving complete test output for auditing and debugging. Each test includes a name, pass/fail status, and the associated output lines. A summary aggregates total tests, passed and failed counts, and duration if available.