chatgpt-mcp
chatgpt-mcp
Stateless MCP-сервер, который предоставляет явно сконфигурированные возможности на Linux-компьютере для ChatGPT или любого совместимого MCP-клиента.
ChatGPT / MCP client
|
| MCP 2026-07-28
v
chatgpt-mcp
|
| typed ComputerAdapter seam
v
local operating systemChatGPT выбирает, какой инструмент вызвать. chatgpt-mcp проверяет вызов на соответствие локальной конфигурации возможностей и выполняет операцию. Это тонкий протокольный адаптер, а не второй планировщик, и он не добавляет собственный интерактивный цикл подтверждения.
Архитектура: SPEC.md. История поставки: PLAN.md. Подробное руководство по ChatGPT/туннелю: docs/CHATGPT.md.
Возможности
Все семейства, кроме system.info, подключаются по желанию. Отключённые семейства возможностей, где это практично, исключаются из обнаружения инструментов MCP.
Инструмент | Назначение |
| Информация о хосте/среде и сводка предоставленных возможностей |
| Список разрешённой директории |
| Чтение разрешённого UTF-8 текстового файла |
| Создание, перезапись или добавление в разрешённый текстовый файл |
| Создание разрешённой директории |
| Перемещение/переименование внутри разрешённых корней |
| Удаление внутри разрешённых корней |
| Запуск разрешённого исполняемого файла с массивом аргументов |
| Список видимых процессов |
| Отправка сигнала PID |
| Чтение состояния разрешённой системной службы |
| Запуск, остановка или перезапуск разрешённой службы |
| Запуск сконфигурированного именованного приложения |
| Закрытие приложения, ранее запущенного через его дескриптор |
| Открытие разрешённой схемы URL |
| Захват рабочего стола как PNG-изображения MCP |
| Перемещение указателя рабочего стола |
| Клик указателем рабочего стола |
| Ввод литерального текста в сфокусированное приложение |
| Отправка последовательности клавиш в сфокусированное приложение |
Требования
Основной сервер:
Linux
Node.js 22+
pnpm 11.20.0 (установщик получает закреплённую версию через Corepack или
npx)пользовательские службы systemd для постоянного туннеля, устанавливаемые
./install.sh
Необязательные команды хоста зависят от того, что вы включаете:
службы:
systemctlоткрытие браузера:
xdg-openввод с рабочего стола:
xdotoolскриншоты: один из
grim,gnome-screenshot,scrotили ImageMagickimport
Быстрый установщик может установить текущий официальный tunnel-client от OpenAI и распространённые вспомогательные инструменты для рабочего стола Debian/Ubuntu, если они отсутствуют.
Быстрая установка: ChatGPT + ваш Linux-компьютер
Для одного компьютера рекомендуемый путь:
ChatGPT Developer Mode
|
OpenAI Secure MCP Tunnel
|
| outbound HTTPS
v
tunnel-client on your computer
|
| stdio
v
chatgpt-mcpНе требуется публичный входящий слушатель.
Быстрый установщик намеренно использует config.full.example.json, который предоставляет широкий доступ под контролем владельца: чтение/запись файловой системы из /, доступ к исполняемым файлам по шаблону, управление процессами/службами, открытие браузера, скриншоты и ввод с рабочего стола, где это поддерживается. Если вам нужны более узкие полномочия, используйте config.example.json и ручную настройку.
1. Создайте туннель MCP OpenAI
Откройте:
https://platform.openai.com/settings/organization/tunnels
Создайте туннель и скопируйте его ID. Он выглядит так:
tunnel_0123456789abcdef0123456789abcdefДля использования в ChatGPT свяжите туннель с рабочим пространством/учётной записью ChatGPT, которая должна его видеть.
Текущее разделение разрешений:
создание/редактирование/удаление туннеля: Tunnels Read + Manage
запуск
tunnel-clientили выбор туннеля в ChatGPT: Tunnels Read + Use
2. Создайте ключ API для выполнения
Откройте:
https://platform.openai.com/settings/organization/api-keys
Создайте обычный ключ API для выполнения. Не используйте Admin API ключ для долгоживущего демона туннеля.
Установщик запрашивает полученное значение sk-... со скрытым вводом в терминале и сохраняет его локально в .secrets/runtime-api-key с ограничительными правами доступа.
Зачем туннелю нужен ключ API?
Ключ аутентифицирует tunnel-client в плоскости управления туннелем OpenAI. Он доказывает, что локальному демону разрешено использовать выбранный туннель.
Он не используется chatgpt-mcp для вызова API модели OpenAI. В этой настройке ChatGPT уже является моделью/клиентом; Secure MCP Tunnel — это только частный транспорт, позволяющий этому разговору ChatGPT достичь локального MCP-сервера.
tunnel_... = which tunnel this computer belongs to
sk-... = permission for tunnel-client to use that tunnelchatgpt-mcp не выполняет запросы /v1/responses или другие запросы на вывод модели с этим ключом выполнения. Биллинг API модели OpenAI отделён от использования подписки ChatGPT. Текущая документация Secure MCP Tunnel не публикует отдельный тариф на туннелирование; проверяйте актуальную документацию OpenAI, если это изменится.
3. Клонируйте и запустите установщик
git clone https://github.com/alexcodeplace/chatgpt-mcp.git
cd chatgpt-mcp
./install.shУстановщик:
запрашивает ID туннеля и ключ API выполнения, если они ещё не предоставлены;
защищает оба значения в
.secrets/;получает закреплённый в проекте pnpm 11.20.0 без необходимости записываемого shim Corepack в
/usr/bin;устанавливает зависимости и запускает полный шлюз проекта;
создаёт
config.local.jsonиз шаблона с широким контролем;устанавливает официальный
tunnel-clientот OpenAI, если он отсутствует на поддерживаемых архитектурах Linux;устанавливает распространённые вспомогательные инструменты для рабочего стола на Debian/Ubuntu при необходимости;
инициализирует профиль туннеля
chatgpt-computer;использует эфемерный порт проверки работоспособности на loopback, чтобы существующая служба на порту 8080 не блокировала установку;
запускает
tunnel-client doctor --explain;устанавливает и запускает
~/.config/systemd/user/chatgpt-mcp-tunnel.service;проверяет службу и диагностику туннеля.
Поддерживается также неинтерактивная установка:
export CONTROL_PLANE_TUNNEL_ID='tunnel_0123456789abcdef0123456789abcdef'
export CONTROL_PLANE_API_KEY='sk-...'
./install.sh --yesНе помещайте ключ API непосредственно в командную строку ./install.sh ... и не коммитьте его в Git.
Чтобы пропустить установку необязательных пакетов для рабочего стола:
./install.sh --no-desktop4. Добавьте его в ChatGPT
Пока служба туннеля запущена:
В веб-версии ChatGPT откройте Settings → Security and login → Developer mode и включите его.
Откройте https://chatgpt.com/plugins.
Нажмите кнопку «плюс» и создайте приложение в режиме разработчика.
В разделе Connection выберите Tunnel.
Выберите созданный туннель или вставьте его
tunnel_id, когда будет предложено.Включите новое приложение в разговоре.
Первый тест:
Use my computer MCP's system.info tool and report the hostname and enabled capabilities.
Если туннель не отображается в списке, проверьте его связь с рабочим пространством ChatGPT и разрешение Tunnels Read + Use.
Статус и удаление
./scripts/tunnel-status.shКоманда статуса сама загружает сохранённый ключ выполнения и использует эфемерный слушатель проверки работоспособности, поэтому вам не нужно вручную экспортировать CONTROL_PLANE_API_KEY только для запуска диагностики.
Удалите постоянную пользовательскую службу, оставив локальную конфигурацию/секреты нетронутыми:
./scripts/tunnel-uninstall.shРучная установка / разработка
Репозиторий закрепляет pnpm 11.20.0. Corepack может принудительно использовать эту точную версию без corepack enable:
git clone https://github.com/alexcodeplace/chatgpt-mcp.git
cd chatgpt-mcp
corepack pnpm@11.20.0 install
corepack pnpm@11.20.0 gatepnpm gate запускает проверку типов, поведенческие тесты и сборку TypeScript.
Если Corepack недоступен, используйте npx -y pnpm@11.20.0 вместо этого.
Настройка вручную
cp config.example.json config.local.json
export CHATGPT_MCP_CONFIG="$PWD/config.local.json"Конфигурация по умолчанию предоставляет только system.info. См. config.example.json для каждого семейства возможностей. config.local.json и .secrets/ игнорируются Git.
Для намеренно широких полномочий скопируйте config.full.example.json вместо этого.
Запуск через stdio
corepack pnpm@11.20.0 build
CHATGPT_MCP_CONFIG="$PWD/config.local.json" node dist/src/stdio.jsstdout зарезервирован для трафика протокола MCP. Диагностика идёт в stderr.
Запуск через HTTP
corepack pnpm@11.20.0 build
CHATGPT_MCP_CONFIG="$PWD/config.local.json" corepack pnpm@11.20.0 start:httpКонечная точка по умолчанию:
http://127.0.0.1:3210/mcpПроверка работоспособности:
curl http://127.0.0.1:3210/healthzHTTP остаётся без состояния. Привязка не к loopback отклоняется, если явно не настроены разрешённые хосты.
Граница доверия
Операции с файловой системой проходят через центральную авторизацию путей, которая отклоняет обход, трюки с префиксами соседних путей и побеги через симлинки.
shell.execиспользует прямой запуск исполняемого файла + массив аргументов без неявногоsh -c.Службы и приложения проверяются на соответствие настроенным полномочиям перед вызовом.
Схемы браузера проверяются перед открытием.
Ввод с рабочего стола и скриншоты — отдельные подключаемые возможности с ограниченными входами/выходами.
Полные контракты см. в SPEC.md.
Разработка
corepack pnpm@11.20.0 typecheck
corepack pnpm@11.20.0 test
corepack pnpm@11.20.0 build
corepack pnpm@11.20.0 gateGitHub Actions запускает тот же шлюз при пушах и pull request'ах и проверяет синтаксис скриптов установщика.
Ограничения платформы
Конкретный адаптер ориентирован на Linux.
process.listиспользуетps.service.*по умолчанию используетsystemctlот systemd.input.*используетxdotool; нативный Wayland может потребовать XWayland или будущий адаптер для конкретного композитора.screen.captureподдерживает распространённые команды скриншотов Linux; разрешения рабочего стола/сеанса всё равно применяются.Автоматический установщик нацелен на Linux amd64/arm64 и пользовательские службы systemd.
Внешний смоук-тест ChatGPT/туннеля требует собственной идентичности/учётных данных туннеля OpenAI оператора; CI репозитория не может их имитировать.
Ссылки на вышестоящие проекты
MCP TypeScript SDK: https://github.com/modelcontextprotocol/typescript-sdk
Спецификация MCP: https://modelcontextprotocol.io/specification/2026-07-28
OpenAI Secure MCP Tunnel: https://developers.openai.com/api/docs/guides/secure-mcp-tunnels
OpenAI tunnel-client: https://github.com/openai/tunnel-client
Управление туннелями OpenAI: https://platform.openai.com/settings/organization/tunnels
Ключи API выполнения OpenAI: https://platform.openai.com/settings/organization/api-keys
Режим разработчика ChatGPT: https://developers.openai.com/api/docs/guides/developer-mode
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A paid remote MCP for AI agent browser approval MCP, built to return verdicts, receipts, usage logs,
Reasoning, code, anti-deception, memory harness MCP tools. Stdio or HTTPS api.ejentum.com/mcp
MCP server for Wan AI video generation
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/alexcodeplace/chatgpt-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server