Prototype · Preview: every server in the official registry, synced every 30 minutes. Sign in with Google to write reviews.Prototype · updated every 30 min
PopNx MCPMCP servers for people who use AI · explained in plain words

Litmus

by polygraphsoversion 0.36.0i★ 8iComputer or cloud
Registry nameio.github.polygraphso/litmus

How to install

What it does

Grade MCP servers A to F with the open behavioral litmus. npm: full toolset; hosted: lookups only.

  • Connects Computer or cloud
  • Account or key No key needed
  • Category Developer tools

Install

Pick the AI app you use, then copy the settings.

Passed 3/4 checks · Runs on your computer

We hid some of the commands

Connect by URL: the server address did not answer when we checked

Use “Run on your computer” instead; the steps are below

First: which AI do you use?

Pick your app and the steps appear below.

Works with Claude, with some setup first

Install Node.js on your computer first (one time) · Only the Claude desktop app (Windows or Mac), not the web or phone

  1. Install Node.js

    One time only; it works for every server that needs Node.js

    Open the Node.js download page ↗

  2. Open the Claude desktop app’s settings file

    SettingsDeveloperEdit Config

  3. Paste these settings and save the file

    {
      "mcpServers": {
        "litmus": {
          "command": "npx",
          "args": [
            "-y",
            "@polygraphso/litmus",
            "polygraphso-litmus-mcp"
          ]
        }
      }
    }
  4. Quit Claude and open it again

  5. Try it

    Use Litmus and tell me what you can do for me, then show me one thing

    ✓ If Claude says it is using Litmus or shows a Litmus tool in the answer, you are connected

2 optional setting(s) (works without them)

The command above works without these. Add them only if you want to change something, following the maker’s description.

  • POLYGRAPH_API_URL Base URL for published-grade lookups (check_server, list_servers, request_grade) and attestation resolution. · default https://polygraph.so
  • NEXT_PUBLIC_POLYGRAPH_NETWORK Which network to read attestations from: 'base' (mainnet, default) or 'base-sepolia' (testnet). · default base

Descriptions are as written by the maker.

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

ChatGPT cannot connect Litmus yet

Litmus runs on your computer, but ChatGPT can only connect servers that run on the web

What you can do instead

A · Use an app that can connect Litmus

  • Install Node.js on your computer first (one time) · Only the Claude desktop app (Windows or Mac), not the web or phone
  • Install Node.js on your computer first (one time)
  • Install Node.js on your computer first (one time)
  • Install Node.js on your computer first (one time)

B · Others in Developer tools that work with ChatGPT

Picked from the most used in the same category, only ones that connect by address with no key

Works with Claude Code, with some setup first

Install Node.js on your computer first (one time)

  1. Install Node.js

    One time only; it works for every server that needs Node.js

    Open the Node.js download page ↗

  2. Open Terminal

    Mac: press Command+Space and type Terminal · Windows: open PowerShell

  3. Paste this command and press Enter

    claude mcp add --scope user litmus -- npx -y @polygraphso/litmus polygraphso-litmus-mcp
  4. Type /mcp in Claude Code

    You should see Litmus listed as connected

  5. Try it

    Use Litmus and tell me what you can do for me, then show me one thing

    ✓ If Claude Code says it is using Litmus or shows a Litmus tool in the answer, you are connected

2 optional setting(s) (works without them)

The command above works without these. Add them only if you want to change something, following the maker’s description.

  • POLYGRAPH_API_URL Base URL for published-grade lookups (check_server, list_servers, request_grade) and attestation resolution. · default https://polygraph.so
  • NEXT_PUBLIC_POLYGRAPH_NETWORK Which network to read attestations from: 'base' (mainnet, default) or 'base-sepolia' (testnet). · default base

Descriptions are as written by the maker.

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with Cursor, with some setup first

Install Node.js on your computer first (one time)

  1. Install Node.js

    One time only; it works for every server that needs Node.js

    Open the Node.js download page ↗

  2. Click this button to open Cursor

    Open in Cursor

    Cursor asks you to confirm; click Install

  3. Open the AI chat in Cursor in Agent mode

  4. Try it

    Use Litmus and tell me what you can do for me, then show me one thing

    ✓ If Cursor says it is using Litmus or shows a Litmus tool in the answer, you are connected

