Skip to main content

Command Palette

Search for a command to run...

Настроить

Model Context Protocol (MCP)

Что такое MCP?

Протокол контекста модели (MCP) позволяет Cursor подключаться к внешним инструментам и источникам данных. Устанавливайте MCP‑серверы и управляйте ими на странице настроить или настраивайте их в mcp.json.

Зачем использовать MCP?

MCP подключает Cursor к внешним системам и данным. Вместо того чтобы снова и снова объяснять структуру проекта, интегрируйте его напрямую со своими инс��рументами.

Пишите MCP‑серверы на любом языке, который может выводить данные в stdout или предоставлять HTTP-эндпоинт, — Python, JavaScript, Go и т. д.

Просматривайте официальные плагины в Cursor Marketplace. Чтобы просматривать плагины сообщества и MCP‑серверы, откройте cursor.directory.

Как это работает

Серверы MCP предоставляют свои возможности через протокол, подключая Cursor к внешним инструментам или источникам данных.

Cursor поддерживает три метода транспорта:

ТранспортИнфраструктура выполненияРазвёртываниеПользователиВходные данныеАутентификация
stdioЛокальнаяПод управлением CursorОдин пользователькоманда оболочкиВручную
SSEЛокальная/удалённаяРазвёртывание в виде сервераНесколько пользователейURL SSE-эндпоинтаOAuth
Streamable HTTPЛокальная/удалённаяРазвёртывание в виде сервераНесколько пользователейURL HTTP-эндпоинтаOAuth

Поддержка протокола и расширений

Cursor поддерживает следующие возможности и расширения протокола MCP:

ФункцияПоддержкаОписание
ИнструментыПоддерживаетсяФункции, которые выполняет модель ИИ
ПромптыПоддерживаетсяШаблонные сообщения и рабочие процессы для пользователей
РесурсыПоддерживаетсяСтруктурированные источники данных, которые можно читать и на которые можно ссылаться
КорниПоддерживаетсяИнициируемые сервером запросы о границах URI или файловой системы
Запрос данныхПоддерживаетсяИнициируемые сервером запросы дополнительной информации у пользователей
Приложения (расширение)ПоддерживаетсяИнтерактивные представления интерфейса, возвращаемые инструментами MCP

Приложения MCP

Cursor поддерживает расширение MCP Apps. Инструменты MCP могут возвращать интерактивный интерфейс вместе со стандартным выводом инструмента.

MCP Apps следуют принципу прогрессивного улучшения. Если хост не может отобразить интерфейс приложения, тот же инструмент всё равно работает через обычные ответы MCP.

Установка серверов MCP

Установка в один клик

В Cursor Marketplace доступны официальные плагины, которые можно установить в один клик из раздела настроить, а пользовательские серверы можно настроить с помощью mcp.json. Плагины сообщества и MCP‑серверы ищите на cursor.directory. Нажмите «Add to Cursor» в карточке маркетплейса, чтобы установить плагин и пройти аутентификацию через OAuth.

Администрато��ы команд также могут распространять MCP‑серверы через маркетплейс команды. Серверы, распространяемые командой, отображаются в разделе «настроить» наряду с личными MCP‑серверами и MCP‑серверами рабочего пространства.

Использование mcp.json

Настройте пользовательские серверы MCP с помощью JSON-файла:

CLI Server - Node.js
{  "mcpServers": {    "server-name": {      "command": "npx",      "args": ["-y", "mcp-server"],      "env": {        "API_KEY": "value"      }    }  }}
CLI Server - Python
{  "mcpServers": {    "server-name": {      "command": "python",      "args": ["mcp-server.py"],      "env": {        "API_KEY": "value"      }    }  }}
Remote Server
// сервер MCP, использующий HTTP или SSE - работает на сервере{  "mcpServers": {    "server-name": {      "url": "http://localhost:3000/mcp",      "headers": {        "API_KEY": "value"      }    }  }}

