@giaeulate/testing-mcp
v1.0.0
Published
MCP server for automated testing - supports React, Python, and Golang projects
Maintainers
Readme
@giaeulate/testing-mcp
MCP (Model Context Protocol) server for automated testing. Supports Python, JavaScript/TypeScript, and Golang projects.
Features
- Auto-detection of project type and test framework
- Test generation with AAA pattern (Arrange-Act-Assert)
- Test execution with structured results
- Failure analysis with suggested fixes
- Setup configuration for new projects
Supported Languages & Frameworks
| Language | Test Framework | Detection |
|----------|----------------|-----------|
| Python | pytest | requirements.txt, pyproject.toml, *.py |
| JavaScript/TypeScript | Jest, Vitest | package.json, *.js, *.ts, *.jsx, *.tsx |
| Golang | go test | go.mod, *.go |
Installation
Using npm (recommended)
npm install -g @giaeulate/testing-mcpAdd to Claude Code
claude mcp add testing-mcp -- npx @giaeulate/testing-mcpOr if installed globally:
claude mcp add testing-mcp -- testing-mcpVerify installation
claude mcp listAvailable Tools
1. analyze_project
Analyzes a project and detects the technology stack.
Input:
projectPath(string, required): Absolute path to the project
Output:
language: python | javascript | typescript | golangframework: django | fastapi | flask | react | vue | express | gin | fiber | nulltestFramework: pytest | jest | vitest | gotesttestableFiles: List of files that can be testedexistingTests: List of existing test filesconfigFiles: Configuration files found
2. generate_tests
Generates tests for a specific file.
Input:
filePath(string, required): Absolute path to the file to testtestFramework(string, optional): pytest | jest | vitest | gotesttestType(string, optional): unit | integration | e2e (default: unit)
Output:
testCode: Generated test codetestFilePath: Suggested path for the test filedependencies: Required dependencies (if missing)
3. run_tests
Runs tests in a project.
Input:
projectPath(string, required): Absolute path to the projecttestPattern(string, optional): Pattern to filter testscoverage(boolean, optional): Include coverage report
Output:
passed: Number of passed testsfailed: Number of failed testsskipped: Number of skipped testscoverage: Coverage percentage (if requested)failures: Detailed list of failuresduration: Execution time in msrawOutput: Complete command output
4. analyze_failures
Analyzes test failures and suggests fixes.
Input:
testOutput(string, required): Output from failed testssourceFile(string, optional): Related source file path
Output:
analysis: Problem explanationsuggestedFix: Suggested code fixrelatedFiles: Potentially related files
5. setup_testing
Initializes testing configuration in a project.
Input:
projectPath(string, required): Absolute path to the projectframework(string, required): pytest | jest | vitest | gotest
Output:
configFiles: Created configuration filescommands: Commands to install dependenciesinstructions: Additional instructions
Usage Examples
Analyze a project
analyze_project({ projectPath: "/path/to/my-project" })Generate tests for a file
generate_tests({
filePath: "/path/to/my-project/src/utils.py",
testType: "unit"
})Run tests with coverage
run_tests({
projectPath: "/path/to/my-project",
coverage: true
})Setup testing in a new project
setup_testing({
projectPath: "/path/to/my-project",
framework: "pytest"
})License
MIT
