Information
JavaScript MCP 服务器 (js-mcp)
一个模型上下文协议(MCP)服务器,允许AI助手在具有状态的REPL会话中执行JavaScript代码。
功能
核心功能
一次性JavaScript执行:直接在Node.js中执行JavaScript代码
有状态的REPL会话:在多次执行之间保持变量和上下文
文件系统操作:读取、写入和操作文件
包管理:导入模块并管理npm包
高级功能
安全的沙箱执行
异步代码支持
带格式化堆栈跟踪的错误处理
自动清理的会话管理
安装
bash
克隆仓库
git clone https://github.com/yourusername/js-mcp.git
cd js-mcp
安装依赖
npm install
构建项目
npm run build
使用
使用stdio传输运行(用于Claude Desktop)
bash
npm start
或者
node dist/index.js --stdio
使用HTTP传输运行
bash
node dist/index.js --http
默认端口是3000,或者通过PORT环境变量指定
PORT=3456 node dist/index.js --http
可用工具
JavaScript 执行
execute_javascript:在基本沙箱中运行JavaScript代码
execute_javascript_with_modules:带有模块导入的JavaScript代码运行
execute_javascript_async:运行异步JavaScript代码
REPL 会话
repl_create_session:创建一个新的REPL会话
repl_execute:在REPL会话中执行代码
repl_get_context:获取会话中的变量值
repl_delete_session:删除会话
repl_list_sessions:列出所有活动会话
文件操作
file_read:读取文件内容
file_write:将内容写入文件
file_list:列出目录中的文件
file_delete:删除文件或目录
file_exists:检查文件是否存在
包管理
package_check:检查模块是否可用
package_install:安装npm包
package_list:列出已安装的包
安全性
服务器使用带安全特性的直接JavaScript执行:
代码执行的超时限制
文件系统访问限制在工作目录内
路径验证以防止危险操作
配置
通过设置环境变量来配置服务器:
PORT:HTTP服务器端口(默认:3000)
WORKING_DIRECTORY:文件操作的基本目录(默认:当前目录)
SESSION_TIMEOUT:REPL会话超时时间(分钟,默认:30)
开发
bash
启动开发模式
npm run dev
运行测试
npm test
代码检查
npm run lint
代码格式化
npm run format
许可证
MIT