Back to MCP directory
publicPublicdnsLocal runtime

RichardTheuws_mcp-terminal-server

Model Context Protocol的终端服务实现,提供安全的命令行和npm操作控制

article

README

🚀 @modelcontextprotocol/server-terminal

MCP协议的终端服务器实现,为终端命令和npm操作提供安全且可控的访问途径,有效解决了在特定环境下对命令执行和npm操作进行安全管控的问题,提升了操作的安全性和可控性。

🚀 快速开始

本项目是MCP协议的终端服务器实现,可提供对终端命令和npm操作的安全且受控访问。

✨ 主要特性

  • 🔨 带有完全控制的shell命令执行
  • 📦 内置的npm操作(安装、运行脚本)
  • ⏱️ 超时处理
  • 🔐 通过允许的命令列表实现安全性
  • 🌐 环境变量管理
  • 📁 工作目录控制
  • 🅿️ TypeScript支持

📦 安装指南

使用以下命令进行安装:

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
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client