
@modelcontextprotocol/server-terminal

2024.12.27
0
TypeScript终端服务npm操作开发工具开发效率
该服务是一个基于Model Context Protocol (MCP)的终端服务器实现,提供安全且受控的终端命令和npm操作访问。其主要功能包括执行shell命令、内置npm操作(如安装和运行脚本)、超时处理、通过允许的命令列表实现安全性、环境变量管理、工作目录控制以及TypeScript支持。适用于需要自动化执行终端命令和npm操作的开发场景。
View on GitHub
Overview
基本能力
产品定位
该服务是一个终端服务器实现,旨在为开发人员提供安全且受控的终端命令和npm操作访问。
核心功能
- 执行shell命令,具有完全控制能力
- 内置npm操作(安装、运行脚本)
- 超时处理
- 通过允许的命令列表实现安全性
- 环境变量管理
- 工作目录控制
- TypeScript支持
适用场景
- 需要自动化执行终端命令的开发环境
- 需要安全控制npm操作的场景
- 需要管理环境变量和工作目录的开发流程
工具列表
executeCommand
: 执行指定的shell命令install
: 安装npm包runScript
: 运行npm脚本dev
: 直接运行npm run dev
build
: 直接运行npm run build
常见问题解答
无明确常见问题解答部分。
使用教程
使用依赖
无明确前置依赖,但需要Node.js环境。
安装教程
npm install @modelcontextprotocol/server-terminal
调试方式
无明确调试步骤,但可以通过执行命令和检查返回结果进行调试。
配置
添加到MCP配置中:
{
"terminal": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-terminal"],
"autoApproveScope": ["execute_command", "npm_install", "npm_run"],
"config": {
"allowedCommands": ["npm", "node", "git"],
"defaultTimeout": 30000,
"defaultCwd": "/your/project/path",
"environmentVariables": {
"NODE_ENV": "development"
}
}
}
}
使用示例
// 执行命令
const result = await terminal.executeCommand('ls', ['-la'], {
cwd: '/some/path'
});
// 安装npm包
await terminal.install('typescript');
// 运行npm脚本
await terminal.runScript('build');
// 直接npm命令
await terminal.dev(); // npm run dev
await terminal.build(); // npm run build
许可证
None