MCP QuickJS Runner
Ejecutor QuickJS de MCP
Un servidor que implementa el Protocolo de Contexto de Modelo (MCP) que proporciona una herramienta para ejecutar de forma segura código JavaScript arbitrario dentro de un motor QuickJS compilado en WebAssembly (WASM) y ejecutado utilizando la implementación WASI incorporada de Node.js.
Descripción
Este servidor actúa como proveedor de herramientas MCP. Expone una única herramienta, run_javascript_code , que recibe una cadena de código JavaScript como entrada. El código se ejecuta dentro de un entorno WASM QuickJS aislado. El servidor captura los flujos de salida estándar ( stdout ) y error estándar ( stderr ) de la ejecución y los devuelve, junto con cualquier error de ejecución, al cliente MCP.
Esto permite que los modelos de lenguaje u otros clientes MCP ejecuten de forma segura fragmentos de código JavaScript potencialmente no confiables sin comprometer el sistema host.
Related MCP server: Node Code Sandbox MCP
Características
Ejecución segura: ejecuta JavaScript en un entorno sandbox de WASM utilizando QuickJS y Node.js WASI.
Captura de E/S estándar: captura
stdoutystderrdel código JavaScript ejecutado.Informe de errores: informa errores de tiempo de ejecución de QuickJS y códigos de salida distintos de cero.
Integración MCP: expone la funcionalidad como una herramienta MCP estándar sobre
stdio.Desarrollado con TypeScript: proporciona seguridad de tipos durante el desarrollo.
Cómo funciona
Módulo WASM: utiliza un motor QuickJS precompilado (
qjs-wasi.wasm) orientado a la interfaz del sistema WebAssembly (WASI).Node.js WASI: aprovecha el módulo
node:wasien Node.js para instanciar y ejecutar el módulo WASM.Redirección de Stdio (archivos temporales): para capturar
stdoutystderrdel entorno WASM, el servidor actualmente se basa en el enfoque estándar compatible connode:wasi:Se crea un directorio temporal en el sistema de archivos del host utilizando
node:fs/promisesynode:os.Los archivos temporales para
stdoutystderrse abren dentro de este directorio.Los descriptores de archivos del sistema operativo reales para estos archivos se pasan a la instancia
WASIdurante la inicialización (stdout: fd,stderr: fd).El módulo WASM de QuickJS escribe su salida en estos descriptores, que son enrutados por WASI a los archivos temporales.
Una vez finalizada la ejecución, el servidor cierra los controladores de archivos y lee el contenido de los archivos temporales.
Se limpian el directorio y los archivos temporales.
(Nota: los intentos de utilizar tuberías en memoria o sistemas de archivos virtuales como
memfsno tuvieron éxito porquenode:wasiactualmente requiere descriptores de archivos del sistema operativo reales para stdio).
Comunicación MCP: el servidor utiliza
@modelcontextprotocol/sdkpara escuchar las solicitudes MCP a través destdioy responder con los resultados de la ejecución formateados de acuerdo con el protocolo.
Prerrequisitos
Node.js (se recomienda v23.x o posterior, verifique la compatibilidad
node:wasipara su versión específica)El archivo WASM de QuickJS (
qjs-wasi.wasm) debe estar en el mismo directorio que el script de servidor compilado (p. ej.,./dist/qjs-wasi.wasmen relación con./dist/server.js). Es posible que deba obtenerlo o compilarlo por separado.
Instalación
Clonar el repositorio (si corresponde).
Instalar dependencias:
npm install
Uso
node server.tsThis 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 Servers
- FlicenseBqualityDmaintenanceProvides a secure, isolated JavaScript execution environment with configurable time and memory limits for safely running code from Claude.1255
- FlicenseAqualityBmaintenanceA secure Node.js execution environment that allows coding agents and LLMs to run JavaScript dynamically, install NPM packages, and retrieve results while adhering to the Model Control Protocol.71344
- AlicenseNot gradedqualityDmaintenanceEnables LLMs to interact with MCP servers by writing TypeScript/JavaScript code instead of direct tool calls. Provides a code execution sandbox that accesses MCP servers through HTTP proxy endpoints.9123Apache 2.0
- FlicenseNot gradedqualityDmaintenanceExecutes TypeScript code in a secure sandbox with IPC-bridged access to MCP tools like filesystem operations and network requests.3
Related MCP Connectors
Execute code in 8 languages (Python, JS, TS, Go, Java, C++, C, Bash) in gVisor sandboxes.
Host static HTML pages, generate PDFs, screenshots, scrape JS sites, run sandboxed JavaScript.
A paid remote MCP for OpenAI Codex context compressor, built to return verdicts, receipts, usage log
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/jlucaso1/mcp-javascript-sandbox'
If you have feedback or need assistance with the MCP directory API, please join our Discord server