BSD Zero Clause License
1

Integrations

  • Provides a V8 JavaScript runtime environment for executing arbitrary JavaScript code, with persistent state management through heap snapshots

mcp-v8: V8 JavaScript MCP-сервер

Сервер Model Context Protocol (MCP) на основе Rust, который предоставляет среду выполнения JavaScript V8 в качестве инструмента для агентов ИИ, таких как Claude и Cursor. Поддерживает постоянные снимки кучи через S3 или локальную файловую систему и готов к интеграции с современными средами разработки ИИ.

Функции

  • Выполнение JavaScript V8 : запуск произвольного кода JavaScript в безопасном, изолированном движке V8.
  • Снимки кучи : сохранение и восстановление состояния кучи V8 между запусками, поддержка как S3, так и локального файлового хранилища.
  • Протокол MCP : реализует протокол контекста модели для бесшовной интеграции инструментов с Claude, Cursor и другими клиентами MCP.
  • Настраиваемое хранилище : выберите S3 или локальный каталог для хранения кучи во время выполнения.

Установка

Установите mcp-v8 с помощью предоставленного скрипта установки:

curl -fsSL https://raw.githubusercontent.com/r33drichards/mcp-js/main/install.sh | sudo bash

Это автоматически загрузит и установит последнюю версию для вашей платформы в /usr/local/bin/mcp-v8 (вам может быть предложено ввести пароль).


Опытные пользователи: Если вы предпочитаете собирать из исходного кода, см. раздел « Сборка из исходного кода» в конце этого документа.

Аргументы командной строки

mcp-v8 поддерживает следующие аргументы командной строки:

  • --s3-bucket <bucket> : использовать AWS S3 для снимков кучи. Укажите имя контейнера S3. (Конфликтует с --directory-path )
  • --directory-path <path> : Использовать локальный каталог для снимков кучи. Указать путь к каталогу. (Конфликтует с --s3-bucket )

Примечание: необходимо указать либо --s3-bucket , либо --directory-path . Если ни один из них не указан, сервер по умолчанию использует S3 с именем контейнера test-mcp-js-bucket .

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

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

# Use S3 for heap storage (recommended for cloud/persistent use) mcp-v8 --s3-bucket my-bucket-name # Use local filesystem directory for heap storage (recommended for local development) mcp-v8 --directory-path /tmp/mcp-v8-heaps

Интеграция

Клод для рабочего стола

  1. Установите сервер, как указано выше.
  2. Откройте Claude Desktop → Настройки → Разработчик → Изменить конфигурацию.
  3. Добавьте свой сервер в claude_desktop_config.json :
{ "mcpServers": { "js": { "command": "/usr/local/bin/mcp-v8 --s3-bucket my-bucket-name" } } }
  1. Перезапустите Claude Desktop. Новые инструменты появятся под значком молотка.

Курсор

  1. Установите сервер, как указано выше.
  2. Создайте или отредактируйте .cursor/mcp.json в корневом каталоге вашего проекта:
{ "mcpServers": { "js": { "command": "/usr/local/bin/mcp-v8 --directory-path /tmp/mcp-v8-heaps" } } }
  1. Перезапустить курсор. Инструменты MCP будут доступны в пользовательском интерфейсе.

Пример использования

  • Спросите Клода или Курсора: «Запустите этот JavaScript: 1 + 2 »
  • Используйте снимки кучи для сохранения состояния между запусками.

Параметры кучного хранения

Вы можете настроить хранилище кучи, используя следующие аргументы командной строки:

  • S3 : --s3-bucket <bucket>
    • Пример: mcp-v8 --s3-bucket my-bucket-name
    • Требуются учетные данные AWS в вашей среде.
  • Файловая система : --directory-path <path>
    • Пример: mcp-v8 --directory-path /tmp/mcp-v8-heaps

Примечание: Одновременно можно использовать только один бэкэнд хранилища. Если предоставлены оба, сервер вернет ошибку.

Ограничения

Хотя mcp-v8 обеспечивает мощную и постоянную среду выполнения JavaScript, существуют ограничения по времени ее выполнения.

  • Нет async / await или Promises : асинхронный JavaScript не поддерживается. Весь код должен быть синхронным.
  • Нет доступа к сети или fetch данных : встроенного способа делать HTTP-запросы или получать доступ к сети нет.
  • Нет console.log или стандартного вывода : вывод из console.log или подобных функций не появится. Чтобы вернуть результаты, убедитесь, что нужное вам значение находится в последней строке вашего кода.
  • Нет доступа к файловой системе : среда выполнения не предоставляет доступ к локальной файловой системе или переменным среды.
  • Нет npm install или внешних пакетов : Вы не можете устанавливать или импортировать пакеты npm. Доступны только стандартные встроенные JavaScript (ECMAScript).
  • Нет таймеров : такие функции, как setTimeout и setInterval недоступны.
  • Нет DOM или API браузера : это не среда браузера; нет доступа к window , document или другим объектам, специфичным для браузера.

Сборка из исходного кода (продвинутая)

Если вы предпочитаете сборку из исходного кода вместо использования установочного скрипта:

Предпосылки

  • Rust (рекомендуется ежедневный набор инструментов)
  • (Необязательно) Учетные данные AWS для хранилища S3

Построить сервер

cd server cargo build --release

Собранный двоичный файл будет расположен в server/target/release/server . При желании вы можете использовать этот путь в шагах интеграции выше вместо /usr/local/bin/mcp-v8 .

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Using MCP to run code via e2b.
    Last updated -
    1
    171
    JavaScript
    Apache 2.0
    • Apple
  • A
    security
    A
    license
    A
    quality
    Allows LLMs to execute Python code in a specified Conda environment, enabling access to necessary libraries and dependencies for efficient code execution.
    Last updated -
    1
    74
    JavaScript
    MIT License
    • Linux
    • Apple

View all related MCP servers

ID: 9jw1rudo7j