LeashIndex Get the report

Index / devtools

io.github.mrnh/rigor-mcp

io-github-mrnh-rigor-mcp declares 37 capabilities across 37 tools, with 1 critical issue. One of them, no-revocation, is recorded for every server in the index because MCP has no field in which to declare a way to switch a tool off; a missing declaration is not evidence that the control is missing.

50/100 exposureElevated

Manifest recorded 2026-10-30 from tools/list answered by the PyPI package rigor-mcp==0.5.0 (published to PyPI as rigor-mcp, listed in the official MCP registry as io.github.mrnh/rigor-mcp 0.5.0), run in an isolated container with no network access and no credentials. The date changes only when the manifest does. Not verified by a maintainer.

Issues

These describe what this server's manifest declares. A product can provide controls that MCP has no way to express — token revocation, an admin console, audit logs — and this page cannot see them. The absence of a declaration is not evidence that a control is absent.

critical · no-revocation · All 37 tools

37 of 37 tools declare no way for the customer to switch them off once granted. This applies to every tool because MCP has no field in which to declare a revocation mechanism; the product may provide one outside MCP that a manifest cannot show.

high · no-expiry · All 37 tools

37 of 37 tools declare no expiry. This applies to every tool because MCP has no field in which to declare an expiry; the product may provide one outside MCP that a manifest cannot show.

high · no-audit-trail · All 37 tools

37 of 37 tools declare no record of their actions that the customer can read. This applies to every tool because MCP has no field in which to declare an audit requirement; the product may provide one outside MCP that a manifest cannot show.

low · uncapped-read · All 37 tools

37 tools can read data and declare no limit.

Declared capabilities

How each tool was read. declared means the server's own annotation said so — self-reported and unverified. inferred is from the tool's name. assumed means nothing indicated either way.

ToolRead asBasis
one_sample_t_testread declared
two_sample_t_testread declared
paired_t_testread declared
one_proportion_z_testread declared
two_proportion_z_testread declared
chi_square_goodness_of_fitread declared
chi_square_independenceread declared
one_way_anovaread declared
levene_testread declared
fisher_exact_testread declared
mcnemar_testread declared
mcnemar_exact_testread declared
cohens_dread declared
cohens_hread declared
cramers_vread declared
eta_squaredread declared
omega_squaredread declared
rank_biserial_correlationread declared
pearson_correlationread declared
spearman_correlationread declared
simple_linear_regressionread declared
mann_whitney_uread declared
wilcoxon_signed_rankread declared
kruskal_wallisread declared
sample_size_for_two_sample_t_testread declared
power_for_two_sample_t_testread declared
sample_size_for_one_sample_t_testread declared
power_for_one_sample_t_testread declared
sample_size_for_two_proportion_testread declared
power_for_two_proportion_testread declared
bonferroni_correctionread declared
benjamini_hochberg_correctionread declared
recommend_testread declared
sequential_two_sample_mean_testread declared
sequential_two_proportion_testread declared
naive_peeking_inflationread declared
pairwise_group_comparisonsread declared
Answering this question about your own agent? The self-serve stack report applies the same reading to your own stack or server and gives you a dated document you can hand to a customer's security review. It is generated in your browser, with nobody to wait for. Buying one does not change this page, its score or its place in the index — see Independence.
Maintain this server? If this page misreads your manifest, or your server has changed, submit its current tools/list response and it will be re-scored and dated. Corrections are published alongside the original, not in place of it.