asif-nvc/e2b-sandbox-mcp

asif-nvc/e2b-sandbox-mcp

от asif-nvc
MCP-сервер, подключающий Claude Code к облачным Linux-сандбоксам E2B для работы с GitHub-репозиториями (клон, команды, файлы, git) безопасно, не затрагивая локальную машину.

E2B Sandbox MCP Server

npm version license

An MCP (Model Context Protocol) server that connects Claude Code with E2B cloud sandboxes, giving you isolated Linux VMs to work on any GitHub repository without touching your local machine.

What It Does

This server provides Claude Code with 29 tools to create cloud sandboxes, clone repos, run commands, manage files, and perform git operations — all in a secure, disposable Linux environment.

Your local machine stays untouched. Every operation happens inside an E2B sandbox VM.

Token Savings

Running commands through E2B sandboxes instead of local Bash reduces the tokens consumed per conversation. Tool outputs are structured and truncated (100KB per stream, 200KB total), so large build/test outputs don't flood your context window.

Project Size Example Local Bash Tokens E2B Sandbox Tokens Savings
Small Express API, ~10 files ~15K-25K ~10K-18K ~20-30%
Medium Next.js app, 50-100 files ~50K-100K ~25K-45K ~40-55%
Large Monorepo, 500+ files ~200K-500K+ ~60K-120K ~60-75%

Why it scales: A local npm install on a monorepo can dump 10K+ lines into context. A full test suite adds thousands more. With E2B, those outputs are capped and structured. Background processes (sandbox_exec_background) return only a process ID — zero streaming output. Directory listings are capped at 1000 entries. The result: your context window stays available for actual work instead of being consumed by terminal noise.

Инструменты были проиндексированы:
sandbox_create

Создаёт новую облачную песочницу E2B (изолированная Linux-ВМ) и возвращает её sandboxId для использования со всеми остальными инструментами sandbox_*. Это точка входа — вызывайте этот инструмент перед любой другой операцией с песочницей. Песочница автоматически истекает после тайм-аута (по умолчанию 5 минут); используйте sandbox_keep_alive для продления или sandbox_pause, чтобы сохранить её бессрочно. Если установлен GITHUB_TOKEN, аутентификация git настраивается автоматически для доступа к приватным репозиториям. Возвращает sandboxId, templateId, метку времени создания, метаданные и статус аутентификации git. Расходует квоту API E2B (проверьте лимиты на e2b.dev/pricing).

Параметры
  • metadataobject

    Метки в формате «ключ-значение» для последующей идентификации песочницы (например, {"repo": "user/project", "purpose": "testing"}). Возвращаются sandbox_list и sandbox_info.

  • templateIdstring

    Sandbox template ID (например, "base", "python" или пользовательский шаблон). По умолчанию используется "base" (Ubuntu со стандартными инструментами). Используйте пользовательский шаблон, если нужны предустановленные языки, базы данных или зависимости проекта.

  • timeoutMsnumber

    Тайм-аут автоматического истечения срока действия в миллисекундах. По умолчанию: 300000 (5 минут). Максимум: 86400000 (24 часа на тарифе Pro). После этого песочница уничтожается и все данные теряются. Используйте sandbox_keep_alive для продления или sandbox_pause для сохранения состояния.

sandbox_download_url

Генерирует временный предварительно подписанный URL для загрузки файла из песочницы (только чтение, без побочных эффектов). Используйте его, чтобы получить артефакты сборки, логи, бинарные файлы или любой другой файл из песочницы на локальную машину. URL можно открыть в браузере или загрузить с помощью curl/wget. URL истекает через короткий промежуток времени. Для чтения содержимого файла напрямую как текст используйте sandbox_file_read, он возвращает содержимое inline. В отличие от sandbox_upload_url (который отправляет файлы в песочницу), этот получает файлы из неё. Завершается ошибкой, если указанный путь к файлу не существует.

Параметры
  • pathstringобязательный

    Абсолютный путь к файлу в песочнице, который нужно скачать (например, "/home/user/repo/dist/bundle.js"). Это должен быть файл, а не каталог. Используйте sandbox_file_list, чтобы найти доступные файлы.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей файл.

sandbox_exec

Выполняет shell-команду в песочнице и ожидает её завершения. Возвращает stdout, stderr и код возврата. Изменяет файловую систему и состояние песочницы в зависимости от команды (например, "npm install" добавляет node_modules, "rm -rf" удаляет файлы). Вывод обрезается до 100 КБ на поток (stdout/stderr), чтобы избежать переполнения контекста. Используйте этот инструмент для команд, которые завершаются быстро (сборки, тесты, установки, скрипты). Для долгоживущих процессов, таких как dev-серверы или watcher'ы, используйте sandbox_exec_background вместо этого — sandbox_exec будет блокировать выполнение до выхода команды или истечения таймаута. Если срок действия песочницы истёк, возвращает ошибку и удаляет её из реестра.

