Node.js Sandbox MCP Server

Integrations

  • Enables running arbitrary JavaScript code in isolated Docker containers with controlled CPU/memory limits. The server manages container lifecycle including creation, execution, and teardown.

  • Allows execution of arbitrary JavaScript snippets in isolated environments, capturing stdout and supporting both one-off and session-based execution models.

  • Provides tools for executing Node.js code in sandboxed environments, supporting ES modules and allowing stdout capture from executed scripts.

🐢🚀 Node.js 샌드박스 MCP 서버

npm 종속성을 즉석에서 설치하여 임시 Docker 컨테이너에서 임의의 JavaScript를 실행하기 위한 모델 컨텍스트 프로토콜(MCP)을 구현하는 Node.js 서버입니다.

특징

  • 격리된 Node.js 샌드박스 컨테이너를 시작하고 관리합니다.
  • 컨테이너 내부에서 임의의 셸 명령 실행
  • 작업별로 지정된 npm 종속성을 설치합니다.
  • ES 모듈 JavaScript 스니펫을 실행하고 stdout을 캡처합니다.
  • 용기를 깨끗이 분해하세요

참고: 컨테이너는 제어된 CPU/메모리 한도로 실행됩니다.

API

도구

run_js_ephemeral

새로운 일회용 용기에 일회용 JS 스크립트를 실행합니다.

입력:

  • image (문자열, 선택 사항): 사용할 Docker 이미지(기본값: node:20-slim ).
  • code (문자열, 필수): 실행할 JavaScript 소스.
  • dependencies ( { name, version } 배열, 선택 사항): 설치할 NPM 패키지 및 버전(기본값: [] ).

행동:

  1. 새로운 용기를 만듭니다.
  2. index.js 와 최소한의 package.json 작성합니다.
  3. 지정된 종속성을 설치합니다.
  4. 스크립트를 실행합니다.
  5. 컨테이너를 분해합니다(제거합니다).
  6. 캡처된 stdout을 반환합니다.
  7. 코드가 현재 디렉토리에 파일을 저장하는 경우 해당 파일은 자동으로 반환됩니다.
    • 이미지(예: PNG, JPEG)는 image 콘텐츠로 반환됩니다.
    • 다른 파일(예: .txt , .json )은 resource 콘텐츠로 반환됩니다.

팁: 파일을 다시 가져오려면 스크립트 실행 중에 파일을 저장하기만 하면 됩니다.

예시 호출:

지엑스피1

파일을 저장하는 예:

import fs from "fs/promises"; await fs.writeFile("hello.txt", "Hello world!"); console.log("Saved hello.txt");

콘솔 출력 hello.txt 파일이 반환됩니다.

샌드박스 초기화

새로운 샌드박스 컨테이너를 시작합니다.

  • 입력 :
    • image ( 문자열 , 선택 사항, 기본값: node:20-slim ): 샌드박스용 Docker 이미지
  • 출력 : 컨테이너 ID 문자열

샌드박스_실행

실행 중인 샌드박스 내에서 셸 명령을 실행합니다.

  • 입력 :
    • container_id ( 문자열 ): sandbox_initialize 의 ID
    • commands ( string[] ): 실행할 셸 명령 배열
  • 출력 : 각 명령의 결합된 stdout

_제이에스

npm 종속성을 설치하고 JavaScript 코드를 실행합니다.

  • 입력 :
    • container_id ( 문자열 ): sandbox_initialize 의 ID
    • code ( 문자열 ): 실행할 JS 소스(ES 모듈 지원)
    • dependencies ( { name, version } 배열 , 선택 사항, 기본값: [] ): npm 패키지 이름 → semver 버전
  • 행동 :
    1. 컨테이너 내부에 임시 작업 공간을 생성합니다.
    2. index.js 와 최소 package.json 작성합니다.
    3. npm install --omit=dev --ignore-scripts --no-audit --loglevel=error 실행합니다.
    4. node index.js 실행하고 stdout을 캡처합니다.
    5. 작업 공간을 정리합니다
  • 출력 : 스크립트 stdout

샌드박스_스톱

샌드박스 컨테이너를 종료하고 제거합니다.

  • 입력 :
    • container_id ( 문자열 ): sandbox_initialize 의 ID
  • 출력 : 확인 메시지

Claude Desktop과 함께 사용

claude_desktop_config.json 에 다음을 추가하세요:

{ "mcpServers": { "js-sandbox": { "command": "node", "args": ["dist/server.js", "stdio"], "cwd": "/path/to/js-sandbox-mcp" } } }

참고: 작업 디렉토리가 빌드된 서버를 가리키고 Docker가 설치/실행 중인지 확인하세요.

