Используйте MCP серверы
Model Context Protocol серверы дают стандартный интерфейс для LLM'ок взаимодействовать со своим окружением. Agent mode в Cursor'е и Claude Code активно используют агентов. Например, вместо отдельной RAG-системы (как раньше было в Cursor'е) для поиска и подачи релевантных файлов в контекст, LLM может просто вызвать MCP, который позволит ей поискать нужные файлы, прежде чем решать, что делать. Точно так же модель может запускать тесты или билды, а потом сразу работать над фиксом проблем. Понятно, что встроенные MCP серверы от Anthropic полезны — используй agent mode, когда можешь.
Эпистемический статус: следующий кусок теоретический, сам еще не пробовал на практике.
Другой вопрос — стоит ли писать свои MCP серверы. Альтернатива — написать MCP сервер, который предоставляет команды, к которым хочешь дать доступ модели (это немного отличается от того, что большинство делает с MCP для доступа к разным платформенным API). В теории это должно облегчить контроль того, какие инструменты в итоге получает модель, но по состоянию на март 2025 поддержка этого в Cursor'е хромает. В частности, нет прямого способа иметь разные MCP серверы для разных проектов, и общий тренд в экосистеме MCP — предоставлять универсально применимые инструменты, а не эквивалент npm run
как MCP сервер.
Примеры
- Когда прошу Sonnet 3.7 проверить TypeScript типы в проекте и пофиксить ошибки, в agent mode она использует MCP для запуска команды, получения output'а и решения, что дальше делать. Гораздо удобнее, чем копипастить output терминала вручную в чат. Важно правильно это настроить (либо в Cursor rules, либо через MCP), потому что LLM склонна галлюцинировать, какую команду надо выполнить. Например, у меня по дефолту она галлюцинирует
npm run typecheck
, который в этом проекте не работает.