Параметры
  • commandstringобязательный

    Команда оболочки для выполнения (например, "npm install", "python main.py", "ls -la"). Выполняется в bash. Поддерживает конвейеры, перенаправление и объединение команд через && или ;.

  • cwdstring

    Рабочая директория внутри песочницы. По умолчанию - "/home/user". Используйте путь, возвращённый sandbox_git_clone, для выполнения команд в клонированном репозитории.

  • envsobject

    Переменные окружения, которые нужно задать только для этой команды (например, {"NODE_ENV": "production", "DEBUG": "true"}). Они не сохраняются между вызовами.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой выполняется команда. Песочница должна быть активной.

  • timeoutMsnumber

    Таймаут команды в миллисекундах. По умолчанию: 120000 (2 мин). Если время выполнения превышает это значение, команда завершается принудительно. Увеличьте значение для длительных сборок (например, 600000 для 10 мин). Установите 0, чтобы отключить таймаут (используйте с осторожностью).

sandbox_exec_background

Запускает долговременный фоновый процесс в изолированной среде (например, dev-сервер, наблюдатель за файлами, база данных) и сразу возвращает его PID. Не ждёт завершения команды и не передаёт вывод потоком — используйте этот инструмент для процессов, работающих бесконечно. Процесс продолжает выполняться, пока изолированная среда не истечёт, не будет завершён с помощью sandbox_process_kill или не завершится сам. Используйте sandbox_process_list, чтобы проверить, работает ли он ещё. Для доступа к веб-серверу, запущенному таким образом, используйте sandbox_get_url с номером порта. В отличие от sandbox_exec (который блокирует выполнение до завершения), этот инструмент возвращает управление сразу.

Параметры
  • commandstringобязательный

    Команда оболочки для запуска в фоновом режиме (например, "npm run dev", "python -m http.server 8080", "redis-server"). Процесс продолжит работать после того, как этот инструмент завершит работу.

  • cwdstring

    Рабочая директория процесса. По умолчанию: "/home/user". Для запуска серверов разработки используйте путь к клонированному репозиторию.

  • envsobject

    Переменные среды для этого процесса (например, {"PORT": "3000"}). На другие команды они не влияют.

  • sandboxIdstringобязательный

    ID песочницы, в которой выполняется процесс. Песочница должна быть активной.

sandbox_file_exists

Проверяет, существует ли файл или директория по заданному пути в песочнице (только чтение, без побочных эффектов). Возвращает {path, exists: true/false} — никогда не выбрасывает ошибку для несуществующих путей. Используйте это перед sandbox_file_read, sandbox_file_remove или sandbox_file_info, чтобы избежать ошибок при отсутствии путей. В отличие от sandbox_file_info (который завершается ошибкой, если путь не существует), этот безопасно возвращает false. В отличие от sandbox_file_list (который выводит содержимое директории), этот проверяет один конкретный путь.

Параметры
  • pathstringобязательный

    Абсолютный путь для проверки существования (например, "/home/user/repo/package.json"). Может быть путём к файлу или директории.

  • sandboxIdstringобязательный

    Идентификатор sandbox для входа.

sandbox_file_info

Получает метаданные о файле или директории в песочнице (только чтение, без побочных эффектов). Возвращает тип файла (файл или директория), размер в байтах и права доступа. Используйте это, чтобы проверить размер файла перед чтением, убедиться в типе файла или проверить права доступа. Завершается ошибкой, если путь не существует — сначала используйте sandbox_file_exists, если не уверены. В отличие от sandbox_file_read (возвращает содержимое файла) или sandbox_file_list (перечисляет записи директории), этот инструмент возвращает метаданные для одного пути.

Параметры
  • pathstringобязательный

    Абсолютный путь для проверки (например, "/home/user/repo/package.json"). Может быть файлом или каталогом.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой находится файл или каталог.

sandbox_file_list

Перечисляет файлы и каталоги в песочнице (только чтение, без побочных эффектов). Возвращает записи, помеченные как [FILE] или [DIR], вместе с их именами. Ограничивает результаты 1000 записей для больших каталогов. Используется для изучения файловой системы песочницы, поиска файлов после клонирования репозитория или проверки создания файлов. Завершается ошибкой, если путь не существует или не является каталогом. В отличие от sandbox_file_read (возвращает содержимое файла) или sandbox_file_info (возвращает метаданные для одного пути), этот инструмент перечисляет содержимое каталога.

Параметры
  • pathstring

    Абсолютный путь к каталогу внутри песочницы (например, "/home/user/repo/src"). По умолчанию: "/home/user". Должен быть каталогом, а не файлом.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой нужно получить список файлов.

sandbox_file_mkdir

Создаёт каталог (и все отсутствующие родительские каталоги) в песочнице. Бесшумно завершается успешно, если каталог уже существует. Используйте это для настройки структуры каталогов перед записью файлов с помощью sandbox_file_write или перед загрузкой через sandbox_upload_url. В отличие от sandbox_file_write (который создаёт файлы), этот инструмент создаёт пустые каталоги. В отличие от sandbox_file_remove (который удаляет), этот только создаёт.

Параметры
  • pathstringобязательный

    Абсолютный путь к создаваемой директории (например, "/home/user/repo/src/components"). Все промежуточные директории создаются, если они не существуют.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой нужно создать каталог.

sandbox_file_read

Читает полное текстовое содержимое файла в sandbox и возвращает его встроенно (только для чтения, без побочных эффектов). Для больших файлов вывод обрезается до 200 КБ. Используйте для просмотра исходного кода, конфигурационных файлов, логов или любого текстового файла. Для бинарных файлов или очень больших файлов используйте sandbox_download_url вместо этого, чтобы получить ссылку для скачивания. Завершается ошибкой, если файл не существует или путь указывает на каталог. В отличие от sandbox_file_info (который возвращает только метаданные) или sandbox_file_list (который выводит содержимое каталога), этот инструмент возвращает фактическое содержимое файла.

Параметры
  • pathstringобязательный

    Абсолютный путь к файлу внутри песочницы (например, "/home/user/repo/src/index.ts"). Должен быть файлом, а не директорией. Для поиска путей к файлам используйте sandbox_file_list.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей файл.

sandbox_file_remove

Навсегда и необратимо удаляет файл или каталог в песочнице. Каталоги удаляются рекурсивно, включая всё содержимое. Это действие нельзя отменить: нет корзины. Завершается ошибкой, если путь не существует. Используйте sandbox_file_exists, чтобы проверить перед удалением, если не уверены. В отличие от sandbox_exec с "rm", этот инструмент предоставляет структурированные отчеты об ошибках. Для перемещения файлов вместо удаления используйте sandbox_file_rename.

Параметры
  • pathstringобязательный

    Абсолютный путь к файлу или каталогу для удаления (например, "/home/user/repo/old-file.txt"). Файл или каталог должен существовать, иначе операция завершится с ошибкой.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой находится файл или каталог.

sandbox_file_rename

Переименовывает или перемещает файл или каталог внутри песочницы. Исходный путь должен существовать; конечный путь не должен уже существовать. Работает как с файлами, так и с каталогами. Используйте это для реорганизации структуры проекта или переименования файлов. Возвращает старый путь, новый путь и тип записи. В отличие от sandbox_file_remove (который удаляет навсегда), этот сохраняет файл и изменяет его местоположение или имя. В отличие от sandbox_file_write (который создает/перезаписывает содержимое), этот только изменяет путь.

Параметры
  • newPathstringобязательный

    Новый абсолютный путь для файла или директории (например, "/home/user/repo/new-name.ts"). Родительская директория должна существовать: сначала используйте sandbox_file_mkdir, если это необходимо.

  • oldPathstringобязательный

    Текущий абсолютный путь к файлу или каталогу, который нужно переименовать/переместить (например, "/home/user/repo/old-name.ts"). Должен существовать.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой находится файл или каталог.

sandbox_file_write

Записывает текстовое содержимое в файл в песочнице. Создаёт файл, если его не существует, и полностью перезаписывает его, если он существует. Режима добавления нет. Родительские каталоги создаются автоматически. Возвращает путь к файлу и количество записанных байт. Используйте это для создания или замены исходного кода, файлов конфигурации, скриптов или любого текстового содержимого. Для загрузки бинарных файлов с локальной машины вместо этого используйте sandbox_upload_url. В отличие от sandbox_file_rename (который перемещает файлы) или sandbox_file_remove (который удаляет файлы), этот инструмент создаёт или заменяет содержимое файла.

Параметры
  • contentstringобязательный

    Полное текстовое содержимое для записи в файл. Это полностью заменяет любое существующее содержимое. Для больших двоичных файлов вместо этого используйте sandbox_upload_url.

  • pathstringобязательный

    Абсолютный путь к файлу (например, "/home/user/repo/src/app.ts"). Если файл существует, он будет полностью перезаписан. Родительские каталоги создаются автоматически.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которую нужно записать файл.

sandbox_get_url

Получает публичный HTTPS URL для доступа к сервису, запущенному на определённом порту внутри песочницы (только чтение, без побочных эффектов). Используйте этот инструмент после запуска dev-сервера или веб-приложения с помощью sandbox_exec_background, чтобы просмотреть его в браузере. URL общедоступен — любой, у кого есть ссылка, может получить доступ к сервису. Возвращает полный URL, хост и порт. Сервис уже должен прослушивать указанный порт; этот инструмент не запускает никакой сервис. В отличие от sandbox_upload_url/sandbox_download_url (для передачи файлов), этот инструмент предоставляет прямой доступ к работающим HTTP-сервисам.

Параметры
  • portnumberобязательный

    Номер порта, который сервис прослушивает внутри песочницы (например, 3000 для React/Next.js, 8080 для Express, 5173 для Vite). Сервис должен быть уже запущен.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой работает сервис.

sandbox_git_branch

Управляет ветками git в изолированном репозитории: перечисляет существующие ветки, создает новую ветку или переключается на другую ветку. Действие "list" только для чтения. Действие "create" создает новую ветку от текущего HEAD, но не переключается на неё. Действие "checkout" переключает рабочую директорию на указанную ветку, изменяя файлы на месте - любые незакоммиченные изменения могут привести к конфликту. Требует branchName для действий "create" и "checkout". В отличие от sandbox_git_status (который показывает текущую ветку и изменения в файлах), этот инструмент управляет жизненным циклом веток. В отличие от sandbox_git_commit или sandbox_git_push, этот инструмент не влияет на историю коммитов.

Параметры
  • actionenumобязательный

    Операция branch: «list» показывает все локальные ветки (только чтение), «create» создает новую ветку из текущего HEAD (не переключается на нее), «checkout» переключает рабочую директорию на указанную ветку (изменяет файлы).

  • branchNamestring

    Имя ветки для действий "create" или "checkout" (например, "feature/new-login"). Требуется для "create" и "checkout", игнорируется для "list". Для "create" имя не должно уже существовать. Для "checkout" ветка должна существовать.

  • repoPathstringобязательный

    Абсолютный путь к git-репозиторию (например, "/home/user/repo"). Должен быть действительным git-репозиторием.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей репозиторий.

sandbox_git_clone

Клонирует git-репозиторий в песочницу, загружая его файлы и историю. Обычно это первый шаг после sandbox_create: клонировать репозиторий, затем использовать sandbox_exec для сборки/тестирования. Создаёт новый каталог по целевому пути, содержащий репозиторий. Поддерживает как публичные, так и приватные репозитории (для приватных требуется настроить GITHUB_TOKEN). По умолчанию поверхностное клонирование (depth=1) загружает только последний коммит для ускорения. Изменяет файловую систему песочницы, создавая каталог клона и записывая все файлы репозитория. Завершается ошибкой, если целевой путь уже существует или URL репозитория недействителен. В отличие от sandbox_git_pull (который обновляет существующий репозиторий), этот инструмент выполняет начальную загрузку.

Параметры
  • branchstring

    Конкретная ветка для клонирования. По умолчанию используется основная ветка репозитория (обычно "main" или "master"). Используйте эту опцию, чтобы напрямую клонировать ветку функции или PR-ветку.

  • depthnumber

    Глубина неполного клонирования (количество коммитов). По умолчанию: 1 (только последний коммит, самый быстрый вариант). Установите 0 для полной истории (нужно для git log, blame или bisect). Значения 10 или 50 дают частичную историю.

  • pathstring

    Путь назначения для клонированного репозитория. По умолчанию "/home/user/repo". Директория не должна уже существовать. Используйте этот путь в последующих вызовах sandbox_exec и sandbox_git_*.

  • repoUrlstringобязательный

    URL Git-репозитория (например, "https://github.com/user/repo"). Только HTTPS-URL. Для приватных репозиториев GITHUB_TOKEN должен быть настроен при запуске сервера.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которую нужно клонировать. Должен указывать на активную песочницу, созданную с помощью sandbox_create.

sandbox_git_commit

Индексирует файлы и создаёт git-коммит в изолированном репозитории. Это двухшаговая операция: сначала индексирует указанные файлы (или все изменения, если файлы не указаны), затем создаёт коммит с заданным сообщением. Изменяет историю git — коммит добавляется в текущую ветку. Сначала используйте sandbox_git_status, чтобы увидеть доступные для коммита изменения. После создания коммита используйте sandbox_git_push, чтобы отправить его в удалённый репозиторий. Завершается ошибкой, если нет изменений для коммита или если путь не является git-репозиторием. В отличие от sandbox_git_push (который отправляет коммиты), этот инструмент только создаёт локальный коммит.

