MCP Cloud Gateway

MCP Cloud Gateway

Unifies local MCP servers into a single secure Cloudflare Tunnel endpoint, making them accessible to MCP clients like Notion and Claude. Supports HTTP/SSE/stdio servers, built-in file system tools, bearer authentication, and one-click Windows setup.

Category
访问服务器

README

MCP Cloud Gateway

Windows-приложение, которое объединяет локальные MCP-серверы в одну защищённую ссылку и публикует её через Cloudflare Tunnel.

Подключите к Notion, Claude, Cursor или другому MCP-клиенту один адрес:

https://your-tunnel.trycloudflare.com/mcp?token=YOUR_TOKEN

Все включённые HTTP, SSE, stdio и встроенные серверы становятся доступны через этот единый endpoint.

Возможности

  • Единый MCP endpoint /mcp — инструменты всех включённых серверов в одном подключении.
  • Cloudflare Tunnel — публичный HTTPS без проброса портов и белого IP.
  • Совместимость с Notion — Streamable HTTP и legacy SSE, абсолютный callback endpoint и авторизация в URL.
  • HTTP/SSE и stdio — проксирование запущенных серверов и запуск локальных серверов через npx или другую команду.
  • Автодетект — поиск MCP на типовых локальных портах с настоящим initialize.
  • Управление инструментами — понятные названия, метки READ/WRITE и отдельный переключатель каждого инструмента.
  • Встроенная файловая система — доступ к пользовательским путям и дискам с блокировкой системных каталогов Windows/Linux.
  • Bearer-авторизация — общий токен, сравнение постоянного времени, возможность перевыпуска.
  • Диагностика — журнал запросов, события, поиск, фильтры и экспорт CSV/NDJSON.
  • Автоустановка — приложение может самостоятельно установить Node.js и cloudflared в свою папку данных.

Что исправлено в v1.0.7

  • Длинная строка версии cloudflared больше не вылезает из зелёного индикатора и не перекрывает кнопку обновления.
  • На главной показываются запросы за текущий запуск приложения, а не накопленный счётчик из старого файла логов.
  • История за последние 24 часа по-прежнему доступна в подписи и разделе логов.
  • Сообщение Failed to proxy HTTP: context canceled больше не отображается как авария туннеля: это штатное закрытие длинного SSE-соединения клиентом.
  • Версия сборки берётся из package.json, поэтому имена Setup и Portable .exe совпадают с релизом.

Быстрый старт для пользователя

Готовый .exe

В GitHub Releases доступны два варианта:

  • MCP-Cloud-Gateway-Setup-1.0.7.exe — обычный установщик Windows x64.
  • MCP-Cloud-Gateway-1.0.7-portable.exe — портативная версия без установки.
  1. Запустите приложение.
  2. На первом экране установите Node.js и cloudflared автоматически.
  3. Добавьте MCP-сервер вручную или через Автодетект.
  4. Запустите шлюз и Cloudflare Tunnel.
  5. На главной нажмите Скопировать для Notion.
  6. Вставьте полученный адрес в настройках MCP-подключения Notion.

При включённой авторизации используйте именно кнопку копирования: она добавляет токен к адресу /mcp.

Подключение к Notion

В Notion нужен единый URL шлюза, а не адрес отдельного сервера:

https://example.trycloudflare.com/mcp?token=YOUR_TOKEN

После подключения Notion получает инструменты всех включённых серверов. Для предотвращения конфликтов шлюз публикует имена в формате:

server-slug__tool_name

Например:

files__read_file
files__list_directory
github__search_repositories

Встроенный файловый MCP

Встроенный сервер позволяет работать с пользовательскими файлами на доступных дисках. По умолчанию доступны:

Инструмент Режим Назначение
list_roots READ Список доступных дисков и расположений
list_directory READ Содержимое каталога
read_file READ Чтение текстового файла
write_file WRITE Создание или перезапись файла
create_directory WRITE Создание каталога
delete_path WRITE Удаление; по умолчанию выключено
move_path WRITE Перемещение; по умолчанию выключено

Защищённые системные области

На Windows блокируются Windows, Program Files, Program Files (x86), ProgramData, Recovery, Boot, $Recycle.Bin и System Volume Information. На Linux блокируются основные системные каталоги: /etc, /usr, /bin, /sbin, /boot, /proc, /sys, /dev, /lib, /run и /var.

