# litmus

Проверяет MCP-серверы и скиллы по открытой поведенческой методике, ставит оценку от A до F. Локальная установка запускает полный набор проб, хостинговый вариант — только поиск по базе.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 8
- Автор: polygraphso
- Лицензия: Apache-2.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/polygraphso/litmus
- Обновлён: 2026-07-20
- HTML: https://affpapa.org/nevibecode/mcp/litmus

## Что делает

Сервер даёт шесть инструментов. `check_server` ищет опубликованную оценку сервера за секунду, без выполнения кода. `run_litmus` запускает полный тест: подключается как агент, снимает отпечаток инструментов, прогоняет четыре категории проб (C-02 требует Docker, без него оценка не выше B) и возвращает оценку с доказательствами на диске. `run_skill_litmus` проверяет скиллы статическим сканом. `list_servers` выдаёт список серверов с оценками, сортировка по убыванию. `request_grade` отправляет запрос на платную проверку сервера в базу polygraph.so. `verify_attestation` читает блокчейн-подтверждение оценки в EAS на Base.

Хостинговый endpoint `https://polygraph.so/api/mcp` открыт без установки и даёт три инструмента поиска — `check_server`, `list_servers`, `request_grade`. Stdio-вариант через `npx -y @polygraphso/litmus` ставит весь набор, включая `run_litmus` и `run_skill_litmus`, которые выполняют код проверяемого сервера. Для Claude Code есть плагин с двумя слэш-командами: `/polygraph:grade <server>` и `/polygraph:check <server>`. Репозиторий также содержит GitHub Action `polygraphso/litmus@v1`, который роняет сборку, если MCP-сервер или скилл получает D или F.

## Требования
- Нужно: Node.js (команды через npx)
- Удалённый сервер: `https://polygraph.so/api/mcp`
- Переменные окружения: `POLYGRAPH_API_URL`, `NEXT_PUBLIC_POLYGRAPH_NETWORK` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

1. **Командой платформы: удалённый сервер**
```bash
claude mcp add --transport http litmus https://polygraph.so/api/mcp
```

2. **Командой платформы**
```bash
claude mcp add --env POLYGRAPH_API_URL=<POLYGRAPH_API_URL> --env NEXT_PUBLIC_POLYGRAPH_NETWORK=<NEXT_PUBLIC_POLYGRAPH_NETWORK> --transport stdio litmus -- npx -y @polygraphso/litmus
```
Вместо <…> подставьте свои значения

### Codex

1. **Командой платформы: удалённый сервер**
```bash
codex mcp add litmus --url https://polygraph.so/api/mcp
```

2. **Командой платформы**
```bash
codex mcp add litmus --env POLYGRAPH_API_URL=<POLYGRAPH_API_URL> --env NEXT_PUBLIC_POLYGRAPH_NETWORK=<NEXT_PUBLIC_POLYGRAPH_NETWORK> -- npx -y @polygraphso/litmus
```
Вместо <…> подставьте свои значения

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "litmus": {
            "url": "https://polygraph.so/api/mcp"
        }
    }
}
```
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "litmus": {
            "command": "npx",
            "args": [
                "-y",
                "@polygraphso/litmus"
            ],
            "env": {
                "POLYGRAPH_API_URL": "<POLYGRAPH_API_URL>",
                "NEXT_PUBLIC_POLYGRAPH_NETWORK": "<NEXT_PUBLIC_POLYGRAPH_NETWORK>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "litmus": {
            "type": "http",
            "url": "https://polygraph.so/api/mcp"
        }
    }
}
```
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "litmus": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@polygraphso/litmus"
            ],
            "env": {
                "POLYGRAPH_API_URL": "<POLYGRAPH_API_URL>",
                "NEXT_PUBLIC_POLYGRAPH_NETWORK": "<NEXT_PUBLIC_POLYGRAPH_NETWORK>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### Gemini CLI

1. **Командой платформы: удалённый сервер**
```bash
gemini mcp add -t http litmus https://polygraph.so/api/mcp
```

2. **Командой платформы**
```bash
gemini mcp add -e POLYGRAPH_API_URL=<POLYGRAPH_API_URL> -e NEXT_PUBLIC_POLYGRAPH_NETWORK=<NEXT_PUBLIC_POLYGRAPH_NETWORK> litmus npx -y @polygraphso/litmus
```
Вместо <…> подставьте свои значения

## Когда брать
- проверить MCP-сервер перед установкой по открытой методике
- поставить оценку A–F серверу или скиллу прямо из агента
- найти серверы с опубликованными оценками, отсортированные по качеству
- заблокировать сборку в CI, если зависимость получила D или F
- прочитать блокчейн-подтверждение оценки в сети Base

## Примеры запросов агенту
- Проверь оценку сервера `npm/@modelcontextprotocol/server-filesystem` в базе polygraph.so
- Запусти полный тест для `github/owner/repo` и верни оценку с доказательствами
- Покажи список MCP-серверов с оценкой A, первые 10

## Похожие
- [cosmos-vulnerability-scanner](https://affpapa.org/nevibecode/skills/cosmos-vulnerability-scanner.md) — скилл · 5300 установок
- [dependency-scan](https://affpapa.org/nevibecode/skills/dependency-scan.md) — скилл · 355 установок
- [solidity-security](https://affpapa.org/nevibecode/skills/solidity-security.md) — скилл · 15382 установки
- [ci-cd-security](https://affpapa.org/nevibecode/skills/ci-cd-security.md) — скилл · 7900 установок
- [agentic-actions-auditor](https://affpapa.org/nevibecode/skills/agentic-actions-auditor.md) — скилл · 6700 установок

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
