Token导航 LogoToken导航TokenDH.com
MCP QuickJS Runner logo
AI代理未说明官方级别未说明来源级核验

MCP QuickJS Runner

MCP Server

一个基于QuickJS和WASM的服务器,用于安全执行JavaScript代码,捕获标准输出和错误,并与MCP协议集成。

工具数

1

提示词数

0

GitHub Stars

4

资源数

0
JavaScriptTypeScriptAI代理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

jlucaso1

提供方

jlucaso1

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCP QuickJS运行程序

实现模型上下文协议(MCP)的服务器,它提供了一种工具,可以在编译为WebAssembly(WASM)的QuickJS引擎中安全地执行任意JavaScript代码,并使用Node.js的内置WASI实现运行。

描述

此服务器充当MCP工具提供者。它只暴露了一个工具, run_javascript_code,它接收一串JavaScript代码作为输入。然后,代码在沙盒QuickJS WASM环境中执行。服务器捕获标准输出(stdout)标准误差(stderr)从执行中提取流,并将其与任何执行错误一起返回给MCP客户端。

这允许语言模型或其他MCP客户端在不损害主机系统的情况下安全地执行可能不受信任的JavaScript代码片段。

特性

  • 安全执行: 使用QuickJS和Node.js WASI在WASM沙箱中运行JavaScript。
  • 标准I/O捕获: 捕获 stdoutstderr 从执行的JavaScript代码中。
  • 错误报告: 报告QuickJS的运行时错误和非零退出代码。
  • MCP集成: 将功能作为标准MCP工具公开 stdio.
  • 使用TypeScript构建: 在开发过程中提供类型安全。

原理

  1. WASM模块: 使用预编译的QuickJS引擎(qjs-wasi.wasm)针对WebAssembly系统接口(WASI)。
  2. Node.js WASI: 利用 node:wasi Node.js中的模块,用于实例化和运行WASM模块。
  3. STDIO重定向(临时文件): 捕获 stdoutstderr 从WASM环境来看,服务器目前依赖于与兼容的标准方法 node:wasi:

- 使用以下命令在主机文件系统上创建临时目录 node:fs/promisesnode:os. - 临时文件 stdoutstderr 在此目录中打开。 - 这 真实操作系统文件描述符 因为这些文件被传递给 WASI 初始化过程中的实例(stdout: fd, stderr: fd). - QuickJS WASM模块将其输出写入这些描述符,这些描述符由WASI路由到临时文件。 - 执行完成后,服务器关闭文件句柄并读取临时文件的内容。 - 临时目录和文件已被清理。 - *(注意:尝试使用内存管道或虚拟文件系统,如 memfs 失败的原因是 node:wasi 目前,stdio需要真实的操作系统文件描述符。)*

  1. MCP通信: 服务器使用 @modelcontextprotocol/sdk 通过以下方式监听MCP请求 stdio 并用根据协议格式化的执行结果进行响应。

先决条件

  • (建议使用v23.x或更高版本,请检查 node:wasi 与您的特定版本兼容)
  • 纱线
  • QuickJS WASM文件(qjs-wasi.wasm)必须与编译的服务器脚本位于同一目录中(例如。, ./dist/qjs-wasi.wasm 相对于 ./dist/server.js).您可能需要单独获取或编译此文件。

安装

  1. 克隆存储库(如果适用)。
  2. 安装依赖项:
   npm install

用法

node server.ts

目录标签

目录标签

JavaScriptTypeScriptAI代理JavaScript执行本地部署WASM安全沙箱MCP协议Node.js

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明nonelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP