Skip to main content

mcp-assert

The testing standard for MCP servers. Lint, test, and fuzz. No SDK required. No LLM required.

This is the PyPI distribution of mcp-assert, a single Go binary that connects to your MCP server over stdio, SSE, or HTTP, runs 24 static analysis rules, calls tools with real arguments, and asserts results against YAML expectations.

Install

pip install mcp-assert

Usage

# Zero-config audit (finds crashes)
mcp-assert audit --server "python my_server.py"

# Static analysis (finds schema issues)
mcp-assert lint --server "python my_server.py"

# Auto-fix schema issues
mcp-assert lint --server "python my_server.py" --fix

# Adversarial fuzzing
mcp-assert fuzz --server "python my_server.py"

# Run YAML assertions
mcp-assert run --suite evals/

# CI with threshold
mcp-assert ci --suite evals/ --threshold 95

Or use as a Python module:

python -m mcp_assert lint --server "python my_server.py"

pytest Integration

pip install pytest-mcp-assert
pytest --mcp-suite evals/

Each YAML file becomes a pytest Item. Configure via pyproject.toml:

[tool.pytest.ini_options]
mcp_suite = "evals/"
mcp_fixture = "fixtures/"

Lint (24 Rules)

mcp-assert lint --server "python my_server.py"

  E  E103   create_user    Required parameter "email" has no description
  W  W109   search         User-facing parameter "query" has no examples
  W  W108   delete_user    Tool name implies mutation but description doesn't acknowledge

# Auto-generate fixes
mcp-assert lint --server "python my_server.py" --fix

# Strict mode for CI
mcp-assert lint --server "python my_server.py" --strict

Links

License

MIT

Metadata

Release files for mcp-assert 0.12.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for mcp-assert 0.12.3
File
mcp_assert-0.12.3-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
mcp_assert-0.12.3-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
mcp_assert-0.12.3-py3-none-manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
mcp_assert-0.12.3-py3-none-manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
mcp_assert-0.12.3-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
mcp_assert-0.12.3-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 35.8 MB

Release files / mcp_assert-0.12.3-py3-none-win_arm64.whl

Download URL mcp_assert-0.12.3-py3-none-win_arm64.whl
Size 6.0 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
4aafa6d7240c59aa359d5896eba2a9732bd72b7e7cce9358eecbccc47b281c39
BLAKE2b-256 checksum
How to use checksums
4c4039151f8868843ac1b8d78a216873141b5b35c5db99e86ae69c89962fe8ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / mcp_assert-0.12.3-py3-none-win_amd64.whl

Download URL mcp_assert-0.12.3-py3-none-win_amd64.whl
Size 3.4 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
aff4cb96224b118c97651027aa5145b3277ac1143f1cfe481492cbe4ffddc236
BLAKE2b-256 checksum
How to use checksums
b4b978d689b8bc724564b741729a1cdd0323eda577ec284f6279971effc20ee5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / mcp_assert-0.12.3-py3-none-manylinux2014_x86_64.whl

Download URL mcp_assert-0.12.3-py3-none-manylinux2014_x86_64.whl
Size 6.7 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
16edd89e772d893e0c23282c307fcc6279e0c8ed2b108811fec96a8e6b78e407
BLAKE2b-256 checksum
How to use checksums
fb282115526eac01d212775b2fc2cda51c6eab589fccc995d4a6ee7330f28ec2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / mcp_assert-0.12.3-py3-none-manylinux2014_aarch64.whl

Download URL mcp_assert-0.12.3-py3-none-manylinux2014_aarch64.whl
Size 6.4 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
9e6d5188c0564e642be182d1a65c992f85683562699261d271e952a724e30286
BLAKE2b-256 checksum
How to use checksums
92be0b50d6d019af2664fba94326b1af0e3b53f44a2bf2ea4d1e751d45cdf016
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / mcp_assert-0.12.3-py3-none-macosx_11_0_arm64.whl

Download URL mcp_assert-0.12.3-py3-none-macosx_11_0_arm64.whl
Size 6.5 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9f6bf85abd920ab4727631144c792218b23f3d3ba65f363de64a546eff6b0eb7
BLAKE2b-256 checksum
How to use checksums
8fa96cc344c506a9e9e71427c4af9b3c211076809472dcadc0c4874149e0ed12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / mcp_assert-0.12.3-py3-none-macosx_10_12_x86_64.whl

Download URL mcp_assert-0.12.3-py3-none-macosx_10_12_x86_64.whl
Size 6.7 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
0850c08db1fd40e6c26739c8edf32bcbec04e59712be615fd71f1c02554fdc35
BLAKE2b-256 checksum
How to use checksums
430d86caac443efe96c1563d07192f52d2d464d3963606d0bacd69dd0e8c33b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Security for mcp-assert 0.12.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page