Параметры
  • authorEmailstring

    Электронная почта автора коммита Git. Если не указана, используется настроенный user.email репозитория или значение по умолчанию.

  • authorNamestring

    Имя автора коммита Git. Если не указано, использует настроенное в репозитории user.name или значения по умолчанию.

  • filesstring[]

    Конкретные пути к файлам для добавления в индекс, относительно repoPath (например, ["src/index.ts", "package.json"]). Если параметр опущен, добавляет в индекс все изменённые, добавленные и удалённые файлы (эквивалентно "git add -A").

  • messagestringобязательный

    Сообщение коммита, описывающее изменения. Должно быть кратким и содержательным (например, «Исправлена ошибка валидации логина»).

  • repoPathstringобязательный

    Абсолютный путь к git-репозиторию (например, "/home/user/repo"). Должен быть действительным git-репозиторием.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей репозиторий.

sandbox_git_init

Инициализирует новый пустой git-репозиторий в директории песочницы. Создаёт директорию .git по указанному пути, позволяя выполнять операции git (commit, branch и т. д.) с файлами в этой директории. Используйте это, когда начинаете новый проект с нуля — не требуется, если вы использовали sandbox_git_clone (он уже инициализирует git). Директория уже должна существовать; при необходимости сначала используйте sandbox_file_mkdir. Не создаёт начальный коммит. В отличие от sandbox_git_clone (который загружает существующий репозиторий), этот инструмент создаёт новый, пустой репозиторий.

Параметры
  • pathstringобязательный

    Абсолютный путь к каталогу, в котором следует инициализировать git-репозиторий (например, "/home/user/my-project"). Каталог должен уже существовать. Внутри него будет создан подкаталог .git.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которой инициализируется репозиторий.

sandbox_git_pull

Извлекает и сливает последние изменения из удалённого репозитория в текущую ветку песочного репозитория. Изменяет рабочую директорию и может вызвать конфликты слияния, если локальные изменения пересекаются с удалёнными. Требует предварительно клонированный репозиторий (сначала используйте sandbox_git_clone). В отличие от sandbox_git_clone (первоначальная загрузка) или sandbox_git_push (отправка изменений), этот инструмент обновляет существующий локальный репозиторий удалёнными изменениями. Возвращает удалённый репозиторий и ветку, которые были стянуты. Завершается ошибкой, если путь не является git-репозиторием или удалённый репозиторий недоступен.

Параметры
  • branchstring

    Ветка для извлечения. По умолчанию используется текущая ветка. Используйте sandbox_git_branch с действием "list", чтобы увидеть доступные ветки.

  • remotestring

    Имя удаленного репозитория, из которого выполняется извлечение. По умолчанию — "origin". Для проверки доступных удаленных репозиториев используется sandbox_git_branch.

  • repoPathstringобязательный

    Абсолютный путь к существующему git-репозиторию в песочнице (например, "/home/user/repo"). Репозиторий должен быть предварительно инициализирован с помощью sandbox_git_clone или sandbox_git_init.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей репозиторий.

sandbox_git_push

Отправляет локальные коммиты в удаленный репозиторий. Это деструктивная внешняя операция — коммиты становятся видимыми для других и их нельзя легко отменить. Требует, чтобы GITHUB_TOKEN был настроен при запуске сервера; немедленно завершается с четкой ошибкой, если токен не задан. Сначала используйте sandbox_git_commit для создания локальных коммитов, затем отправляйте. Для новых веток установите setUpstream в true. В отличие от sandbox_git_pull (который загружает удаленные изменения) или sandbox_git_commit (который только создает локальные коммиты), эта операция загружает коммиты на удаленный сервер. Завершается ошибкой, если нет коммитов для отправки или удаленный репозиторий недоступен.

Параметры
  • branchstring

    Имя ветки для отправки. По умолчанию используется текущая выбранная ветка. Должна совпадать с локальной веткой, содержащей коммиты.

  • remotestring

    Отправляйте изменения в удалённый репозиторий с указанным именем. По умолчанию используется «origin». В большинстве репозиториев есть только один удалённый репозиторий.

  • repoPathstringобязательный

    Абсолютный путь к git-репозиторию (например, "/home/user/repo"). Должен содержать хотя бы один коммит для отправки.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей репозиторий.

  • setUpstreamboolean

    Устанавливает ссылку отслеживания вышестоящей ветки. Установите значение true при первой отправке только что созданной ветки (эквивалентно "git push -u"). Не требуется для веток, которые уже отслеживают удалённую ветку.

sandbox_git_status