2 optional setting(s) (works without them)

The command above works without these. Add them only if you want to change something, following the maker’s description.

  • POLYGRAPH_API_URL Base URL for published-grade lookups (check_server, list_servers, request_grade) and attestation resolution. · default https://polygraph.so
  • NEXT_PUBLIC_POLYGRAPH_NETWORK Which network to read attestations from: 'base' (mainnet, default) or 'base-sepolia' (testnet). · default base

Descriptions are as written by the maker.

Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with VS Code, with some setup first

Install Node.js on your computer first (one time)

  1. Install Node.js

    One time only; it works for every server that needs Node.js

    Open the Node.js download page ↗

  2. Click this button to open VS Code

    Open in VS Code

    VS Code asks you to confirm; click Install

  3. Open the AI chat in VS Code in Agent mode

  4. Try it

    Use Litmus and tell me what you can do for me, then show me one thing

    ✓ If VS Code says it is using Litmus or shows a Litmus tool in the answer, you are connected

2 optional setting(s) (works without them)

The command above works without these. Add them only if you want to change something, following the maker’s description.

  • POLYGRAPH_API_URL Base URL for published-grade lookups (check_server, list_servers, request_grade) and attestation resolution. · default https://polygraph.so
  • NEXT_PUBLIC_POLYGRAPH_NETWORK Which network to read attestations from: 'base' (mainnet, default) or 'base-sepolia' (testnet). · default base

Descriptions are as written by the maker.

Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Other apps that use MCP, such as Windsurf, Zed or Gemini CLI, each add servers differently. See how in the app list.

See every app that uses MCP →

JSON settings are under “For developers” below

Stuck? Ask people who use Litmus💬 Discussion →
For developers: Terminal commands and JSON settings

Installed on your computer

Claude Code

claude mcp add --scope user litmus -- npx -y @polygraphso/litmus polygraphso-litmus-mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "litmus": {
      "command": "npx",
      "args": [
        "-y",
        "@polygraphso/litmus",
        "polygraphso-litmus-mcp"
      ]
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "litmus": {
      "command": "npx",
      "args": [
        "-y",
        "@polygraphso/litmus",
        "polygraphso-litmus-mcp"
      ]
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "litmus": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@polygraphso/litmus",
        "polygraphso-litmus-mcp"
      ]
    }
  }
}

Values you fill in

  • POLYGRAPH_API_URL env
    Base URL for published-grade lookups (check_server, list_servers, request_grade) and attestation resolution.
  • NEXT_PUBLIC_POLYGRAPH_NETWORK env
    Which network to read attestations from: 'base' (mainnet, default) or 'base-sepolia' (testnet).

Descriptions are as written by the maker.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

At a glance

Downloads per weeki
56/wk
Licencei
Apache-2.0
Connection
Computer or cloud
Transport
stdio, streamable-http
Latest versioni
0.36.0
Published to registryi
Jul 20, 2026
Code last changedi
Jul 20, 2026
Maker
polygraphso
Packages
npm: @polygraphso/litmus
Registry status
Active

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Connect over the internet in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

Run on your computer in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

All apps, with pros and cons →

Related guides

What it can do

The server did not answer when we last checked, so we could not read its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 14, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account polygraphso, which owns the repo

  • ✓ Pass

    Still maintained

    Code last changed 4 months ago

  • ✓ Pass

    Has a licence

    Uses Apache-2.0

  • ✕ Fail

    Endpoint responds

    Did not respond within 6 seconds when we checked

  • – Not applicable

    Sign-in with OAuth

    Did not respond within 6 seconds when we checked

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Discussion

Ask, share a tip or report that it does not work. Sorted by what people marked helpful.

No posts yet. Be the first to ask or share.

Posts here are written by users, not the PopNx team.

Sign in with Google to post

User reviews

No reviews yet

Sign in with Google to write a review

Compared with others in Developer toolsi

  • More stars than 89% of the other 5876 servers in this category
  • Published to the registry more recently than 22% of the other 5876 servers in this category
  • Basic checks equal to or better than 46% of the other 5876 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Litmus safe?

It passed 3 of 4 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed 4 months ago, and the latest version (0.36.0) reached the registry 4 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT on the web (full MCP on Business and above; Pro read-only).

What can I use instead?

In the same category: REA, GitHub, Serena MCP: the IDE for your agent

Others in the same category

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

REA

Reverse engineer anything from your terminal or agent with one CLI and MCP server.

by morlutoWidely used↓ 388.7K/wk★ 457.7KUpdated 2 days ago

Runs on your computer

GitHub

GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.

by githubWidely used★ 34.4KUpdated 11 days ago

Computer or cloud

Serena MCP: the IDE for your agent

A powerful toolkit for coding, providing semantic retrieval and editing capabilities.

by oraiosWidely used↓ 35.2K/wk★ 31.4KUpdated 6 months ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

litmus

The open behavioral litmus harness for MCP servers — grade A–F, reproducible.

Grade a server in one command

# -p is required: the package ships three bins, so npx must be told which to run

npx -y -p @polygraphso/litmus polygraphso-litmus litmus npm/@modelcontextprotocol/server-filesystem

Point it at an npm ref, a pypi ref, a github/owner/repo ref (cloned, built, and run sandboxed — Docker required; the grade pins the commit SHA), an https:// MCP endpoint, or a local entry file. The harness connects the way an agent would, fingerprints the exact tool surface, runs the four probe categories, and prints the grade with the findings behind it — plus a deterministic evidence bundle on disk. It runs the target's code (egress is Docker-sandboxed; without Docker, C-02 is skipped and the grade caps at B), takes ~20–60s, and exits non-zero on D/F so it scripts anywhere. To dispute any published grade, re-run this same command against the same server — open and deterministic means a re-run reproduces the grade, or refutes it.

Looking up a grade someone already published takes under a second and runs nothing: the polygraph.so index, or check_server from the MCP tools below.

Use it from your agent — MCP server + plugin

For grade lookups, point any MCP client at polygraph's hosted endpoint, no install:

claude mcp add --transport http polygraph https://polygraph.so/api/mcp

or the raw config:

{ "mcpServers": { "polygraph": { "url": "https://polygraph.so/api/mcp" } } }

This serves the lookup tools only (check_server, list_servers, request_grade); grading a server yourself (run_litmus, run_skill_litmus) executes its code, so it needs the local stdio install below.

The package also ships a stdio MCP server (polygraphso-litmus-mcp) with the full toolset, for any MCP-capable client:

  • `check_server` — read a server's *published* grade in under a second (no execution); the pre-flight check before recommending or installing a server.
  • `list_servers` — servers with a published grade, A first; paged (default 25 per call, with grade/limit/offset filters and a full-corpus summary).
  • `request_grade` — record a grade request with polygraph.so ($1 one-time fee; graded within 48h of payment — the response carries the payment link).
  • `run_litmus` — grade a server *now*: the full harness, grade + evidence returned to the agent.
  • `run_skill_litmus` — grade a Claude Code / Agent Skill (static scan, A/B/D/F).
  • `verify_attestation` — read the onchain proof behind a published grade (EAS on Base).

In Claude Code, the plugin wires the server plus two commands in one step:

/plugin marketplace add polygraphso/litmus

/plugin install polygraph@polygraphso

then /polygraph:grade and /polygraph:check . Cursor and manual JSON setups are on polygraph.so; full tool docs in packages/litmus/README.md.

Gate your CI on MCP grades — GitHub Action

Fail a build when an MCP server or an Agent Skill it ships grades D/F under the open behavioral litmus. For servers it is hybrid — a fast lookup of the published grade, then the harness when ungraded; for skills it is a fast static scan. Un-gradeable targets warn unless strict.

It's on the [GitHub Marketplace](https://github.com/marketplace/actions/polygraph-mcp-gate) as polygraphso/litmus@v1. For a security gate, pin to a commit SHA rather than the mutable @v1 tag:

# .github/workflows/mcp-gate.yml

name: mcp-gate on: [pull_request] # NOT pull_request_target — that exposes secrets to fork PRs permissions: contents: read jobs: gate: runs-on: ubuntu-latest steps:

  • uses: actions/checkout@v5
  • uses: polygraphso/litmus@ # pin to a SHA; resolve from the v1 release with:

Name the targets explicitly (recommended). Grading runs a server's code,

so on a public repo prefer an allowlist over discovering PR-controlled config:

servers: | npm/@modelcontextprotocol/server-filesystem skills: | ./my-skill