Статический OAuth для удалён��ых серверов

Для серверов MCP, использующих OAuth, можно указать статические учётные данные OAuth-клиента в mcp.json вместо динамической регистрации клиента. Используйте это, если:

  • Провайдер MCP выдаёт вам фиксированный Client ID (и при необходимости Client Secret)
  • Провайдер требует добавить URL перенаправления в список разрешённых (например, Figma, Linear)
  • Провайдер не поддерживает динамическую регистрацию OAuth 2.0-клиента

Добавьте объект auth в записи удалённых серверов, использующие url:

Remote Server with Static OAuth
{  "mcpServers": {    "oauth-server": {      "url": "https://api.example.com/mcp",      "auth": {        "CLIENT_ID": "your-oauth-client-id",        "CLIENT_SECRET": "your-client-secret",        "scopes": ["read", "write"]      }    }  }}
полеОбязательноописание
CLIENT_IDДаИдентификатор клиента OAuth 2.0 от провайдера MCP
CLIENT_SECRETНетСекрет клиента OAuth 2.0 (если провайдер использует конфиденциальных клиентов)
scopesНетЗапрашиваемые области OAuth. Если не указано, Cursor использует /.well-known/oauth-authorization-server для определения scopes_supported

Статический URL перенаправления

Cursor использует фиксированные URL-адреса перенаправления OAuth для MCP‑серверов. Зарегистрируйте URL обратного вызова для каждого интерфейса, через который ваши пользователи проходят аутентификацию:

https://www.cursor.com/agents/mcp/oauth/callbackhttp://localhost:8787/callback
  • Веб и Cursor Agents: https://www.cursor.com/agents/mcp/oauth/callback
  • Настольное приложение: http://localhost:8787/callback

При настройке OAuth-приложения провайдера MCP зарегистрируйте оба URL как разрешённые URI перенаправления, если пользователи проходят аутентификацию и в веб-версии, и в настольном приложении. Сервер определяется по параметру OAuth state, поэтому эти URL перенаправления подходят для всех MCP‑серверов.

Использование вместе с интерполяцией конфигурации

Значения auth поддерживают ту же интерполяцию, что и другие поля:

{  "mcpServers": {    "oauth-server": {      "url": "https://api.example.com/mcp",      "auth": {        "CLIENT_ID": "${env:MCP_CLIENT_ID}",        "CLIENT_SECRET": "${env:MCP_CLIENT_SECRET}"      }    }  }}

Используйте переменные среды для Client ID и Client Secret вместо того, чтобы прописывать их в коде.

Конфигурация сервера STDIO

Для серверов STDIO (локальных серверов командной строки) настройте следующие поля в mcp.json:

ПолеОбязательноОписаниеПримеры
typeДаТип подключения к серверу"stdio"
commandДаКоманда для запуска исполняемого файла сервера. Она должна быть доступна в системной переменной PATH или включать полный путь."npx", "node", "python", "docker"
argsНетМассив аргументов, передаваемых команде["server.py", "--port", "3000"]
envНетПеременные среды для сервера{"API_KEY": "${env:api-key}"}
envFileНетПуть к файлу окружения для загрузки дополнительных переменных".env", "${workspaceFolder}/.env"

Использование API расширения

Для программной регистрации MCP‑сервера Cursor предоставляет API расширения, который позволяет выполнять динамическую настройку без изменения файлов mcp.json. Это особенно полезно для корпоративной инфраструктуры и автоматизированных процессов настройки.

Справочник по API расширения

Программно регистрируйте MCP‑серверы с помощью vscode.cursor.mcp.registerServer()


Расположение файлов конфигурации

Конфигурация проекта

Создайте .cursor/mcp.json в каталоге проекта для инструментов, специфичных для этого проекта.

Глобальная конфигурация

Создайте ~/.cursor/mcp.json в домашнем каталоге для инструментов, доступных везде.

Подстановка переменных в конфигурации

