Skip to main content
Glama

Шлюз Stackbilt MCP

Stackbilt MCP server

Реестр MCP: dev.stackbilt.mcp/gateway — опубликовано в официальном реестре MCP

Шлюз Model Context Protocol (MCP) с аутентификацией OAuth для сервисов платформы Stackbilt. Построен как Cloudflare Worker с использованием @cloudflare/workers-oauth-provider.

Что он делает

Единая конечная точка MCP (mcp.stackbilt.dev/mcp), которая направляет вызовы инструментов к нескольким бэкенд-воркерам продуктов:

Бэкенд

Инструменты

Описание

TarotScript

scaffold_create, scaffold_classify, scaffold_publish, scaffold_deploy, scaffold_import, scaffold_status

Детерминированное создание каркаса проекта, импорт рабочих процессов n8n, публикация на GitHub, развертывание CF

img-forge

image_generate, image_list_models, image_check_job

Генерация изображений с помощью ИИ (5 уровней качества)

Stackbilder (бэкенд TarotScript)

flow_create, flow_status, flow_summary, flow_quality, flow_governance, flow_advance, flow_recover

УСТАРЕЛО — Оркестрация архитектурного потока (миграция на scaffold_*)

Конвейер создания каркаса (E2E)

You: "Build a restaurant menu API with D1 storage"
  ↓
scaffold_create → structured facts + 9 deployable project files
  ↓
scaffold_publish → GitHub repo with atomic initial commit
  ↓
git clone → npm install → npx wrangler deploy → live Worker

Ноль вызовов LLM для генерации файлов. ~20 мс для структуры, ~2 с с использованием oracle prose. В 21 раз быстрее, чем flow_create.

Related MCP server: forgemesh-imagegen

Ключевые особенности

  • OAuth 2.1 с PKCE — GitHub SSO, Google SSO и аутентификация по электронной почте/паролю

  • Паттерн адаптера бэкенда — каталоги инструментов, агрегированные из нескольких привязок сервисов, с пространствами имен для предотвращения конфликтов

  • Ограничение частоты запросов (rate limiting) по уровням — лимиты для каждого арендатора с фиксированным окном через RATELIMIT_KV (free=20/мин, hobby=60, pro=300, enterprise=1000); 429 с заголовками Retry-After и X-RateLimit-*

  • Атрибуция затрат и квоты — каждый вызов инструмента имеет кредитную стоимость; квота резервируется через edge-auth перед отправкой и фиксируется/возвращается по результату; стоимость image_generate масштабируется в зависимости от эффективного уровня качества (1×/1×/3×/5×/8× для draft/standard/premium/ultra/ultra_plus); когда установлен model, он имеет приоритет при выставлении счета над quality_tier

  • Принудительное применение области действия (scope) + уровня — tools/list фильтруется по областям действия токена; tools/call требует область generate для мутирующих инструментов; дорогие уровни качества image_generate (premium и выше) ограничены планами Pro+; прямое указание model обеспечивает такое же ограничение через сопоставление модель→уровень

  • Соответствие Конституции безопасности — каждый инструмент объявляет уровень риска (READ_ONLY, LOCAL_MUTATION, EXTERNAL_MUTATION); структурированное ведение журнала аудита с маскированием секретов; идентификационные токены с подписью HMAC

  • Шлюз «скоро появится» — флаг PUBLIC_SIGNUPS_ENABLED для управления публичным доступом

  • MCP JSON-RPC через HTTP — поддерживает как потоковую передачу (SSE), так и транспорт запрос/ответ

Быстрый старт

Предварительные требования

  • Node.js 18+

  • Wrangler CLI (npm i -g wrangler)

  • Учетная запись Cloudflare с настроенными необходимыми привязками сервисов

Установка и запуск

npm install
npm run dev

Запуск тестов

npm test

Развертывание

npm run deploy

Развертывание в пользовательском домене mcp.stackbilt.dev через Cloudflare Workers.

Переменные среды и секреты

Имя

Тип

Описание

SERVICE_BINDING_SECRET

Секрет

Ключ HMAC-SHA256 для подписи идентификационных токенов

API_BASE_URL

Переменная

Базовый URL для перенаправлений OAuth (например, https://mcp.stackbilt.dev)

AUTH_SERVICE

Привязка сервиса

RPC к воркеру edge-auth (AuthEntrypoint)

STACKBILDER

Привязка сервиса

Маршрут к воркеру edge-stack-architect-v2

IMG_FORGE

Привязка сервиса

Маршрут к воркеру img-forge-mcp

OAUTH_KV

Пространство имен KV

Хранит состояние социального OAuth (записи с TTL 5 мин) и сессии MCP

RATELIMIT_KV

Пространство имен KV

Счетчики ограничения частоты запросов с фиксированным окном для каждого арендатора (TTL 60 с)

PLATFORM_EVENTS_QUEUE

Очередь

Конвейер событий аудита (stackbilt-user-events)

MCP_REGISTRY_AUTH

Переменная

Строка проверки домена реестра MCP (обслуживается по адресу /.well-known/mcp-registry-auth)

Установите секреты с помощью:

wrangler secret put SERVICE_BINDING_SECRET

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

src/
  index.ts           # Entry point — OAuthProvider setup, CORS, health check, MCP Registry well-known
  gateway.ts         # MCP JSON-RPC transport, session management, tool dispatch
  oauth-handler.ts   # OAuth 2.1 flows: login, signup, social SSO, consent
  tool-registry.ts   # Tool catalog aggregation, namespacing, schema validation
  audit.ts           # Structured audit logging, secret redaction, trace IDs
  auth.ts            # Bearer token extraction & validation
  route-table.ts     # Static routing table, tool-to-backend mapping, risk levels
  types.ts           # Type definitions, RiskLevel enum, interfaces

test/
  audit.test.ts
  auth.test.ts
  gateway.test.ts
  oauth-handler.test.ts
  route-table.test.ts
  tool-registry.test.ts

docs/
  user-guide.md      # End-user guide: account creation, client setup, tool usage
  api-reference.md   # MCP tool surface, authentication flow, tool routing
  architecture.md    # System design, security model, request flow

Набор тестов

122 теста в 6 файлах тестов, охватывающих:

  • Обработчик OAuth — подпись/проверка идентификационного токена, вход, регистрация, социальные потоки OAuth, согласие, экранирование HTML

  • Шлюз — жизненный цикл сессии, initialize, tools/list, tools/call, потоковая передача SSE, обработка ошибок

  • Аудит — шаблоны маскирования секретов (ключи API, токены bearer, шестнадцатеричные хеши, поля паролей), идентификаторы трассировки, отправка в очередь

  • Аутентификация — извлечение токена bearer, проверка ключа API против JWT, сопоставление ошибок

  • Реестр инструментов — создание каталога, сопоставление имен, проверка схемы, принудительное применение уровня риска

  • Таблица маршрутов — разрешение маршрутов, поиск уровня риска

npm test          # single run
npm run test:watch # watch mode

Документация

Лицензия

MIT — см. LICENSE

Related MCP Connectors

Related MCP Servers