Features deck · v5.3.0
MCP Test Harness
The pytest-style testing framework for MCP servers — functional, regression, and performance in one CI-native tool.
- 1080+ tests · 100% library coverage gate
- 26 PyPI packages + GHCR Docker + GitHub Action
- MIT licensed · no LLM required
The problem
MCP Inspector doesn't belong in CI
Exploration is manual. Production needs deterministic, repeatable, code-first tests on every push — with JUnit, SARIF, and HTML evidence.
Three modes
Functional · Regression · Performance
assert_tool_call, assert_capabilities, assert_tool_schema, protocol version gates
assert_snapshot, mask_patterns, assert_tool_idempotent — catch silent drift
assert_latency p90/p95/p99, assert_throughput / assert_load_phases, SLO gates in CI
Productivity
Record → Generate → Gate
mcp-test record — live MCP calls become tests + snapshots (RFC-001)
mcp-test generate — scaffold suites from tool definitions
pre-commit hook, GitHub Action, conformance badge, SARIF export
Reports
Console · JUnit · JSON · HTML · PDF
Self-contained HTML dashboard with charts, chaos panels, MCP trace timeline, security findings, and PDF export via Save as PDF or mcp-test export-pdf.
Resiliency & security
Chaos · Experiments · SARIF · Bastion pairing
@marker chaos_faults — delay, 503, truncate, schema drift
mcp-test experiment run --suite core with scorecards
Suites A–D · incident E–K · audit-chain · AGENTS.md Unicode · load resilience · OWASP MCP SARIF
Test defenses in CI; enforce at runtime in production
llms.txt / llms-full.txt · mcp-test scan-agents · Cursor skill template
All-time PyPI totals across 26 packages · live Integrations dashboard
TS · Java · Go · .NET adapters via mcp-test-suite · package download links
Snapshot sanctioned MCP surface; fail CI on unapproved schema drift
Distribution
26 PyPI wheels · Docker · Binary · Action
Core harness plus 25 framework shims (LangGraph, Pydantic AI, OpenAI Agents, and more) — 195k+ all-time ecosystem downloads. GHCR runtime and dev images. Marketplace composite action with PR comments.
pip install mcp-test-harness==5.3.0
docker pull ghcr.io/vaquarkhan/mcp-test-harness:latest
Get started in 5 minutes
pip install mcp-test-harness → mcp-test init → write test_*.py → mcp-test