cubesandbox-browser-sandbox
CubeSandbox Browser Runtime
Один продакшн-образ и контракт шаблона для browser_use на CubeSandbox, основанный на образе sandbox-browser от TencentCloud с закреплённым digest. Каждая песочница содержит обе возможности рабочих нагрузок:
постоянный вышестоящий Chromium/CDP на
9000и управляемый s6 HTTP-сервис@playwright/mcp@0.0.79на8931, работающие под UID 1000;записываемое хранилище супервизора Run без прав root в
/run/browser-use/runsи два CDP-слота безголового Chromium, принадлежащих Run, на10000-10001.
Цель runtime требует RUNTIME_MARKER=sha256:<64 lowercase hex>. Маркер записывается в /etc/browser-use/runtime-marker и должен совпадать с тем, который продвигается вместе с единственным ID шаблона в browser_use.
Сборка и проверка
source_digest="$(git archive HEAD | sha256sum | cut -d' ' -f1)"
marker="sha256:$(printf '%s:runtime' "${source_digest}" | sha256sum | cut -d' ' -f1)"
docker build --target runtime --build-arg "RUNTIME_MARKER=${marker}" \
-t cubesandbox-browser-sandbox .
docker run -d --cap-add=SYS_ADMIN --shm-size=2g --name browser-runtime \
cubesandbox-browser-sandbox
docker exec --user user browser-runtime browser-sandbox-smoke mcp
docker exec --user user browser-runtime browser-sandbox-smoke run
docker exec --user user browser-runtime browser-sandbox-mcp-smokeЭта последовательность доказывает, что постоянный MCP выдерживает два параллельных процесса Chromium, принадлежащих Run, в одной песочнице. SYS_ADMIN нужен только локальному Docker, чтобы Chromium мог создавать пространства имён песочницы; CubeSandbox обеспечивает изоляцию в развёрнутой среде.
Зависимости и базовые образы неизменяемы: npm-пакеты зафиксированы по контрольным суммам, зависимости Python-верификатора зафиксированы по хэшам, обе стадии сборки используют digest образов, а публикация выпускает SBOM и SLSA-аттестации происхождения и подписывает загруженный digest в режиме keyless с помощью Cosign. Перегенерируйте Python-лок с помощью uv pip compile requirements.in -o requirements.txt --generate-hashes.
Related MCP server: agentic-browser-mcp
Публикация и шаблон
Рабочий процесс публикует теги latest, sha-<commit> и теги релизов в ghcr.io/hirotasoshu/cubesandbox-browser-sandbox. Продвижение должно сопоставлять тег с image@sha256:...; плавающие ссылки на образы отклоняются:
scripts/create-template.sh \
ghcr.io/hirotasoshu/cubesandbox-browser-sandbox@sha256:<digest>Псевдоним шаблона по умолчанию — browser-use-runtime-medium, с 2 vCPU, 4 GiB ОЗУ и 20 GiB записываемого слоя. Он предоставляет наружу envd 49983, постоянный CDP 9000, MCP 8931 и CDP-слоты Run 10000-10001. Только постоянный CDP служит стартовой пробой, потому что порты Run простаивают, пока Run не станет их владельцем.
Токены доступа к трафику Cube являются границей входящего трафика. MCP разрешает только динамические имена хостов Cube, потому что Cube проверяет токен перед пересылкой трафика. После создания шаблона настройте потолок PID провайдера и обязательный запрет исходящего трафика в частные/link-local адреса, затем выполните живой контракт:
python -m venv .venv
.venv/bin/pip install -r requirements.txt
CUBE_TEMPLATE_ID=<template-id> \
CUBE_RUNTIME_MARKER=sha256:<runtime-marker> \
E2B_API_KEY=<cube-api-key> \
E2B_API_URL=<cube-api-url> \
.venv/bin/python scripts/verify-template.pyЖивая проверка создаёт одну защищённую песочницу и одновременно проверяет обе рабочие нагрузки: API маркера и файлов, политику публичной/частной сети, аутентифицированный CDP на всех трёх браузерных эндпоинтах, отклонение токенов трафика, точные определения инструментов MCP, навигацию MCP и изоляцию опасного инструмента.
Финальным авторитетом при продвижении остаётся набор тестов соответствия провайдера browser_use. Не включайте production-режим на основании одного лишь успеха сборки образа.
Безопасность
CDP и Playwright MCP предоставляют контроль над браузером; опасный инструмент MCP эквивалентен RCE на хосте. Никогда не внедряйте секреты приложений в песочницу. Держите контроль токенов трафика включённым, используйте только неизменяемые значения образов и маркеров, обеспечивайте соблюдение лимитов PID провайдера и требуйте запрета частных/link-local адресов.
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
Hosted real Google Chrome MCP with per-user persistent state. Navigate, click, type, screenshot.
Stealth web browser for agents: search, fetch, click, download and type in persistent MCP sessions.
Provides cloud browser automation capabilities using Stagehand and Browserbase, enabling LLMs to i…
Live browser debugging for AI assistants — DOM, console, network via MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables browser automation and web scraping by exposing Playwright tools through an HTTP-based MCP server. Users can navigate pages, interact with web elements, capture screenshots, and extract structured content using a persistent Chromium instance.MIT
- AlicenseAqualityBmaintenanceEnables MCP clients to automate a real Chrome browser via Playwright, supporting session sharing and tools for navigation, clicking, typing, and more.112MIT
- AlicenseCqualityBmaintenanceExposes a remote browser as MCP tools via Playwright, enabling AI agents to navigate and interact with web pages through DOM snapshots, clicks, typing, and form operations.40228Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to operate an isolated local Chromium browser through MCP, with semantic snapshots, ref-based actions, search, research, crawling, and CDP access.Apache 2.0
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/hirotasoshu/cubesandbox-browser-sandbox'
If you have feedback or need assistance with the MCP directory API, please join our Discord server