Claude и MCP: как линтер нашёл ошибки в серверах Anthropic
Для серверов Model Context Protocol появился новый инструмент проверки — mcp-linter. Он помогает находить проблемы в протоколе и безопасности ещё до того, как их увидит пользователь Claude Desktop, Cursor или другой клиент.
Зачем вообще нужен линтер для MCP
MCP быстро стал популярным способом подключать Claude, Cursor и других ИИ-агентов к файлам, базам данных и внешним сервисам. Но по мере роста экосистемы выяснилось, что для таких серверов почти не было удобных инструментов проверки и статического анализа.
Из-за этого разработчики часто повторяли одни и те же ошибки: лишний вывод в stdout ломал JSON-RPC-обмен, опасные команды запускались без подтверждения, а в описания инструментов можно было случайно или намеренно встроить prompt injection.
Что делает mcp-linter
Автор проекта собрал mcp-linter без сторонних зависимостей, на чистом Node.js. Утилита запускает MCP-сервер в изолированном дочернем процессе, проводит проверку и не вызывает сами инструменты, чтобы ничего не повредить.
Внутри — 34 правила, оценка здоровья сервера по шкале от A+ до F и от 0 до 100, генерация автоисправлений через режим --fix и экспорт отчётов в SARIF v2.1.0 для GitHub Security. Запустить его можно прямо через npx, без отдельной установки.
Какие баги нашли в официальных серверах Anthropic
Проверка эталонных серверов из репозитория modelcontextprotocol показала, что проблемы есть даже в официальных примерах. У @modelcontextprotocol/server-everything у одного параметра в инструменте не хватало описания.
У @modelcontextprotocol/server-memory линтер отметил отсутствие верхнеуровневых instructions при инициализации и четыре параметра без описаний. А у @modelcontextprotocol/server-filesystem он нашёл 18 параметров без пояснений — например, для path, content, edits и destination. Для моделей такие пробелы усложняют выбор правильных аргументов и повышают риск ошибок.
Что это даёт разработчикам и командам
Проблема MCP-серверов в том, что ошибки здесь часто выглядят мелкими, но последствия могут быть неприятными: клиент зависает, агент запускает лишнюю операцию или модель получает вредоносную инструкцию через описание инструмента. Поэтому регулярная проверка особенно полезна тем, кто делает серверы для Claude Desktop, Cursor и внутренних рабочих агентов.
Для команды это удобный способ быстро увидеть слабые места, получить готовые подсказки на исправление и добавить проверку в CI/CD или GitHub Security. Если нужно держать MCP-сервер в порядке, такие автоматические аудиты экономят время и снижают риск неприятных сюрпризов в продакшене.