Skip to main content
Glama

mcpnew

Test

Создавайте MCP-серверы, безопасные по умолчанию — TypeScript или JavaScript, с правами deny-all, типизированными заготовками инструментов и предварительно подключёнными аудит-хуками.

Проблема

Каждый самодельный MCP-сервер начинается одинаково: копируешь демо из документации, регистрируешь инструменты по ходу дела и надеешься, что никто не спросит: «погоди, а этот инструмент может прочитать мой домашний каталог?» Права по случайности становятся allow-all. Аудит-логирование — это TODO. Схемы входных данных расходятся с обработчиками.

mcpnew меняет поведение по умолчанию. Каждая возможность, которую открывает ваш сервер, изначально запрещена, каждый вызов инструмента проходит через аудит-хук, а каждая заготовка инструмента типизируется один раз на уровне схемы.

Related MCP server: mcp-data-gateway

Установка

npm install -g mcpnewcli

Ноль зависимостей времени выполнения. Node 18+.

Быстрый старт за 30 секунд

# 1. Scaffold (JavaScript default; add --lang ts for TypeScript)
mcpnew create my-server && cd my-server && npm install

# 2. Add a typed tool stub — it lands DENIED in mcp.permissions.json
npx mcpnewcli add-tool search-files

# 3. Review, implement, then explicitly allow:
#    "tools": { "search-files": "allow" }

# 4. Keep yourself honest
npx mcpnewcli audit

Вот и всё. mcpnew audit возвращает ненулевой код, если манифест перестаёт быть deny-all, если у любого зарегистрированного инструмента отсутствует его гейт requireAllowed(), или если аудит-хуки не подключены — подключите его к CI и оставайтесь безопасными по построению.

Подключение к CI

Поместите это в репозиторий созданного сервера (.github/workflows/audit.yml):

name: mcp-security-audit
on: [push, pull_request]
jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - run: npx --yes mcpnewcli audit

Любая находка — ослабленный дефолт, инструмент без гейта, неподключённый хук — завершается с ненулевым кодом и проваливает проверку до того, как изменение сможет быть объединено.

Что вы получаете

my-server/
├── src/server.js          # MCP server: typed tool stubs + permission gates + audit hooks
├── src/audit.js           # JSONL audit trail → logs/audit.jsonl (gitignored)
├── src/manifest.js        # manifest loader (+ TS types on --lang ts)
├── test/server.test.js    # tests asserting the deny-all posture holds
└── mcp.permissions.json   # deny-all permission manifest — the source of truth
  • Права deny-all — инструменты, ресурсы, промпты, сеть, файловая система: всё по умолчанию имеет значение deny. Подстановочные знаки отклоняются сразу.

  • Типизированные заготовки инструментов — mcpnew add-tool <name> вставляет заготовку со схемой zod, подключённую через гейт и аудит-хук. Вы пишете тело; каркас уже корректен.

  • Предварительно подключённые аудит-хуки — каждый вызов записывает временную метку, инструмент, аргументы, результат и длительность в logs/audit.jsonl.

Конфигурация

Сгенерированный mcp.permissions.json:

{
  "version": 1,
  "default": "deny",
  "tools": { "ping": "deny" },
  "resources": { "default": "deny" },
  "prompts": { "default": "deny" },
  "network": { "default": "deny", "allowlist": [] },
  "filesystem": { "default": "deny", "paths": [] }
}

Переключайте записи на "allow" осознанно, по одной, после того как прочитаете, что делает инструмент. mcpnew audit проверяет, что вы не ослабили больше, чем собирались.

Pro

Вы поставляете MCP-серверы производственным командам? mcpnew Pro ($9/мес) добавляет рабочие процессы ревью policy-as-code: диффы pull-request в манифестах прав с обязательным согласованием перед тем, как любой deny превратится в allow, доставку журналов аудита по всей организации (Splunk/Datadog/Loki) и отчёт о соответствии, сопоставляющий каждое предоставление инструмента с записью о его одобрении. Один тариф, без расчёта по местам. Лицензия через Gumroad — заглушка ссылки.

Лицензия

MIT


Часть stealth-alpha toolkit — восемь CLI без зависимостей для автоматизации релизов, безопасности агентов и гигиены репозиториев.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides production-grade starter templates for MCP servers with permission boundaries, integration tests, and eval contracts, enabling rapid development of secure and testable MCP servers.
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enforces identity-based access control and audit logging for MCP servers, letting you grant fine-grained tool permissions to users and systems while failing secure by default.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables developers to build production-grade MCP servers with secure defaults, validated inputs, and CI security audits from the first commit.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables developers to scaffold production-ready MCP servers with typed tools, resources, prompts, transports, authentication, and database integrations.
    MIT