y

yannbam

code-executionfile-systemsdeveloper-tools

299 查看 · 2026-07-07 更新

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

来源