mcpField
S
Shell Execution MCP Server

Shell Execution MCP Server

本地服务
github.com/samihalawa开发工具176 周前更新

关于 Shell Execution MCP Server

Shell Execution MCP Server 为 Claude 等兼容 MCP 的 AI 助手提供持久化 Shell 命令执行。它支持后台进程、超时控制和会话重置。

主要功能

  1. 01跨命令保留会话状态
  2. 02后台运行命令
  3. 03配置命令超时
  4. 04重置 Shell 会话

适用场景

  1. 01在同一 Shell 会话中连续执行命令
  2. 02让耗时命令在后台运行
  3. 03为命令设置执行时限
  4. 04清除当前状态并重新启动会话

MCP 相关

该 MCP 服务向兼容客户端提供 execute-command 和 reset-shell 工具,用于执行 Shell 命令及重置会话。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Shell 执行 MCP 服务

一个模型上下文协议(MCP)服务,为 Claude 和其他兼容 MCP 的 AI 助手提供持久的 Shell 命令执行能力。

功能

  • 持久 Shell 会话:在同一会话中的不同命令之间保留状态
  • 后台执行:在后台运行命令,并妥善管理进程
  • 跨平台:使用相应的 Shell,可在 macOS、Linux 和 Windows 上运行
  • 超时控制:配置命令执行超时时间,防止命令挂起
  • 重置会话:可根据需要重置 Shell 会话

安装

# Clone the repository
git clone https://github.com/samihalawa/mcp-server-shell-exec.git
cd mcp-server-shell-exec

# Install dependencies
npm install

# Make the server executable
chmod +x server.js

用法

启动服务
npm start
配置

将服务添加到 MCP 配置中:

macOS/Linux
{
  "mcpServers": {
    "shell-exec-server": {
      "command": "/path/to/node",
      "args": [
        "/absolute/path/to/mcp-server-shell-exec/server.js"
      ]
    }
  }
}
Windows
{
  "mcpServers": {
    "shell-exec-server": {
      "command": "node",
      "args": [
        "C:\\path\\to\\mcp-server-shell-exec\\server.js"
      ]
    }
  }
}
可用工具
execute-command

在持久 Shell 会话中执行 Shell 命令。

参数:

  • command(字符串,必填):要执行的 Shell 命令
  • runInBackground(布尔值,可选):是否在后台运行命令。默认值:false
  • timeoutMs(数字,可选):命令超时时间,单位为毫秒。默认值:30000

返回值:

  • success(布尔值):命令是否执行成功
  • output(字符串):命令执行的输出
reset-shell

重置 Shell 会话。这将终止当前会话并启动一个新会话。

参数:无

返回值:

  • success(布尔值):Shell 是否重置成功
  • message(字符串):状态消息

使用示例

  1. 执行简单命令:

    execute-command(command: "ls -la")
    
  2. 在后台运行长时间执行的命令:

    execute-command(command: "sleep 60 && echo 'Done'", runInBackground: true)
    
  3. 使用自定义超时时间执行命令:

    execute-command(command: "find / -name '*.js'", timeoutMs: 60000)
    
  4. 重置 Shell 会话:

    reset-shell()
    

工作原理

该服务使用 Node.js 创建 Shell 进程,并在不同命令之间保留状态。这样可以:

  • 在不同命令之间保留环境变量
  • 保持工作目录不变
  • 让后台进程继续运行
  • 执行需要 stdin/stdout 的交互式命令

要求

  • Node.js 14+
  • 兼容 Claude Desktop、Cursor 和其他兼容 MCP 的应用程序

故障排除

如果 MCP 服务遇到问题,请检查以下内容:

常见错误:工具执行失败

如果出现“工具执行失败”错误,请检查:

  1. 服务是否正常运行
  2. 配置文件是否使用绝对路径
  3. 更改配置后是否重新启动了客户端应用程序
测试服务

可以直接发送命令来测试服务:

echo '{"id":"test1","jsonrpc":"2.0","method":"execute-command","params":{"command":"echo \"Hello World\""}}' | node server.js

这应返回格式正确的 JSON 响应,其中包含输出。

配置路径问题

仔细检查配置中的路径:

  • 使用绝对路径,而非相对路径
  • Windows 用户请在路径中使用正斜杠(/)或转义后的反斜杠(\)
  • 确认服务文件路径正确

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。