LeashIndex Get the report

Index / messaging

io.github.mbeato/apimesh

io-github-mbeato-apimesh declares 76 capabilities across 76 tools, with 2 critical issues. 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.

98/100 exposureHigh exposure

Manifest recorded 2026-10-27 from tools/list answered by the npm package @mbeato/apimesh-mcp-server@1.8.2 (published to npm as @mbeato/apimesh-mcp-server, listed in the official MCP registry as io.github.mbeato/apimesh 1.8.2), 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 76 tools

76 of 76 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.

critical · irreversible-uncapped · 1 of 76 tools

1 tool is classified as irreversible and declares no limit.

high · no-expiry · All 76 tools

76 of 76 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 76 tools

76 of 76 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.

high · uncapped-write · 51 of 76 tools

51 tools can modify data and declare no limit.

low · uncapped-read · 24 of 76 tools

24 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
web_checkerread inferred
http_status_checkerread inferred
favicon_checkerread inferred
microservice_health_checkread inferred
robots_txt_parserread inferred
core_web_vitalsread inferred
security_headerswrite assumed
redirect_chainread inferred
email_securitysend inferred
seo_auditwrite assumed
indexability_checkerread inferred
brand_assetswrite assumed
email_verifyread inferred
tech_stackread inferred
wallet_usageread inferred
web_resource_validatorread inferred
website_security_header_inforead inferred
website_vulnerability_scanwrite assumed
mock_jwt_generatorwrite assumed
regex_builderwrite assumed
status_code_checkerread inferred
swagger_docs_creatorwrite assumed
user_agent_analyzerwrite assumed
yaml_validatorread inferred
wallet_set_capwrite inferred
subdomain_vulnerability_rankingswrite assumed
csp_policy_heuristicswrite assumed
ssl_tls_risk_analyzerwrite assumed
subdomain_vulnerability_rankingwrite assumed
subdomain_exposure_scorewrite assumed
ip_infrastructure_analystread inferred
subdomain_exposure_scorerwrite assumed
ssl_tls_threat_assessmentwrite assumed
privacy_policy_qualifyread inferred
dns_propagation_mapperwrite assumed
ip_infrastructure_analyzerwrite assumed
ip_geolocation_enrichmentwrite assumed
website_authenticity_assessmentwrite assumed
ssl_and_tls_hardening_scorewrite assumed
security_headers_checkerwrite assumed
subdomain_exposure_rankingwrite assumed
ssl_tls_hardening_forecastread inferred
subdomain_exposure_rankingswrite assumed
ssl_tls_expiry_forecastwrite assumed
network_route_mapperwrite assumed
subdomain_exposure_heatmapwrite assumed
dns_propagation_simulatorwrite assumed
ssl_tls_configuration_rankerwrite assumed
privacy_policy_enricherread inferred
privacy_risk_scorewrite assumed
http_method_enumerationwrite assumed
web_misconfiguration_scanwrite assumed
dependency_license_auditwrite assumed
ssl_tls_configuration_forecastwrite assumed
subdomain_risk_rankingwrite assumed
content_shuffle_detectorread inferred
api_schema_diffread inferred
api_lintingwrite assumed
port_scanner_aggregateread inferred
cdn_infrastructure_enricherwrite assumed
web_configuration_auditwrite assumed
subdomain_vulnerability_rankerwrite assumed
ssl_tls_inception_scorewrite assumed
dns_propagation_heatmapwrite assumed
api_schema_deltaread inferred
port_scannerwrite assumed
ssl_tls_hardening_assessorread inferred
api_endpoint_discoverywrite assumed
api_response_heuristicswrite assumed
api_standard_compliancewrite assumed
content_security_policy_checkwrite assumed
cross_origin_resource_policymapperwrite assumed
dns_propagation_inspectorwrite assumed
performance_security_compliance_reportwrite assumed
site_security_baselinewrite assumed
ssl_expiry_forecastwrite assumed
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.