Token导航 LogoToken导航TokenDH.com
MCP Console Automation Server logo
AI代理stdio官方级别未说明来源级核验

MCP Console Automation Server

MCP Server

@mcp/console-automation

MCP控制台自动化服务器是一个生产就绪的解决方案,使AI助手能够完全与控制台应用程序交互,监控输出,检测错误并自动化终端工作流程,类似于Playwright对Web浏览器的操作。

工具数

11

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaudeAI代理Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ooples

提供方

ooples

最后核验

2026/5/17 20:19

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @mcp/console-automation --log-level info

详细介绍

MCP控制台自动化服务器

生产准备就绪 模型上下文协议(MCP)服务器,使AI助手能够与控制台应用程序完全交互,监控输出,检测错误,并自动化终端工作流程——类似于Playwright在web浏览器上的工作方式。

](https://github.com/ooples/mcp-console-automation) ![License](LICENSE) ](https://nodejs.org)

生产状态✅

此服务器是 完全生产就绪 与:

  • ✅ 无需本机编译(删除了节点pty依赖关系)
  • ✅ 完全跨平台支持(Windows、macOS、Linux)
  • ✅ 对长时间运行的流程的流式支持
  • ✅ 支持多种控制台类型(cmd、PowerShell、bash、zsh、sh)
  • ✅ 资源管理和自动清理
  • ✅ 全面的错误处理和恢复
  • ✅ 适用于所有主要MCP客户端的简单安装脚本
  • ✅ 所有测试均已通过(详见testfunctions.js)

特性

  • 全终端控制:同时创建和管理多个控制台会话
  • 交互输入:发送文本输入和特殊按键序列(Enter、Tab、Ctrl+C等)
  • 实时输出监控:实时捕获和分析控制台输出
  • 流媒体支持:长时间运行的流程的高效流式传输
  • 多种控制台类型:支持cmd、PowerShell、bash、zsh、sh
  • 自动错误检测:内置模式用于检测错误、异常和堆栈跟踪
  • 会话管理:创建、停止和管理多达50个并发会话
  • 资源管理:内存监控、自动清理、会话限制
  • 命令执行:运行命令并等待超时支持完成
  • 模式匹配:在继续之前,请等待特定的输出模式
  • 跨平台:适用于Windows、macOS和Linux,无需本机依赖

快速安装

Windows(PowerShell作为管理员)

git clone https://github.com/ooples/mcp-console-automation.git
cd mcp-console-automation
.\install.ps1 -Target claude  # or google, openai, custom, all

macOS/Linux

git clone https://github.com/ooples/mcp-console-automation.git
cd mcp-console-automation
chmod +x install.sh
./install.sh --target claude  # or google, openai, custom, all

手动安装

git clone https://github.com/ooples/mcp-console-automation.git
cd mcp-console-automation
npm install --production
npm run build

配置

适用于克劳德桌面

添加到您的Claude Desktop配置文件中:

视窗: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "console-automation": {
      "command": "npx",
      "args": ["@mcp/console-automation"],
      "env": {
        "LOG_LEVEL": "info"
      }
    }
  }
}

对于其他MCP客户端

# Start the server
mcp-console --log-level info

# Or with npx
npx @mcp/console-automation --log-level info

可用工具(共12个)

console_create_session

创建一个新的控制台会话来运行命令。

参数:

  • command (必填):要执行的命令
  • args:命令参数数组
  • cwd:工作目录
  • env:环境变量对象
  • detectErrors:启用自动错误检测(默认值:true)
  • timeout:会话超时(毫秒)

例子:

{
  "command": "python",
  "args": ["script.py"],
  "cwd": "/path/to/project",
  "detectErrors": true
}

console_send_input

将文本输入发送到活动控制台会话。

参数:

  • sessionId (必填):会话ID
  • input (必填):要发送的文本

console_send_key

将特殊按键序列发送到控制台会话。

参数:

  • sessionId (必填):会话ID
  • key (必填):发送键(enter、tab、up、down、ctrl+c、escape等)

console_get_output

从控制台会话中检索输出。

参数:

  • sessionId (必填):会话ID
  • limit:要返回的最大输出行数

console_wait_for_output

等待控制台中的特定输出模式。

参数:

  • sessionId (必填):会话ID
  • pattern (必填):要等待的正则表达式模式
  • timeout:超时时间(毫秒)(默认值:5000)

console_execute_command

执行命令并等待完成。

参数:

  • command (必填):执行命令
  • args:命令参数
  • cwd:工作目录
  • env:环境变量
  • timeout:执行超时

console_detect_errors

分析控制台输出的错误和异常。

参数:

  • sessionId:要分析的会话ID
  • text:直接分析文本(如果不使用会话)

console_stop_session

停止活动的控制台会话。

参数:

  • sessionId (必填):要停止的会话ID

console_list_sessions

列出所有活动的控制台会话。

console_resize_session

调整会话的端子尺寸。

参数:

  • sessionId (必填):会话ID
  • cols (必填):列数
  • rows (必填):行数

console_clear_output

清除会话的输出缓冲区。

参数:

  • sessionId (必填):会话ID

用例

1.运行和监视开发服务器

// Create a session for the dev server
const session = await console_create_session({
  command: "npm",
  args: ["run", "dev"],
  detectErrors: true
});

// Wait for server to start
await console_wait_for_output({
  sessionId: session.sessionId,
  pattern: "Server running on",
  timeout: 10000
});

// Monitor for errors
const errors = await console_detect_errors({
  sessionId: session.sessionId
});

2.交互式调试会话

// Start a Python debugging session
const session = await console_create_session({
  command: "python",
  args: ["-m", "pdb", "script.py"]
});

// Set a breakpoint
await console_send_input({
  sessionId: session.sessionId,
  input: "b main\n"
});

// Continue execution
await console_send_input({
  sessionId: session.sessionId,
  input: "c\n"
});

// Step through code
await console_send_key({
  sessionId: session.sessionId,
  key: "n"
});

3.具有错误检测功能的自动化测试

// Run tests
const result = await console_execute_command({
  command: "pytest",
  args: ["tests/"],
  timeout: 30000
});

// Check for test failures
const errors = await console_detect_errors({
  text: result.output
});

if (errors.hasErrors) {
  console.log("Test failures detected:", errors);
}

4.交互式CLI工具自动化

// Start an interactive CLI tool
const session = await console_create_session({
  command: "mysql",
  args: ["-u", "root", "-p"]
});

// Enter password
await console_wait_for_output({
  sessionId: session.sessionId,
  pattern: "Enter password:"
});

await console_send_input({
  sessionId: session.sessionId,
  input: "mypassword\n"
});

// Run SQL commands
await console_send_input({
  sessionId: session.sessionId,
  input: "SHOW DATABASES;\n"
});

错误检测模式

服务器包括用于检测常见错误类型的内置模式:

  • 一般错误(错误:,错误:,误差:)
  • 例外(例外:,例外)
  • 警告(警告:,警告:)
  • 致命错误
  • 操作失败
  • 权限/访问被拒绝
  • 超时
  • 堆栈跟踪(Python、Java、Node.js)
  • 编译错误
  • 语法错误
  • 内存错误
  • 连接错误

发展

从源头构建

npm install
npm run build

以开发模式运行

npm run dev

运行测试

npm test

类型检查

npm run typecheck

代码检查

npm run lint

建筑

服务器由以下组件构建:

  • 节点pty:用于创建和管理伪终端
  • @模型上下文协议/sdk:MCP协议实施
  • TypeScript:用于类型安全和更好的开发人员体验
  • 温斯顿:用于结构化日志记录

核心组件

  1. 控制台管理器:管理终端会话、输入/输出和生命周期
  2. 错误检测:分析输出中的错误和异常
  3. MCP服务器:通过MCP工具公开控制台功能
  4. 会话管理:处理多个并发控制台会话

需求

  • Node.js>=18.0.0
  • Windows、macOS或Linux操作系统
  • 无需额外的构建工具!

测试

运行附带的测试套件以验证功能:

node test-functionality.js

故障排除

常见问题

  1. 权限被拒绝错误:确保服务器具有生成进程的权限
  2. 节点pty编译错误:为您的平台安装构建工具
  3. 会话未响应:检查命令是否需要TTY交互
  4. 未捕获输出:一些应用程序可以直接写入终端,绕过stdout

贡献

欢迎投稿!请随时提交拉取请求。

  1. 复刻仓库
  2. 创建功能分支(git checkout -b feature/AmazingFeature)
  3. 提交您的更改(git commit -m 'Add some AmazingFeature')
  4. 推到分支(git push origin feature/AmazingFeature)
  5. 打开拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件

支持

有关问题、疑问或建议,请在GitHub上打开问题: https://github.com/yourusername/mcp-console-automation/issues

路线图

  • \[\]添加对终端录制和播放的支持
  • \[\]实现会话持久性和恢复
  • \[\]为特定语言添加更多错误检测模式
  • \[\]支持终端复用(tmux/屏幕集成)
  • \[\]基于Web的终端查看器
  • \[\]会话共享和协作功能
  • \[\]性能分析工具
  • \[\]与流行的CI/CD系统集成

目录标签

目录标签

TypeScriptClaudeAI代理终端控制本地部署自动化工作流错误检测多会话管理跨平台支持

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

local-only

来源包(packageName,安装包名)

@mcp/console-automation

工具数量(toolCount,工具数)

11

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosessionlocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP