ChatGPT Desktop и MCP: подключение локальных данных

Десктопное приложение ChatGPT умеет обращаться к MCP-серверу, запущенному на вашей собственной машине; ChatGPT в браузере — нет. Это единственное различие определяет всё остальное на этой странице, и именно в нём ошибается большинство гайдов, потому что положение дел изменилось после первой волны коннекторов ChatGPT.

По документации OpenAI про MCP (проверено 12 августа 2026 года), десктопное приложение, Codex CLI и расширение для IDE поддерживают два вида серверов: STDIO — локальные процессы, запускаемые командой, и streamable HTTP — те, что живут по адресу. Три клиента используют один файл конфигурации, поэтому сервер, добавленный однажды, доступен во всех трёх. С ChatGPT в вебе история другая: он умеет пользоваться удалёнными инструментами на базе MCP, которые приносят плагины, а у обычного веб-разговора нет маршрута к чему-либо, работающему на вашем ноутбуке.

В этом гайде — десктопный путь целиком: где лежит конфигурация, как добавить локальный сервер, что на самом деле регулируют режимы подтверждения и какие ограничения стоит знать, прежде чем направлять ассистента на собственные файлы.

Десктоп и веб — это разные клиенты

Полезно держать в голове две отдельные модели.

Десктопное приложение — локальный клиент. Его MCP-конфигурация лежит в файле Codex, ~/.codex/config.toml, и принимает локальные команды. Это путь для всего, что читает файлы, базы данных или библиотеки приложений на вашей машине.

Веб-приложение — удалённый клиент. Его история с MCP идёт через плагины, а для работы руками с собственными серверами — через режим разработчика, бету, которую OpenAI описывает как полноценную поддержку MCP-клиента для всех инструментов, и читающих, и пишущих. Он доступен на тарифах Pro, Plus, Business, Enterprise и Education в вебе, а включается в самом ChatGPT: Settings → Security and login. Режим разработчика говорит по SSE и streaming HTTP. Понятия локального процесса у него нет, поэтому серверу на вашем ноутбуке потребуется публичный HTTPS-адрес, прежде чем веб-приложение его увидит, — для личного архива это обычно неудачный размен.

Если ваши данные локальны, используйте десктопное приложение. Дальше в гайде речь именно о нём.

Как добавить локальный MCP-сервер в десктопный ChatGPT

Три равнозначных пути; выберите тот, который покажется наименее хлопотным.

Через интерфейс. Откройте Settings → MCP servers, выберите Add server, задайте имя, укажите STDIO и введите команду, которая запускает сервер. Сохраните и нажмите Restart.

Через терминал. Codex добавляет ту же запись:

codex mcp add <server-name> -- <command>

Правкой файла. ~/.codex/config.toml принимает по одной таблице на сервер:

[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]

Каким бы путём вы ни пошли, запись окажется в одном и том же месте, и Codex CLI с расширением для IDE подхватят её тоже. Чтобы убедиться, что сервер действительно поднялся, наберите /mcp в поле ввода — подключённые серверы перечислены там. Как и в случае Claude Desktop и Claude Code, перезапуск не опционален: клиент читает свою MCP-конфигурацию при старте.

Подключение транскриптов встреч

Speak-Y поставляет MCP-сервер внутри приложения для macOS, и он бесплатен на всех тарифах, включая Free. Со стороны Speak-Y откройте Настройки → Интеграции. Claude Desktop, Claude Code и Cursor получают там установку в один клик — Install, — потому что их конфигурация в JSON и приложение может безопасно в неё дописать. У OpenAI не JSON, поэтому пункт OpenAI Codex CLI предлагает вместо этого Setup guide и кнопку Copy values — две строки, которые нужно вставить под [mcp_servers.speaky] в ~/.codex/config.toml:

[mcp_servers.speaky]
command = "/Applications/Speak-Y.app/Contents/MacOS/Speak-Y"
args = ["--mcp"]

Карточка называется Codex CLI, а не ChatGPT, и причину стоит усвоить: файл один, и десктопное приложение читает его. Вставьте значения один раз — и транскрипты доступны и в десктопном ChatGPT, и в Codex CLI, и в расширении для IDE.

Дальше перезапустите ChatGPT и спросите то, на что могут ответить только ваши записи: «найди в моих записях Speak-Y планёрку на прошлой неделе и перечисли, что мы решили» — честная первая проверка. Больше сценариев — в статье 20 промптов к заметкам со встреч.

Что ChatGPT на самом деле видит

Здесь важнее точность, чем успокоение, поэтому: тринадцать инструментов, разделённых надвое.

Пять читают библиотеку напрямую. Список записей, поиск по ним, получение транскрипта, последняя запись, список тегов. Они работают с файлами на вашей машине, и запущенное приложение Speak-Y им не нужно.

Восемь идут через работающее приложение — теги, переименование спикера, изменение заголовка записи, перераспознавание диктовки, синхронизация, а также перечисление, создание и публикация в командный канал. Приложение держит базу данных и ключи шифрования, поэтому, пока оно закрыто, ничего не меняется.

Ничего не удаляется. Инструмента, который снёс бы запись, канал или воркспейс, нет. Публикация в канал — единственное действие, которое нельзя отозвать из окна чата: это делается в приложении.

Режимы подтверждения и зачем нужны аннотации инструментов

MCP позволяет серверу помечать каждый инструмент атрибутом readOnlyHint, и клиент OpenAI пользуется именно им. Задокументированные значения default_tools_approval_modeauto, prompt, writes и approve, причём writes спрашивает подтверждение для каждого инструмента, не помеченного как читающий. Отдельные инструменты можно переопределить.

Работает это только при условии, что сервер честен насчёт собственных инструментов. Speak-Y помечает свои пять читающих инструментов как read-only, а действия — как меняющие данные, поэтому writes даёт ровно то поведение, которое хочется: поиск и транскрипты идут без остановок, а простановка тегов или публикация останавливается и спрашивает. Каждое действие попадает в журнал в Настройки → Интеграции, там же один тумблер отключает действия и оставляет чтение работать.

Если вы предпочитаете убрать саму возможность, запускайте сервер закреплённым на чтении: добавьте --read-only в args, и меняющие инструменты вообще не будут опубликованы этому клиенту.

args = ["--mcp", "--read-only"]

Сервер, который выдаёт запись за чтение, обесценивает всё это, — и это практическая причина интересоваться тем, кто написал устанавливаемые вами MCP-серверы. Документация OpenAI про режим разработчика отмечает тот же класс рисков: инъекции в промпт, ошибки модели на пишущих действиях и попросту вредоносные серверы.

Чего эта схема не умеет

Что дальше

Личная библиотека, которую можно расспросить в ChatGPT, решает половину задачи — вашу собственную память. Вторая половина — чужая: решения, принятые на звонках, где вас не было. Записи, опубликованные в пространство команды, защищены сквозным шифрованием и доступны для поиска тому же ассистенту, а «почему мы так решили?» из повода кого-то отвлечь превращается в вопрос, который можно просто задать.

FAQ

Может ли ChatGPT подключиться к MCP-серверу на моём компьютере?

Десктопное приложение — может. В документации OpenAI по MCP для десктопного приложения, Codex CLI и расширения для IDE перечислены STDIO-серверы, то есть запускаемые командой на вашей машине, — наряду с удалёнными streamable HTTP. ChatGPT в вебе не может: ему доступны только удалённые инструменты на базе MCP, которые приносят плагины.

Где десктопное приложение ChatGPT хранит MCP-конфигурацию?

В файле конфигурации Codex — ~/.codex/config.toml, в таблице [mcp_servers.<name>]. Десктопное приложение, Codex CLI и расширение для IDE используют один и тот же файл, поэтому сервер, добавленный в любом из них, появляется и в остальных.

Спрашивает ли ChatGPT перед тем, как MCP-инструмент что-то изменит?

Это зависит от режима подтверждения. Задокументированные значения default_tools_approval_mode — auto, prompt, writes и approve; writes спрашивает для каждого инструмента, не помеченного как читающий, а отдельные инструменты можно переопределить. Смысл у этой настройки появляется только с серверами, которые честно размечают свои инструменты, — как это делает Speak-Y.

Выгружаются ли мои записи в OpenAI, когда я подключаю ChatGPT?

Ради самого подключения не выгружается ничего: MCP-сервер Speak-Y работает на вашем Mac и читает локальную библиотеку. Но всё, что ChatGPT действительно прочитал, становится частью разговора и уходит модели вместе с остальной перепиской, поэтому транскрипты, о которых вы спрашиваете, машину всё-таки покидают — как контекст чата.

Почему на экране интеграций Speak-Y значится Codex CLI, а не ChatGPT?

Потому что это одна и та же конфигурация. Файл Codex написан в TOML, а не в JSON, поэтому Speak-Y выдаёт вам два значения для вставки вместо того, чтобы записать файл за вас, — а десктопное приложение ChatGPT читает тот же файл.