Используйте переменные в значениях mcp.json. Cursor подставляет переменные в следующих полях: command, args, env, url и headers.

Поддерживаемый синтаксис:

  • ${env:NAME} переменные среды
  • ${userHome} путь к вашей домашней папке
  • ${workspaceFolder} корень проекта (папка, содержащая .cursor/mcp.json)
  • ${workspaceFolderBasename} имя корневой папки проекта
  • ${pathSeparator} и ${/} разделитель пути в ОС

Примеры

{  "mcpServers": {    "local-server": {      "command": "python",      "args": ["${workspaceFolder}/tools/mcp_server.py"],      "env": {        "API_KEY": "${env:API_KEY}"      }    }  }}
{  "mcpServers": {    "remote-server": {      "url": "https://api.example.com/mcp",      "headers": {        "Authorization": "Bearer ${env:MY_SERVICE_TOKEN}"      }    }  }}

Аутентификация

Серверы MCP используют переменные среды для аутентификации. Передавайте API-ключи и токены через конфигурацию.

Cursor поддерживает OAuth для серверов, которым он требуется.

Настройки для администраторов Enterprise

Распространение MCP и политики MCP настраиваются отдельно. Администраторы команды могут распространять общие MCP‑серверы. Администраторы Enterprise могут настраивать политики MCP.

Распространение Team MCP

Настройте общие командные MCP‑серверы в разделе Dashboard > Integrations & MCP. Эти серверы доступны Cloud Agents.

Чтобы сделать существующий отдельный командный MCP‑сервер доступным в Agent Window, IDE и CLI, выберите Add to Team Marketplace в разделе Team MCP Servers. Cursor свяжет сервер с маркетплейсом команды Default, не прерывая доступ Cloud Agent. После этого участники команды смогут установить и настроить его в разделе настроить.

Связывание MCP‑сервера с маркетплейсом не устанавливает и не включает его для всех. Настройте доступ к маркетплейсу и режимы установки плагинов в разделе Dashboard > Plugins. Полный процесс описан в разделе Перенос существующих Team MCP.

MCP Allowlist

Администраторы Enterprise могут контролировать, какие MCP‑серверы пользователи могут запускать из дашборда Cursor. Откройте Team Settings > Конфигурация MCP, чтобы настроить, какие серверы и инструменты команда может запускать. Добавление в allowlist одобряет конфигурацию MCP. При этом сервер не распространяется и не устанавливается.

Используйте MCP Allowlist, чтобы указать одобренные серверы:

  • Записи команд одобряют локальные MCP‑серверы stdio по шаблону команды.
  • Записи URL одобряют удалённые MCP‑серверы HTTP/SSE по шаблону URL.
  • Tool allowlists ограничивают, какие инструменты с одобренного сервера могут запускаться автоматически. Оставьте allowlist инструмента пустым, чтобы разрешить все инструменты с этого сервера.

Управление сетью

Удалённые URL-адреса MCP ограничиваются настроенным шаблоном URL.

Локальные MCP‑серверы, запускаемые через команды, используют свой сетевой режим для каждого сервера:

  • Разрешить всё: разрешён исходящий сетевой доступ.
  • Allowlist: разрешены только адреса назначения из списка.
  • Запретить всё: исходящий сетевой доступ заблокирован.
  • Без песочницы: запуск без командной или сетевой песочницы.

Пользовательские расширения MCP

Администраторы могут разрешить пользователям настраивать собственные MCP‑серверы вне шаблонов команд или URL-адресов, заданных администратором. Для пользовательских MCP, которые не соответствуют шаблонам, заданным администратором, список запрещённых сетевых адресов для User MCP может блокировать совпадающие сетевые адреса назначения.

Использование MCP в чате

Cursor автоматически использует инструменты MCP из списка Available Tools, когда это необходимо. В их число входит Plan Mode. Укажите название нужного инструмента или опишите, что вам требуется. Включить или отключить MCP‑серверы можно в разделе настроить на боковой панели.

