About PictMCP
An archived MCP server for software developers who generate test cases with AI assistants. It uses Microsoft’s PICT algorithm via WebAssembly to create deterministic pairwise combinations, with constraints and structured JSON output.
Key features
- 01Generate pairwise test cases
- 02Apply parameter constraints
- 03Run locally using WebAssembly
- 04Return structured JSON results
- 05No external network calls
Use cases
- 01Reduce combinations for multi-parameter tests
- 02Generate cases for browser, OS, and language combinations
- 03Exclude invalid combinations with constraints
MCP support
Exposes pairwise test generation through the `generate-test-cases` MCP tool. Processing runs locally, and results are returned as structured JSON.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
1Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| parameters | array | Yes | Represents a parameter definition for PICT test case generation. |
| constraintsText | string | No | PICT constraint expressions to filter invalid combinations. |
Details
From the project READMEPictMCP
Caution
This package has been archived and will no longer be maintained. Please consider using takeyaqa/tester-skills.
Pairwise testing for your AI assistant
PictMCP is an MCP server for software developers who design test cases with AI assistants, providing reliable, algorithm-correct pairwise test generation.
Why use this?
- AI is great at test design, but not at combinatorial math.
- Pairwise generation must be deterministic and correct.
- PictMCP separates thinking (AI) from calculation (PICT).
Prefer a GUI? Check out PictRider.
Features
- 🔒 Local Processing - All processing runs locally with no external network calls
- ⚡ WebAssembly Powered - Fast execution using Microsoft's PICT algorithm compiled to WebAssembly
- 🔗 Constraint Support - Define constraints to filter out invalid parameter combinations
- 📊 Structured Output - Returns well-structured JSON results for easy integration
Installation
Prerequisites
- Node.js (v22 or higher)
MCP Client Configuration
Add the following configuration to your MCP client. This is an example configuration; the exact format may vary depending on your client. Please refer to your MCP client's documentation for details.
{
"mcpServers": {
"PictMCP": {
"command": "npx",
"args": ["-y", "pictmcp"]
}
}
}
Quick Start
Once installed, you can ask your AI assistant to generate test cases using pairwise combinatorial testing.
Example Prompt
Generate test cases for a login form with the following parameters:
- Browser: Chrome, Firefox, Safari
- OS: Windows, macOS, Linux
- Language: English, Japanese, Spanish
The AI assistant will use the generate-test-cases tool to create an optimized set of test cases that covers all pairwise combinations.
Example Result
AI assistants typically format the results as a table:
# Browser OS Language 1 Chrome Linux Japanese 2 Chrome macOS Spanish 3 Safari Linux Spanish 4 Firefox Linux English 5 Safari Windows English 6 Firefox Windows Spanish 7 Firefox macOS Japanese 8 Safari macOS Japanese 9 Chrome macOS English 10 Chrome Windows Japanese
Example with Constraints
Generate test cases for:
- Browser: Chrome, Firefox, Safari
- OS: Windows, macOS, Linux
- Language: English, Japanese, Spanish
With constraint: Safari only works on macOS
You can describe constraints in plain language — the AI assistant will convert them into PICT constraint syntax automatically.
# Browser OS Language 1 Firefox Linux Spanish 2 Chrome Windows Spanish 3 Firefox Windows Japanese 4 Chrome Linux Japanese 5 Chrome macOS English 6 Firefox Windows English 7 Chrome Linux English 8 Safari macOS Spanish 9 Safari macOS Japanese 10 Firefox macOS Spanish 11 Safari macOS English
FAQ
Does this communicate with external servers?
No. All processing runs locally with no external network calls.
I already use the pict CLI. Do I need this?
If your AI agent can execute CLI commands directly, you may not need this tool. However, PictMCP provides:
- A standardized MCP interface for AI assistants
- No need to install PICT separately (WebAssembly-based)
- Structured JSON output instead of TSV
What is pairwise testing?
Pairwise testing (also known as all-pairs testing) is a combinatorial testing method that generates test cases covering all possible pairs of input parameters. This significantly reduces the number of test cases while maintaining high defect detection rates.
What constraint syntax is supported?
You don't need to write PICT syntax directly. Simply describe constraints in natural language and your AI assistant will handle the conversion. PictMCP supports the full PICT constraint syntax. See the PICT documentation for details.
License
This project is licensed under the MIT License—see the LICENSE file for details.
Disclaimer
PictMCP is provided "as is", without warranty of any kind. The authors are not liable for any damages arising from its use.
Generated test cases do not guarantee complete coverage or the absence of defects. Please supplement pairwise testing with other strategies as appropriate.
PictMCP is an independent project and is not affiliated with Microsoft Corporation.
If you find PictMCP useful, please consider starring the repository.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.