Skip to main content
Glama

sncro-relay

Компоненты с открытым исходным кодом sncro — ретранслятор MCP, агент на стороне браузера и плагины для фреймворков, которые позволяют ИИ-помощникам по программированию проверять работающий браузер.

Что содержит этот репозиторий

Путь

Что это

relay/

Приложение FastAPI, которое предоставляет сервер MCP плюс конечные точки с длинным опросом для agent.js

relay/static/agent.js

Скрипт на стороне браузера, внедряемый промежуточным ПО; отправляет данные консоли + DOM в ретранслятор

middleware/sncro_middleware.py

Плагин для FastAPI / Starlette — готовое промежуточное ПО для приложений FastAPI

middleware/sncro_flask.py

Плагин для Flask — готовое промежуточное ПО для приложений Flask

trysncro/

try.sncro.net — специально сломанное демо-приложение для тестирования sncro от начала до конца

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

 ┌──────────────┐    MCP     ┌──────────┐   long-poll   ┌─────────────┐
 │ Claude Code  │──tools────▶│  relay   │◀──────────────│  agent.js   │
 │ (or other    │            │ (relay/) │   snapshots   │ (injected   │
 │  MCP client) │◀──results──│          │──────────────▶│  by plugin) │
 └──────────────┘            └──────────┘               └─────────────┘
                                                              ▲
                                                              │ same-origin
                                                              │ cookies
                                                       ┌─────────────┐
                                                       │  your app   │
                                                       │ (plugin is  │
                                                       │  installed) │
                                                       └─────────────┘
  1. Claude вызывает create_session (инструмент MCP) → ретранслятор возвращает 9-значный ключ сессии + URL

  2. Пользователь посещает URL в браузере, где запущено его приложение → подтверждает через «Разрешить отладку sncro?»

  3. Плагин устанавливает cookie, agent.js внедряется в последующие HTML-ответы на этом источнике

  4. agent.js отправляет базовые данные (консоль, ошибки) и выполняет длинный опрос для запросов по требованию (query_element, get_page_snapshot и т. д.)

Использование sncro

Большинству пользователей не нужно запускать ретранслятор самостоятельно — размещенная версия на relay.sncro.net подходит для бесплатного уровня. Зарегистрируйте свой проект на sncro.net и получите ключ проекта.

FastAPI: добавьте middleware/sncro_middleware.py в свой проект, затем:

from middleware.sncro_middleware import SncroMiddleware, sncro_routes

app = FastAPI(debug=True)  # sncro only loads when debug=True
if app.debug:
    app.include_router(sncro_routes)
    app.add_middleware(SncroMiddleware, relay_url="https://relay.sncro.net")

Flask: добавьте middleware/sncro_flask.py в свой проект, затем:

from sncro_flask import init_sncro

app = Flask(__name__)
if app.debug:
    init_sncro(app, relay_url="https://relay.sncro.net")

Оба промежуточных ПО активируются только в режиме отладки — нулевые накладные расходы в продакшене.

Участие в разработке

Мы приветствуем новые плагины для фреймворков. В CONTRIBUTING.md содержится полная спецификация того, что должен делать плагин — cookie, маршруты, заголовки безопасности — плюс шаблон для тестирования. Django, Rails, Express, Next.js, ASP.NET, Go — все приветствуются.

Отчеты об ошибках и проблемы безопасности: см. SECURITY.md.

Лицензия

MIT. См. LICENSE.

Панель управления на sncro.net (управление проектами, биллинг, администрирование) находится в отдельном проприетарном репозитории.

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/scottconfusedgorilla/sncro-relay'

If you have feedback or need assistance with the MCP directory API, please join our Discord server