Одобрение инструмента

По умолчанию Cursor запрашивает одобрение перед использованием инструментов MCP. Нажмите на стрелку рядом с названием инструмента, чтобы увидеть аргументы.

Режим запуска

Для MCP действуют те же Режимы запуска, что и для терминальных команд. Например, в режиме Auto-review инструменты MCP из allowlist запускаются сразу, а всё остальное направляется в классификатор.

Ответ инструмента

Cursor показывает ответ в чате с возможностью развернуть аргументы и ответы:

Изображения как контекст

Серверы MCP могут возвращать изображения - скриншоты, диаграммы и т. д. Возвращайте их в виде строк, закодированных в base64:

const RED_CIRCLE_BASE64 = "/9j/4AAQSkZJRgABAgEASABIAAD/2w...";// ^ full base64 clipped for readabilityserver.tool("generate_image", async (params) => {  return {    content: [      {        type: "image",        data: RED_CIRCLE_BASE64,        mimeType: "image/jpeg",      },    ],  };});

См. подробности реализации в этом примере сервера. Cursor прикрепляет возвращённые изображения к чату. Если модель поддерживает изображения, она анализирует их.

Рекомендации по безопасности

При установке серверов MCP учитывайте следующие меры безопасности:

  • Проверьте источник: Устанавливайте серверы MCP только от доверенных разработчиков и из надёжных репозиториев
  • Проверьте разрешения: Проверьте, к каким данным и API сервер будет иметь доступ
  • Ограничьте API-ключи: Используйте API-ключи с ограничениями и минимально необходимыми разрешениями
  • Проведите аудит кода: Для критически важных интеграций проверьте исходный код сервера

Помните, что серверы MCP могут получать доступ к внешним сервисам и выполнять код от вашего имени. Перед установкой всегда убеждайтесь, что понимаете, что делает сервер.

Реальные примеры

Практические примеры использования MCP в действии:

Часто задаваемые вопросы

MCP‑серверы подключают Cursor к внешним инструментам, таким как Google Drive, Notion и другим сервисам, чтобы включить документацию и требования в процесс разработки.

Просмотреть журналы MCP можно так:

  1. Откройте панель «Выходные данные» в Cursor (Cmd+Shift+UCtrl+Shift+U)
  2. Выберите «Журналы MCP» в раскрывающемся списке
  3. Проверьте наличие ошибок подключения, проблем с аутентификацией или сбоев сервера

В журналах отображаются инициализация сервера, вызовы инструментов и сообщения об ошибках.

Да! Серверы можно включать и отключать, не удаляя их:

  1. Откройте настроить на боковой панели
  2. Найдите MCP‑сервер, который хотите изменить
  3. Используйте переключатель, чтобы включить или отключить его

Отключённые серверы не загружаются и не отображаются в чате. Это полезно для устранения неполадок или уменьшения числа инструментов.

Если MCP‑сервер перестанет работать:

  • Cursor покажет сообщение об ошибке в чате
  • Вызов инструмента будет отмечен как неуспешный
  • Вы можете повторить операцию или проверить журналы для получения подробностей
  • Другие MCP‑серверы продолжат работать как обычно

Cursor изолирует сбои серверов, чтобы один сервер не влиял на работу других.

Для серверов на основе npm:

  1. Удалите сервер из настроить
  2. Очистите кэш npm: npm cache clean --force
  3. Добавьте сервер снова, чтобы получить последнюю версию

Для пользовательских серверов обновите локальные файлы и перезапустите Cursor.

Да, но следуйте рекомендациям по безопасности:

  • Используйте переменные среды для секретов, никогда не прописывайте их в коде
  • Запускайте серверы с конфиденциальными данными локально, используя транспорт stdio
  • Ограничьте права доступа API-ключей необходимым минимумом
  • Проверяйте код сервера перед подключением к системам с конфиденциальными данными
  • Рассмотрите запуск серверов в изолированных средах

См. также