Получает текущий статус git репозитория в песочнице (только чтение, без побочных эффектов). Возвращает имя текущей ветки, список изменённых файлов, файлов в индексе и неотслеживаемых файлов. Используйте этот инструмент перед sandbox_git_commit, чтобы увидеть, что будет закоммичено, или после sandbox_file_write, чтобы проверить, что изменения обнаружены. В отличие от sandbox_git_branch (который управляет ветками) или sandbox_git_commit (который создаёт коммиты), этот инструмент только просматривает текущее состояние. Завершается ошибкой, если путь не является git-репозиторием.

Параметры
  • repoPathstringобязательный

    Абсолютный путь к git-репозиторию в песочнице (например, "/home/user/repo"). Должен быть каталогом, инициализированным с помощью sandbox_git_clone или sandbox_git_init.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей репозиторий.

sandbox_info

Получает подробные метаданные о конкретной песочнице (только чтение, без побочных эффектов). Возвращает ID песочницы, ID шаблона, временную метку создания и любые пользовательские метки метаданных. Используйте этот инструмент для просмотра одной песочницы по ID. В отличие от sandbox_list (который возвращает сводку всех активных песочниц), этот инструмент предоставляет полные детали для одной песочницы. Завершается ошибкой, если ID песочницы не найден в реестре активных.

Параметры
  • sandboxIdstringобязательный

    Идентификатор песочницы для проверки. Должен быть активной песочницей, возварщенной sandbox_create или sandbox_list. Сначала используйте sandbox_list, если вы не знаете идентфикатор.

sandbox_keep_alive

Продлевает тайм-аут автоматического завершения активной песочницы, чтобы предотвратить автоматическое завершение (без других побочных эффектов). Новый тайм-аут начинается с текущего момента, а не с момента создания. Используйте это, когда песочница скоро истечёт, но она всё ещё нужна. Для бессрочного продления используйте sandbox_pause. Завершается ошибкой, если идентификатор песочницы не найден. Возвращает подтверждение с новой длительностью тайм-аута.

Параметры
  • sandboxIdstringобязательный

    Идентификатор песочницы, которую нужно расширить. Это должна быть активная (не приостановленная и не завершённая) песочница.

  • timeoutMsnumberобязательный

    Новый таймаут в миллисекундах от текущего момента (например, 300000 для 5 минут, 3600000 для 1 часа). Песочница автоматически завершится по истечении этого времени, если она не будет продлена снова.

sandbox_kill

Навсегда завершает и уничтожает песочницу, включая все файлы, процессы и состояние. Это необратимо: все данные в песочнице теряются. Вместо этого используйте sandbox_pause, если хотите сохранить состояние для последующего использования. Чтобы сохранить файлы перед уничтожением, сначала используйте sandbox_download_url или sandbox_file_read. Вызов завершается ошибкой, если идентификатор песочницы не найден. После уничтожения sandboxId становится недействительным для любых операций.

Параметры
  • sandboxIdstringобязательный

    Идентификатор песочницы, которую нужно завершить. Должен указывать на активную песочницу, созданную через sandbox_create или перечисленную в sandbox_list.

sandbox_list

Перечисляет все активные песочницы E2B, управляемые этим сервером (только чтение, без побочных эффектов). Возвращает массив сводок по песочницам, включая sandboxId, templateId, время создания и метаданные для каждой. Возвращает пустое сообщение, если песочниц не существует. Используйте это, чтобы найти ID песочниц, если вы потеряли их из виду. В отличие от sandbox_info (которая возвращает полные сведения для одной песочницы), этот инструмент возвращает сводку по всем песочницам. Не включает приостановленные песочницы: их нужно возобновить с помощью sandbox_resume, используя их исходный sandboxId.

Параметры

Без параметров.

sandbox_pause

Приостанавливает активную песочницу, чтобы сохранить её полное состояние (файловую систему, установленные пакеты, конфигурацию) для последующего возобновления. Песочница удаляется из активного реестра, и отсчёт её тайм-аута останавливается. Возобновите её позже с помощью sandbox_resume, используя тот же sandboxId — даже в разных сессиях. В отличие от sandbox_kill (которая всё уничтожает), pause сохраняет состояние. Работающие процессы могут не пережить приостановку/возобновление. Используйте это для длительных сессий разработки, когда хотите продолжить позже. Завершается ошибкой, если идентификатор песочницы не найден.

Параметры
  • sandboxIdstringобязательный

    Идентификатор песочницы для приостановки. Песочница должна быть активной. Сохраните возвращённый sandboxId, чтобы позже возобновить её с помощью sandbox_resume.

sandbox_process_kill

