Enables natural language interaction with the QIT CLI for testing WordPress/WooCommerce plugins, including running security, E2E, PHPStan, and activation tests, managing test environments, handling test packages, and validating plugin ZIP files.
Enables natural language interaction with the QIT CLI for testing WordPress/WooCommerce plugins, including running security, E2E, PHPStan, and activation tests, managing test environments, handling test packages, and validating plugin ZIP files.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@QIT MCP Serverrun security tests on my woocommerce plugin"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
QIT MCP Server
An MCP (Model Context Protocol) server that wraps the QIT CLI, enabling natural language interaction and agent-based workflows for WordPress/WooCommerce plugin testing.
Features
Natural Language Testing: Run QIT tests using conversational commands
Agent Integration: Enable AI agents to run tests as part of automated workflows
Full CLI Coverage: Access all essential QIT CLI functionality through MCP tools
Smart CLI Detection: Automatically finds QIT CLI in PATH, local vendor, or custom location
Prerequisites
Node.js 18+
QIT CLI installed and accessible
Installation
git clone https://github.com/woocommerce/qit-mcp
cd qit-mcp
npm install
npm run buildConfiguration
Claude Code
Add to your Claude Code MCP settings (~/.claude.json):
{
"mcpServers": {
"qit": {
"type": "stdio",
"command": "node",
"args": ["/path/to/qit-mcp/dist/index.js"],
"env": {
"QIT_CLI_PATH": "/path/to/qit-cli/qit"
}
}
}
}QIT CLI Detection
The MCP server automatically detects QIT CLI in this order:
QIT_CLI_PATHenvironment variableqitin system PATH./vendor/bin/qit(local Composer installation)
Available Tools
Authentication (2 tools)
Tool | Description |
| Connect to WooCommerce.com Partner Developer account |
| Check current authentication status |
Test Execution (2 tools)
Tool | Description |
| Run any test type (security, e2e, phpstan, activation, etc.) |
| Run a predefined test group from qit.json |
Test Results (4 tools)
Tool | Description |
| Get test result(s) by ID |
| List test runs with filters |
| Get detailed test report |
| Open result in browser |
Groups (1 tool)
Tool | Description |
| Fetch status of a registered test group |
Environment (5 tools)
Tool | Description |
| Start a local test environment |
| Stop a running environment |
| List running environments |
| Execute command in environment container |
| Reset environment database |
Packages (2 tools)
Tool | Description |
| Manage test packages (publish, download, scaffold, delete, show) |
| List available test packages with filtering |
Configuration (1 tool)
Tool | Description |
| Manage backends, partners, and tunneling configuration |
Utilities (5 tools)
Tool | Description |
| List extensions you can test |
| Validate a plugin ZIP file |
| Manipulate QIT cache |
| Get QIT config directory path |
| Re-sync with QIT Manager |
Usage Examples
Natural Language (via Claude Code)
"Run security tests on my-plugin"
→ run_test(type="security", plugin="my-plugin")
"Start a test environment with PHP 8.2"
→ start_environment(php_version="8.2")
"Show me my recent failed tests"
→ list_tests(status="failed")
"What plugins can I test?"
→ list_extensions()Programmatic Usage
The MCP server communicates via stdio using the Model Context Protocol. See the MCP documentation for integration details.
Development
# Install dependencies
npm install
# Build
npm run build
# Watch mode
npm run dev
# Run tests
npm test
# Lint
npm run lintLicense
MIT