사용 팁

  • 세션 기반 도구 ( sandbox_initializerun_jssandbox_stop )는 다음과 같은 경우에 이상적입니다.
    • 오랫동안 보관할 수 있는 샌드박스 용기를 열어 두세요.
    • 동일한 환경에서 여러 명령이나 스크립트를 실행합니다.
    • 종속성을 점진적으로 설치하고 재사용합니다.
  • run_js_ephemeral 사용한 원샷 실행은 다음 과 같은 경우에 적합합니다.
    • 빠른 실험이나 간단한 스크립트.
    • 상태나 캐시 종속성을 유지할 필요가 없는 경우.
    • 수동 분해에 대한 걱정 없이 깔끔하고 원자적으로 실행됩니다.

귀하의 사용 사례에 가장 적합한 워크플로를 선택하세요!

도커

컨테이너에서 서버를 실행합니다(필요한 경우 Docker 소켓을 마운트합니다):

# Build and publish your image locally if needed # docker build -t alfonsograziano/node-code-sandbox-mcp . # Run with stdio transport docker run --rm -it \ -v /var/run/docker.sock:/var/run/docker.sock \ alfonsograziano/node-code-sandbox-mcp stdio

VS Code를 사용한 사용

빠른 설치 버튼(VS Code 및 Insiders):

js-sandbox-mcp(NPX) 설치 js-sandbox-mcp(Docker) 설치

수동 구성 : VS Code settings.json 또는 .vscode/mcp.json 에 추가합니다.

"mcp": { "servers": { "js-sandbox": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "/var/run/docker.sock:/var/run/docker.sock", "alfonsograziano/node-code-sandbox-mcp" ], } } }

Claude Desktop과 함께 사용

이 MCP 서버를 설치하려면 공식 가이드를 따르세요.

{ "mcpServers": { "js-sandbox": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "/var/run/docker.sock:/var/run/docker.sock", "alfonsograziano/node-code-sandbox-mcp" ] } } }

짓다

컴파일하고 번들링합니다.

npm install npm run build

특허

MIT 라이센스

본 소프트웨어 및 관련 문서 파일(이하 "소프트웨어")의 사본을 취득한 모든 사람에게 소프트웨어를 제한 없이 거래할 수 있는 권한을 무상으로 부여합니다. 여기에는 소프트웨어 사본을 사용, 복사, 수정, 병합, 게시, 배포, 하위 라이선스 및/또는 판매할 수 있는 권한이 포함되나 이에 국한되지 않으며, 소프트웨어가 제공된 사람에게도 이러한 권한을 부여합니다. 단, 다음 조건에 따라야 합니다.

위의 저작권 고지와 본 허가 고지는 소프트웨어의 모든 사본 또는 실질적인 부분에 포함되어야 합니다.

본 소프트웨어는 상품성, 특정 목적에의 적합성 및 비침해에 대한 보증을 포함하되 이에 국한되지 않는 명시적 또는 묵시적 보증 없이 "있는 그대로" 제공됩니다. 어떠한 경우에도 저작자 또는 저작권자는 본 소프트웨어 또는 본 소프트웨어의 사용 또는 기타 거래와 관련하여 발생하는 계약, 불법 행위 또는 기타 소송을 포함한 모든 청구, 손해 또는 기타 책임에 대해 책임을 지지 않습니다.

-
security - not tested
F
license - not found
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

즉석 npm 종속성 설치를 통해 격리된 Docker 컨테이너에서 임의의 JavaScript 코드를 실행할 수 있으며, 일시적인 원샷 실행과 영구적인 샌드박스 환경을 모두 지원합니다.

  1. Features
    1. API
      1. Tools
        1. run_js_ephemeral
        2. sandbox_initialize
        3. sandbox_exec
        4. run_js
        5. sandbox_stop
      2. Usage with Claude Desktop
        1. Usage Tips
          1. Docker
            1. Usage with VS Code
              1. Usage with Claude Desktop
                1. Build
                  1. License

                    Related MCP Servers

                    • -
                      security
                      F
                      license
                      -
                      quality
                      Provides isolated Docker environments for code execution, enabling users to create and manage containers, execute multi-language code, save and reproduce development environments, ensuring security and isolation.
                      Last updated -
                      6
                      Python
                      • Apple
                    • -
                      security
                      A
                      license
                      -
                      quality
                      An MCP server to create secure code sandbox environment for executing code within Docker containers.
                      Last updated -
                      69
                      Go
                      MIT License
                      • Linux
                      • Apple
                    • A
                      security
                      F
                      license
                      A
                      quality
                      Provides a secure, isolated JavaScript execution environment with configurable time and memory limits for safely running code from Claude.
                      Last updated -
                      1
                      5
                      JavaScript
                      • Apple
                    • A
                      security
                      F
                      license
                      A
                      quality
                      A secure JavaScript REPL server that enables executing code snippets in a sandboxed environment with memory protection, timeout handling, and comprehensive error reporting.
                      Last updated -
                      2
                      1,369
                      3
                      JavaScript
                      • Linux
                      • Apple

                    View all related MCP servers

                    ID: htroou6m7r