article
README
🚀 Deno 沙盒 MCP 服务器
Deno 沙盒 MCP 服务器是一个借助 Deno 运行时环境来运行和管理代码的平台。它通过配置权限对代码执行进行隔离,有效保障了代码运行的安全性。
🚀 快速开始
本项目使用 Deno 运行时环境运行和管理代码,通过配置权限隔离代码执行,确保安全性。以下是详细的操作步骤:
📦 安装指南
# 克隆仓库
git clone https://github.com/bewt85/mcp-deno-sandbox.git
cd mcp-deno-sandbox
# 安装依赖项
npm install
📚 详细文档
配置检查
npm run checks
代码修复
npm run fix
💻 使用示例
基础用法
使用 MCP 监视器测试:
npx @modelcontextprotocol/inspector ./node_modules/.bin/ts-node src/index.ts
示例用例
基本算术运算
console.log(1 + 2);
网络访问(需配置 --allow-net 权限)
fetch('https://icanhazip.com').then(response => response.text()).then(ip => console.log(`您的 IP 地址是: ${ip.trim()}`));
文件系统访问(需配置 --allow-read 权限)
const text = Deno.readTextFileSync('/path/to/file.txt');
console.log(text);
⚠️ 安全注意事项
⚠️ 重要提示
- 避免授予如 FFI 或执行权限,这些会削弱沙盒的安全性。
- 谨慎配置读写权限,特别是对敏感的
dotfiles(如包含凭证的文件)。- 若启用网络访问,请确保受信任的环境。
🐞 已知问题
Python 相关问题
- 文件写入问题:目前无法使用
open(PATH, 'w')写入文件。解决方案是使用import js; js.fs.writeFileSync(PATH, CONTENT)。 - 目录挂载问题:默认挂载家目录和
/tmp,如需其他目录,请明确指定。
🤝 贡献说明
由于时间有限,无法参与大部分功能请求或贡献。建议有意向的开发者自行 fork 仓库进行开发。
🚀 发版流程
- 更新
package.json中的版本号为 X.Y.Z。 - 提交更改。
- 在 GitHub 上创建标签 vX.Y.Z。
- 等待自动部署到 NPM。
📄 许可证
本项目采用 MIT 许可证。
微信扫一扫