Завершает запущенный процесс в песочнице по его PID. Процесс останавливается немедленно и не подлежит возобновлению. Сначала используйте sandbox_process_list, чтобы найти PID нужного процесса. Обычное применение: остановка dev-сервера, запущенного с помощью sandbox_exec_background, перед запуском нового на том же порту. Возвращает успех, если процесс найден и завершен, или ошибку, если PID не существует. В отличие от sandbox_kill (который уничтожает всю песочницу), этот инструмент останавливает только один процесс.

Параметры
  • pidnumberобязательный

    Идентификатор процесса для завершения. Сначала получите PIDs, вызвав sandbox_process_list. Использование неверного PID возвращает ошибку.

  • sandboxIdstringобязательный

    Идентификатор песочницы, содержащей процесс. Песочница должна быть активной.

sandbox_process_list

Выводит список всех запущенных процессов в песочнице (только для чтения, без побочных эффектов). Возвращает PID, имя команды, аргументы и тег для каждого процесса. Используйте этот инструмент, чтобы найти PID фонового процесса, запущенного с помощью sandbox_exec_background, чтобы затем завершить его через sandbox_process_kill, или чтобы проверить, что процесс ещё работает. Возвращает пустое сообщение, если нет активных процессов. В отличие от sandbox_exec (который запускает новую команду), этот инструмент проверяет то, что уже выполняется.

Параметры
  • sandboxIdstringобязательный

    ID песочницы для проверки. Должна быть активной песочницей.

sandbox_resume

Возобновляет ранее приостановленную песочницу, восстанавливая её файловую систему и состояние. Песочница снова становится активной с новым таймаутом и повторно добавляется в активный реестр. Если настроен GITHUB_TOKEN, аутентификация git автоматически восстанавливается. Работает только с песочницами, приостановленными через sandbox_pause — не с убитыми или истёкшими. После возобновления используйте все остальные инструменты sandbox_* как обычно. Завершается ошибкой, если sandboxId не соответствует приостановленной песочнице.

Параметры
  • sandboxIdstringобязательный

    Идентификатор песочницы, которую нужно возобновить. Это тот же идентификатор, который возвращают sandbox_create и sandbox_pause.

  • timeoutMsnumber

    Новый тайм-аут автоматического истечения в миллисекундах после возобновления. По умолчанию: 300000 (5 минут). Используйте sandbox_keep_alive, чтобы продлить его позже, если нужно.

sandbox_upload_url

Генерирует временную предварительно подписанную ссылку для загрузки файла в sandbox (только для чтения, без побочных эффектов в sandbox, пока ссылка не будет использована). Возвращаемая ссылка принимает POST-запрос с файлом в формате multipart/form-data. Ссылка истекает через короткий промежуток времени. Используйте её для передачи локальных файлов в sandbox; для прямой записи текстового содержимого используйте sandbox_file_write. В отличие от sandbox_download_url (которая получает файлы из sandbox), эта ссылка загружает файлы в него.

Параметры
  • pathstring

    Путь к целевой директории внутри песочницы, куда будет помещён загруженный файл. По умолчанию "/home/user". Директория должна существовать: сначала создайте её с помощью sandbox_file_mkdir, если нужно.

  • sandboxIdstringобязательный

    Идентификатор песочницы, в которую нужно загрузить файл.

1.0.1основная
1.0.0