discover: "true" # opt in to auto-discovery (.mcp.json/.vscode/.cursor) — trusted repos only

min-grade: B # stricter than the default D/F gate

strict: "true" # also fail on targets that cannot be graded

Inputs: servers · skills · discover (default false) · min-grade · strict · working-directory · version · bearer. Outputs: result · failed · report.

Security. Grading a server runs its code (egress is Docker-sandboxed, but it still executes). Trigger on pull_request, never pull_request_target. Keep discover off on public repos and name targets explicitly — auto-discovered config is pull-request-controllable. bearer is sent as an Authorization header to the target, so pass it only for an explicitly trusted, pinned remote — never with discovery or on untrusted PRs, and keep it scoped and short-lived.

Not on GitHub? The gate is a plain command — npx @polygraphso/litmus@0.20.0 ci (pin the version) — so it runs in any CI or as a pre-commit hook. A grade is a measurement, not a guarantee: re-run the open harness to reproduce any result.

What litmus is

This is the source for [`@polygraphso/litmus`](https://www.npmjs.com/package/@polygraphso/litmus), the open behavioral litmus harness for MCP servers from polygraph.so.

The harness connects to an MCP server the way an agent would, fingerprints its exact tool surface, and runs four probe categories — C-01 tool-output injection (static, dynamic, and second-order — one tool's output weaponized as another's input), C-02 permission/egress (in a hardened default-deny Docker sandbox, matched host and port), C-03 sensitive-data handling (planted canaries), C-04 adversarial-input handling (malformed/oversized and jailbreak inputs) — then grades the server A–F. A passing grade is a measurement, not a guarantee; the methodology and its disclosed limits are at polygraph.so (the open source here is the ground truth).

Alongside the grade, an npm target's dependency tree is checked against the osv.dev vulnerability database and any vulnerable dependencies are reported as dependency advisories. This is a separate, point-in-time signal — it is *advisory only*: it never affects the A–F grade and is not part of the reproducible evidence (vulnerability data changes over time, so folding it into the grade would break re-run reproducibility). It applies to npm targets only; other target kinds report it as skipped. Resolution runs npm install --package-lock-only --ignore-scripts, which resolves the tree without downloading tarballs or running any package code. Opt out with --no-deps-audit (or LITMUS_DEPS_AUDIT=0).

The same package also grades Claude Code / Agent Skills (a SKILL.md + bundle) under a separate static litmus (litmus-skill-v3): a deterministic byte-scan — S-01 prompt injection, S-03 data-exfiltration instructions, S-04 dangerous commands in the SKILL.md body or bundled scripts (incl. base64-obfuscated curl | bash) — graded A/B/D/F and anchored by a whole-directory content hash, plus a separate advisory quality signal. It is *static* (no execution): an A is static-clean, not behavioral proof. See packages/litmus/README.md.

The hosted, operator-run grading service is not in this repo — it lives in a separate private repo and consumes this package from npm like any other client.

Layout

This is a pnpm monorepo. Only `@polygraphso/litmus` is published; the @polygraph/* packages are private building blocks that tsup bundles into it.

packages/

litmus/ # @polygraphso/litmus — the only published package (lib + 3 bins: CLI, skill CLI, MCP) core/ # contract types, canonical JSON, identity helpers probes/ # the harness: connect, fingerprint, grade, probe runners, sandbox onchain/ # EAS attestation read + encode/decode (Base) — read-only, no minting agent/ # agent-gate decision logic + live-fingerprint recheck mcp/ # MCP server wrapper cli/ # CLI commands + target/auth resolution demo-*-mcp/ # demo MCP servers used as test fixtures

See packages/litmus/README.md for the npm-facing usage docs, and polygraph.so for the methodology and proof format.

Develop

pnpm install

pnpm -r typecheck pnpm -r test pnpm --filter @polygraphso/litmus build # → packages/litmus/dist

Release

@polygraphso/litmus is versioned in packages/litmus/package.json. Tag to publish:

git tag litmus-v<x.y.z> && git push origin litmus-v<x.y.z>

The Publish @polygraphso/litmus workflow builds, typechecks, tests, and publishes with npm provenance. See CONTRIBUTING.md for the full process and the local-development workflow for downstream consumers.

License

Apache-2.0 — © polygraph.so.