
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Node.js Sandbox MCP Server 是一个基于 Node.js 的模型上下文协议(Model Context Protocol,MCP)服务器,通过启动临时 Docker 容器来安全执行任意 JavaScript 代码。
什么是 MCP 服务器?
| 属性 | 详情 |
|---|---|
| Docker 镜像 | https://hub.docker.com/repository/docker/mcp/node-code-sandbox |
| 作者 | https://github.com/alfonsograziano |
| 代码仓库 | https://github.com/alfonsograziano/node-code-sandbox-mcp |
| Dockerfile | https://github.com/alfonsograziano/node-code-sandbox-mcp/blob/master/Dockerfile |
| 镜像构建方 | Docker Inc. |
| Docker Scout 健康评分 | !Docker Scout Health Score |
| 签名验证命令 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/node-code-sandbox --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub |
| 许可证 | 未提供 |
| 工具名称 | 简要描述 |
|---|---|
get_dependency_types | 获取 npm 包的 TypeScript 类型定义(自带或 @types/ 包)及原始 .d.ts 文本 |
run_js | 在运行中的沙箱容器内安装 npm 依赖并执行 JavaScript 代码 |
run_js_ephemeral | 在临时容器中执行 JavaScript 代码,支持可选依赖,执行后自动清理容器 |
sandbox_exec | 在运行中的沙箱容器内执行一个或多个 shell 命令 |
sandbox_initialize | 启动新的隔离 Docker 容器(运行 Node.js),用于多命令/脚本的沙箱会话 |
sandbox_stop | 终止并移除运行中的沙箱容器 |
search_npm_packages | 按关键词搜索 npm 包,返回名称、描述及 README 片段 |
get_dependency_types描述:给定 npm 包名数组(可选包含版本),获取每个包是否自带 TypeScript 定义或有对应的 @types/… 包,并返回原始 .d.ts 文本。
适用场景:执行未知依赖的 Node.js 脚本前,检查依赖的 API 和类型定义。
| 参数 | 类型 | 描述 |
|---|---|---|
dependencies | array | npm 包名数组(可选包含版本信息) |
run_js描述:在运行中的沙箱容器内安装 npm 依赖并执行 JavaScript 代码。执行后需手动停止沙箱以释放资源。代码必须为 valid ES 模块(使用 import/export 语法)。适用于需跨多次执行复用环境的复杂工作流。
注意:Node.js 进程读写文件时,需使用 "./files" 目录以确保挂载卷上的持久化。
| 参数 | 类型 | 描述 |
|---|---|---|
code | string | 容器内执行的 JavaScript 代码 |
container_id | string | Docker 容器标识符 |
dependencies | array | 可选,npm 依赖列表(每个项包含 name 和 version) |
listenOnPort | number | 可选,若设置,保持进程运行并暴露端口到主机 |
run_js_ephemeral描述:在临时容器中执行 JavaScript 代码,支持可选 npm 依赖,执行后自动清理容器。代码必须为 valid ES 模块。适用于简单的一次性执行,无需手动管理沙箱或清理。
注意:文件读写需使用 "./files" 目录以确保持久化(含图片、文本、JSON 等文件)。
| 参数 | 类型 | 描述 |
|---|---|---|
code | string | 临时容器内执行的 JavaScript 代码 |
dependencies | array | 可选,npm 依赖列表(每个项包含 name 和 version) |
image | string | 可选,临时执行使用的 Docker 镜像,支持: - node:lts-slim:轻量 Node.js LTS 版本- mcr.microsoft.com/playwright:v1.55.0-noble:Playwright 浏览器自动化镜像- alfonsograziano/node-chartjs-canvas:latest:Chart.js 和 Mermaid 图表生成镜像(示例:js<br>import fs from "fs";<br>import { run } from "@mermaid-js/mermaid-cli";<br>fs.writeFileSync("./files/diagram.mmd", "graph LR; A-->B;", "utf8");<br>await run("./files/diagram.mmd", "./files/diagram.svg");<br>) |
sandbox_exec描述:在运行中的沙箱容器内执行一个或多个 shell 命令。需事先初始化沙箱。
| 参数 | 类型 | 描述 |
|---|---|---|
commands | array | 待执行的 shell 命令数组 |
container_id | string | Docker 容器标识符 |
sandbox_initialize描述:启动新的隔离 Docker 容器(运行 Node.js),用于设置支持多命令/脚本的沙箱会话。
| 参数 | 类型 | 描述 |
|---|---|---|
image | string | 可选,使用的 Docker 镜像 |
port | number | 可选,将容器端口映射到主机 |
sandbox_stop描述:终止并移除运行中的沙箱容器。在使用 sandbox_initialize 初始化的沙箱完成工作后调用。
| 参数 | 类型 | 描述 |
|---|---|---|
container_id | string | Docker 容器标识符 |
search_npm_packages描述:按关键词搜索 npm 包,返回名称、描述及 README 片段。
| 参数 | 类型 | 描述 |
|---|---|---|
searchTerm | string | 搜索关键词,可使用加号(+)组合相关术语(如 "react+components");作者/范围筛选建议使用 qualifiers 参数 |
qualifiers | object | 可选,筛选条件,如 { not: "insecure" }(排除不安全包)、{ author: "sindresorhus" }(指定作者)、{ scope: "@vue" }(指定范围) |
在 MCP 配置中添加以下内容以使用此服务器:
json{ "mcpServers": { "node-code-sandbox": { "command": "docker", "args": [ "run", "-i", "--rm", "mcp/node-code-sandbox" ] } } }
Docker 官方博客:模型上下文协议(MCP)—— 简化使用 Anthropic Claude Desktop 和 Docker 构建 AI 应用
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务