Проверяется как исходный путь, так и фактический путь после разрешения символических ссылок.

Маршруты

Маршрут Назначение
GET/POST /mcp Единый MCP всех включённых серверов
POST /mcp/message Callback legacy SSE-сессии
ANY /mcp/<slug> Прямое подключение к конкретному серверу
GET /health Публичная проверка состояния
GET / Краткий JSON-манифест шлюза

Токен принимается тремя способами:

Authorization: Bearer YOUR_TOKEN
X-Api-Key: YOUR_TOKEN

или в URL:

/mcp?token=YOUR_TOKEN

Добавление серверов

HTTP / Streamable HTTP / SSE

Укажите название и локальный URL сервера, например:

http://127.0.0.1:3000/mcp

stdio

Укажите команду и аргументы, например:

Команда:    npx
Аргументы:  -y @modelcontextprotocol/server-postgres POSTGRES_URL

Шлюз запустит процесс по первому запросу и преобразует stdio JSON-RPC в HTTP.

Разработка

Требования:

  • Node.js 18 или новее;
  • npm;
  • Windows 10/11 для сборки Windows .exe.
npm install
npm run dev

Проверка типов и production-сборка интерфейса:

npm run typecheck
npm run build

Сборка Windows

Обычная сборка:

npm install
npm run dist

Или запустите:

build-exe.bat

Если права администратора недоступны:

build-exe-no-admin.bat

Артефакты появятся в release/:

MCP-Cloud-Gateway-Setup-1.0.7.exe
MCP-Cloud-Gateway-1.0.7-portable.exe

Подробности и решение ошибки Windows symlink находятся в BUILD-WINDOWS.md.

Автоматический GitHub Release

В репозитории есть workflow .github/workflows/release.yml. Чтобы собрать .exe и создать релиз:

git tag v1.0.7
git push origin v1.0.7

GitHub Actions на Windows:

  1. установит зависимости;
  2. соберёт Setup и Portable .exe;
  3. сформирует архив исходников;
  4. прикрепит все файлы к GitHub Release.

Где хранятся данные

Windows: %APPDATA%\mcp-cloud-gateway\
macOS:   ~/Library/Application Support/mcp-cloud-gateway/
Linux:   ~/.config/mcp-cloud-gateway/

Основные файлы:

config.json   настройки, серверы и токен
logs.ndjson   журнал, если включена запись на диск
runtime/      управляемые копии Node.js и cloudflared

Решение проблем

Notion бесконечно подключается

  • Используйте ссылку с главной страницы, заканчивающуюся на /mcp?token=....
  • Перезапустите шлюз и туннель после обновления.
  • Удалите старое MCP-подключение из Notion и создайте новое, если Notion закэшировал старую схему.

Invalid content type, expected text/event-stream

Убедитесь, что используется /mcp, а не только домен туннеля. Версия 1.0.7 поддерживает legacy SSE и Streamable HTTP.

context canceled в cloudflared

Это штатное закрытие SSE-соединения клиентом, а не падение туннеля. В v1.0.7 такие сообщения скрываются из красного статуса.

Туннель не подключается через VPN

Выберите http2 и IPv4 в настройках туннеля или запустите автоматический подбор параметров. QUIC использует UDP и часто блокируется VPN или корпоративной сетью.

Порт 8787 занят

Измените порт в Настройки → Шлюз, затем перезапустите шлюз.

Безопасность

  • По умолчанию шлюз слушает только 127.0.0.1.
  • Публичный доступ идёт через HTTPS Cloudflare Tunnel.
  • Не публикуйте URL, содержащий токен.
  • Перевыпустите токен, если он попал в логи, скриншот или публичный issue.
  • Выключайте ненужные серверы и WRITE-инструменты.
  • Быстрые домены trycloudflare.com меняются после перезапуска туннеля; для постоянного адреса используйте именованный туннель.

Структура проекта

electron/
  main.js
  preload.js
  lib/
    gateway.js
    cloudflared.js
    runtime.js
    detect.js
    stdio-bridge.js
    builtin-filesystem.js
    mcp-tools.js
    logs.js
    store.js
src/
  components/
  views/
  state/
  styles/
preview/
build/

Лицензия

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选