Overview
Test suites are collections of related test cases that validate specific aspects of your MCP server. Each suite defines:- Test type (conversational, compliance, security)
- Execution settings (parallelism, timeouts)
- Test cases with specific goals and success criteria
Suite Types
Conversational Test Suites
Test realistic user workflows through multi-turn conversations.- New user onboarding flows
- Feature discovery and usage
- Complex multi-step tasks
- Error handling and recovery
Compliance Test Suites
Validate MCP protocol conformance and technical requirements.- Protocol compliance validation
- Capability negotiation testing
- Standard conformance verification
Security Test Suites
Test authentication, authorization, and vulnerability resistance.- Authentication mechanism validation
- Input sanitization testing
- Rate limiting verification
- Vulnerability scanning
Test Suite Structure
Core Fields
Every test suite includes these fields:suite_id
- Required unique identifier for referencing the suitename
- Required descriptive name shown in reportsdescription
- Optional suite description (default: null)suite_type
- Optional but recommended for proper execution behaviorcreated_at
- Creation timestamp (default: current UTC time)parallelism
- Number of concurrent test executions (default: 5)auth_required
- Whether server authentication is needed (default: false, but true for security suites)
Test Case Structures
Each suite type has specific test case structures:Conversational Test Cases
test_id
- Unique identifier for the testuser_message
- Initial message from user to start conversationsuccess_criteria
- Natural language description of what constitutes success
max_turns
- Maximum conversation turns (default: 10)context_persistence
- Whether to maintain context between turns (default: true)metadata
- Additional test categorization and priority information
Compliance Test Cases
test_id
- Unique identifier for the test
protocol_version
- MCP protocol version to test (default: “2025-06-18”)required_capabilities
- Capabilities that must be supported (default: [])check_categories
- Protocol aspects to validate (default: [“handshake”, “capabilities”, “tools”, “resources”])
Security Test Cases
test_id
- Unique identifier for the testauth_method
- Authentication method to test (e.g., “bearer_token”, “oauth”)
rate_limit_threshold
- Requests per minute before rate limiting (default: 100)vulnerability_checks
- Security vulnerabilities to test (default: [“injection”, “auth”, “rate_limit”])severity_threshold
- Minimum severity level to report (default: “medium”)
Suite Configuration Options
Execution Settings
Control how tests are executed:parallelism
- Concurrent test execution (default varies by suite type: compliance=2-3, security=2, conversational=1-3)
User Simulation (Conversational Suites)
Configure how AI agents behave as users:user_patience_level
- How quickly users get frustrated (default: “medium”)conversation_style
- Communication style (default: “natural”)
Type-Specific Options
strict_mode
- Strict protocol compliance checking (default: true)
include_penetration_tests
- Include penetration testing (default: false)
Complete Suite Examples
Basic User Interaction Suite
Comprehensive Compliance Suite
Security Testing Suite
Suite Management
Creating Test Suites
Interactive creation:Managing Test Cases
Add test cases to existing suites:Configuration Management
List configurations:Running Test Suites
Basic Execution
Execution Behavior
- Tests run sequentially by default (parallelism=1 in execution)
- Suite parallelism setting controls internal test orchestration
- Results are saved to test_results/runs/ directory
- Each test includes conversation transcript and LLM judge evaluation
Built-in Templates
The framework includes four built-in templates with environment variable substitution:Basic Server Template
Suite Templates
- Compliance Template: 3 test cases covering handshake, capabilities, and tools
- Security Template: 3 test cases covering auth validation, rate limiting, and injection testing
- Conversational Template: 2 test cases covering multi-turn conversations and error recovery
${VAR:-default}
syntax.
Next Steps
Now that you understand test suites:- Create your first suite with
mcp-t create suite
- Run the quickstart with
mcp-t quickstart
for complete setup - Explore test results in the
test_results/
directory - Add servers with
mcp-t create server
- Generate test suites automatically with
mcp-t generate