CanopiiCanopiiAll serversEnterprise →
Open source · Apache-2.0

The Trust Index engine, in your terminal

canopii is the open-source CLI behind this site. Score any MCP server — a GitHub repo, an npm/PyPI package, or a live endpoint — with the same deterministic engine that powers the Trust Index. No account, no telemetry.

$npx canopii scan --github <repo>
Star on GitHubView on npm

What a scan looks like

Every failed control tells you why it matters and howto fix it. The worst confirmed issue caps the score — good practices can't buy it back.

[email protected]  (tier 3 · key-gated)

  Score  7/100  (F)
         capped by code.no_command_injection (critical) — No command-injection sinks
         capped by secrets.no_committed_secrets (critical) — No committed secrets
         capped by tool.no_injection_markers (high) — Tool descriptions free of injection markers
  Confidence  78% (high)  · scoring v2.8.0

  Code safety
    ✗ No command-injection sinks — 2 occurrences
        why: Untrusted tool input reaching a shell yields remote code execution.
        fix: Never pass tool arguments to a shell; use argv arrays with shell disabled.
    ✗ No dynamic code execution — 1 occurrence
  Secrets & credentials
    ✗ No committed secrets — 1 secret type(s) found
  Tool integrity
    ✗ Tool descriptions free of injection markers — 1 marker(s) across 1 tool(s)
    ✗ No over-broad / destructive tools — 1 over-broad tool(s)

  Scored by the same engine as the Canopii Trust Index — https://index.canopii.dev

Scan anything

canopii scan --github https://github.com/owner/mcp-server
canopii scan --npm  @scope/mcp-server
canopii scan --pypi mcp-server-fetch
canopii scan --local .
canopii scan --remote https://api.example.com/mcp --api-key $KEY

# Static + live in one pass, for full coverage:
canopii scan --github <repo> --remote <url> --api-key $KEY

Install

Run it once with npx, or install the CLI plus the scanners that give you full coverage:

$curl -fsSL https://raw.githubusercontent.com/canopii-dev/canopii-cli/main/install.sh | bash
$npm install -g canopii

The installer adds a checksum-verified gitleaks binary and semgrep for full code-safety and secret coverage. Requires Node.js ≥ 22. Check any setup with canopii doctor.

Gate it in CI

Exit codes make it a one-line quality gate: 0 ok, 1 below threshold, 2 scan error.

- run: npx canopii scan --local . --min-grade B

Same score, everywhere

The CLI computes the Canopii Risk Score — ~29 controls across 6 domains, deterministic and evidence-earned. A score from your terminal means the same thing as every score on the Trust Index. Read the full methodology or our State of MCP Security 2026 report ↗.

Scanning more than one server?

The Canopii platform gives your org continuous scoring, version history, and policy enforcement across every MCP server you use — the CLI, running for you, all the time.

Explore the platform →