@reaatech/mcp-load-test-cli
Status: Pre-1.0 — APIs may change in minor versions. Pin to a specific version in production.
Command-line interface for MCP load testing. Provides mcp-load-test and mcp-lt binaries with four test commands (load, ramp, soak, spike) and a baseline comparison command (compare). Built on Commander.js with YAML/JSON config file support.
Installation
npm install -g @reaatech/mcp-load-test-cli
# or
pnpm add -g @reaatech/mcp-load-test-cli
Commands
Command Description Default Profile loadFull-featured load test with all options ramp rampQuick ramp test with minimal flags ramp soakExtended soak test (default 30 min) soak spikeSpike/burst load test spike compareCompare two JSON reports against a baseline n/a
Quick Start
# Auto-detect transport, ramp from 1→50 over 60s
mcp-load-test load --endpoint https://api.example.com/mcp
# Soak at constant 25 concurrency for 30 minutes
mcp-load-test soak --endpoint https://api.example.com/mcp --concurrency 25
# Spike test: 10 baseline, burst to 100, repeat 3×
mcp-load-test spike --endpoint https://api.example.com/mcp --baseline 10 --spike 100
# Markdown output to file with breaking point detection
mcp-load-test ramp --endpoint https://api.example.com/mcp --max-concurrency 100 --breaking-point --format markdown --output report.md
# Compare two reports
mcp-load-test compare --baseline baseline.json --current current.json
CLI Options
load Command
Flag Type Default Description --endpointstring(required) MCP server endpoint (URL or command) --transportstringautostdio, sse, http, or auto--profilestringrampramp, soak, or spike--max-concurrencystring50Maximum concurrent sessions --durationstring60Test duration in seconds --patternsstringexplore-then-actComma-separated pattern names --breaking-pointbooleanfalseEnable breaking point detection --formatstringconsoleOutput format: console, markdown, json --outputstring— Output file path (writes to stdout if omitted) --timeoutstring30000Request timeout in ms --configstring— YAML or JSON config file path
ramp Command
Flag Type Default Description --endpointstring(required) MCP server endpoint --transportstringautoTransport type --max-concurrencystring50Maximum concurrent sessions --durationstring60Test duration in seconds --formatstringconsoleOutput format --outputstring— Output file path --breaking-pointbooleanfalseEnable breaking point detection
soak Command
Flag Type Default Description --endpointstring(required) MCP server endpoint --transportstringautoTransport type --concurrencystring50Constant concurrency --durationstring1800Test duration in seconds --formatstringconsoleOutput format --outputstring— Output file path --breaking-pointbooleanfalseEnable breaking point detection
spike Command
Flag Type Default Description --endpointstring(required) MCP server endpoint --transportstringautoTransport type --baselinestring10Baseline concurrency --spikestring100Spike concurrency --durationstring300Test duration in seconds --formatstringconsoleOutput format --outputstring— Output file path --breaking-pointbooleanfalseEnable breaking point detection
compare Command
Flag Type Default Description --baselinestring(required) Baseline report JSON path --currentstring(required) Current report JSON path --formatstringconsoleOutput format: console or markdown --outputstring— Output file path
Configuration File
All commands support YAML or JSON config files via --config:
# load-test-config.yaml
endpoint : "https://api.example.com/mcp"
transport : "http"
auth :
bearerToken : "${MCP_BEARER_TOKEN}"
profile :
type : "ramp"
minConcurrency : 1
maxConcurrency : 100
rampDurationMs : 300000
holdDurationMs : 120000
patterns :
- name : "explore-then-act"
weight : 0.7
- name : "multi-step-workflow"
weight : 0.3
breakingPoint :
enabled : true
thresholds :
errorRate : 0.05
latencyP99 : 5000
output :
format : "markdown"
file : "./load-test-report.md"
CLI flags override config file values.
Exit Codes
Code Meaning 0Test succeeded, grade A/B/C 1Test error or grade D/F
Environment Variables
Variable Description Default LOG_LEVELPino log level (trace, debug, info, warn, error) infoMCP_LT_PRETTY_LOGSEnable colored pretty-printed log output (set automatically by CLI) 1 in CLI mode
Related Packages
License
MIT