Skip to main content

Crate mcp_tester

Crate mcp_tester 

Source
Expand description

MCP Server Testing Library

This crate provides comprehensive testing capabilities for MCP servers. It can be used as both a standalone CLI tool (mcp-tester) and as a library.

§Examples

§Generate Test Scenarios

use mcp_tester::{generate_scenarios, GenerateOptions};

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    let options = GenerateOptions {
        all_tools: true,
        with_resources: true,
        with_prompts: true,
    };

    generate_scenarios(
        "http://localhost:3000",
        "test_scenario.yaml",
        options
    ).await?;

    Ok(())
}

§Run Test Scenarios

use mcp_tester::run_scenario;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    run_scenario(
        "test_scenario.yaml",
        "http://localhost:3000",
        false // detailed output
    ).await?;

    Ok(())
}

Re-exports§

pub use app_validator::AppValidationMode;
pub use app_validator::AppValidator;
pub use conformance::ConformanceDomain;
pub use conformance::ConformanceRunner;
pub use post_deploy_report::FailureDetail;
pub use post_deploy_report::PostDeployReport;
pub use post_deploy_report::TestCommand as PostDeployTestCommand;
pub use post_deploy_report::TestOutcome as PostDeployTestOutcome;
pub use report::expand_guide_anchor;
pub use report::OutputFormat;
pub use report::TestCategory;
pub use report::TestReport;
pub use report::TestResult;
pub use report::TestStatus;
pub use report::TestSummary;
pub use scenario::TestScenario;
pub use scenario_executor::ScenarioExecutor;
pub use scenario_generator::ScenarioGenerator;
pub use tester::ServerTester;

Modules§

app_validator
MCP App metadata validation for tools and resources.
conformance
MCP Protocol Conformance Test Suite
diagnostics
oauth
OAuth authentication support for CLI tools.
post_deploy_report
Phase 79 Wave 0: machine-readable test-command output contract.
report
scenario
scenario_executor
scenario_generator
tester
validators

Structs§

GenerateOptions
Options for generating test scenarios
OAuthConfig
OAuth configuration for CLI authentication flows.
OAuthHelper
OAuth helper for CLI authentication flows.

Functions§

create_tester
Create a server tester instance
generate_scenarios
Generate test scenarios from server capabilities
generate_scenarios_with_transport
Generate test scenarios with explicit transport type
run_scenario
Run a test scenario from a file
run_scenario_with_transport
Run a test scenario with explicit transport type