Выберите клиент, чтобы установить asif-nvc/e2b-sandbox-mcp:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "asif-nvc-e2b-sandbox-mcp-f6ufjemy5x": {
      "command": "npx",
      "args": [
        "-y",
        "e2b-sandbox-mcp"
      ],
      "env": {
        "E2B_API_KEY": "your-e2b-api-key",
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "asif-nvc-e2b-sandbox-mcp-f6ufjemy5x": {
      "command": "npx",
      "args": [
        "-y",
        "e2b-sandbox-mcp"
      ],
      "env": {
        "E2B_API_KEY": "your-e2b-api-key",
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "asif-nvc-e2b-sandbox-mcp-f6ufjemy5x": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "e2b-sandbox-mcp"
      ],
      "env": {
        "E2B_API_KEY": "your-e2b-api-key",
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"asif-nvc-e2b-sandbox-mcp-f6ufjemy5x\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"e2b-sandbox-mcp\"],\"env\":{\"E2B_API_KEY\":\"your-e2b-api-key\",\"GITHUB_TOKEN\":\"your-github-token\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "asif-nvc-e2b-sandbox-mcp-f6ufjemy5x": {
      "command": "npx",
      "args": [
        "-y",
        "e2b-sandbox-mcp"
      ],
      "env": {
        "E2B_API_KEY": "your-e2b-api-key",
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add asif-nvc-e2b-sandbox-mcp-f6ufjemy5x --env E2B_API_KEY=your-e2b-api-key --env GITHUB_TOKEN=your-github-token -- npx -y e2b-sandbox-mcp

Либо через JSON-конфиг:

claude mcp add-json asif-nvc-e2b-sandbox-mcp-f6ufjemy5x "{\"command\":\"npx\",\"args\":[\"-y\",\"e2b-sandbox-mcp\"],\"env\":{\"E2B_API_KEY\":\"your-e2b-api-key\",\"GITHUB_TOKEN\":\"your-github-token\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add asif-nvc-e2b-sandbox-mcp-f6ufjemy5x --env E2B_API_KEY=your-e2b-api-key --env GITHUB_TOKEN=your-github-token -- npx -y e2b-sandbox-mcp

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.asif-nvc-e2b-sandbox-mcp-f6ufjemy5x]
command = "npx"
args = ["-y", "e2b-sandbox-mcp"]

[mcp_servers.asif-nvc-e2b-sandbox-mcp-f6ufjemy5x.env]
E2B_API_KEY = "your-e2b-api-key"
GITHUB_TOKEN = "your-github-token"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите asif-nvc/e2b-sandbox-mcp, а в поле команды запуска — строку ниже:
npx -y e2b-sandbox-mcp

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "asif-nvc-e2b-sandbox-mcp-f6ufjemy5x": {
      "command": "npx",
      "args": [
        "-y",
        "e2b-sandbox-mcp"
      ],
      "env": {
        "E2B_API_KEY": "your-e2b-api-key",
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "asif-nvc-e2b-sandbox-mcp-f6ufjemy5x": {
      "command": "npx",
      "args": [
        "-y",
        "e2b-sandbox-mcp"
      ],
      "env": {
        "E2B_API_KEY": "your-e2b-api-key",
        "GITHUB_TOKEN": "your-github-token"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например asif-nvc-e2b-sandbox-mcp-f6ufjemy5x.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: asif-nvc-e2b-sandbox-mcp-f6ufjemy5x
    command: npx
    args:
      - "-y"
      - "e2b-sandbox-mcp"
    env:
      E2B_API_KEY: your-e2b-api-key
      GITHUB_TOKEN: your-github-token
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "asif-nvc-e2b-sandbox-mcp-f6ufjemy5x": {
      "command": "npx",
      "args": [
        "-y",
        "e2b-sandbox-mcp"
      ],
      "env": {
        "E2B_API_KEY": "your-e2b-api-key",
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}

Похожие MCP-сервера

maxim-saplin/mcp_safe_local_python_executor

maxim-saplin/mcp_safe_local_python_executor

от maxim-saplin

MCP сервер для безопасного локального выполнения Python кода от LLM. Основан на LocalPythonExecutor от Hugging Face, не требует Docker, ограничивает импорты и файловые операции. Запускается через uv - замена Code Interpreter для Claude Desktop и MCP клиентов.

Python⭐ 48
Tiberriver256/mcp-server-azure-devops

Tiberriver256/mcp-server-azure-devops

от tiberriver256

MCP-сервер для интеграции AI-ассистентов с Azure DevOps. Позволяет управлять проектами, work items, репозиториями и пайплайнами через естественный язык. Поддерживает облачные и on-prem версии, ауте...

TypeScript⭐ 395
mrostamii/rancher-mcp-server

mrostamii/rancher-mcp-server

от mrostamii

MCP-сервер для управления Rancher, Harvester HCI и Fleet GitOps через единый API. Работает с мультикластерным Kubernetes, виртуальными машинами, Helm-релизами и GitOps-репозиториями. По умолчанию т...

Go⭐ 12
jjsantos01/jupyter-notebook-mcp

jjsantos01/jupyter-notebook-mcp

от jjsantos01

JupyterMCP - MCP-сервер, подключающий Claude AI к Jupyter Notebook (только v6.x). Claude выполняет Python-код, управляет ячейками, анализирует данные и строит графики. Полезен для AI-ассистированно...

Jupyter Notebook⭐ 128
alfonsograziano/node-code-sandbox-mcp

alfonsograziano/node-code-sandbox-mcp

от alfonsograziano

Выполняет Node.js-код в изолированном Docker-контейнере: ставит npm-пакеты, запускает shell-команды и возвращает вывод.

TypeScript⭐ 158
alvii147/piston-mcp

alvii147/piston-mcp

от alvii147

Piston MCP Server - MCP-сервер для подключения LLM к Piston API для выполнения кода. Он даёт ИИ-ассистентам безопасно запускать скрипты на разных языках в песочнице. Полезен разработчикам ИИ-агенто...

Python⭐ 9
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин