Terminal Command Runner MCP Server

Terminal Command Runner MCP Server

site icon
2025.04.17 0
Python终端命令执行文件系统管理开发效率
neoforge-mcp-server 是一个基于 Model Control Protocol (MCP) 的服务,通过 RESTful API 接口为 AI 助手提供终端命令执行和文件系统管理功能。它支持终端命令的执行、文件系统操作以及高级功能如文本编辑和系统信息检索。适用于需要自动化终端操作和文件管理的场景。
View on GitHub

Overview

基本能力

产品定位

neoforge-mcp-server 是一个功能强大的 MCP 服务器,旨在通过 RESTful API 为 AI 助手提供终端命令执行和文件系统管理能力。

核心功能

  1. 终端管理
  2. 执行带超时配置的命令
  3. 管理后台运行的长时间进程
  4. 获取活动命令会话的输出
  5. 列出所有活动会话和系统进程
  6. 终止或杀死进程
  7. 命令黑名单功能以增强安全性

  8. 文件系统操作

  9. 读写文件
  10. 创建目录
  11. 列出目录内容
  12. 移动/重命名文件
  13. 使用 glob 模式搜索文件
  14. 获取详细的文件信息

  15. 高级功能

  16. 使用搜索和替换进行精确文本编辑
  17. 系统信息检索
  18. 数学表达式评估

适用场景

  • AI 助手需要执行终端命令的场景
  • 自动化文件系统管理的任务
  • 需要精确文本编辑和系统信息检索的开发环境

工具列表

  1. 终端工具
  2. execute_command: 运行带超时配置的命令
  3. read_output: 获取运行中进程的输出
  4. force_terminate: 停止运行中的命令
  5. list_sessions: 显示所有活动命令会话
  6. list_processes: 查看所有系统进程
  7. kill_process: 通过 PID 杀死进程
  8. block_command: 将命令添加到黑名单
  9. unblock_command: 从黑名单中移除命令

  10. 文件系统工具

  11. read_file: 读取文件内容
  12. write_file: 写入数据到文件
  13. create_directory: 创建新目录
  14. list_directory: 列出目录内容
  15. move_file: 移动或重命名文件和目录
  16. search_files: 查找匹配模式的文件
  17. get_file_info: 获取详细的文件信息

  18. 编辑工具

  19. edit_block: 使用类似 diff 的语法应用精确文本替换

  20. 系统工具

  21. system_info: 获取详细的系统信息
  22. calculate: 评估数学表达式

常见问题解答

  • 安全性:服务器实现了命令黑名单、文件大小限制和表达式评估保护等安全措施。
  • 配置:可以通过 ~/.cursor/mcp.json 文件配置 Cursor 使用此 MCP 服务。

使用教程

使用依赖

  • Python 3.13+
  • uv 包管理器(推荐)

安装教程

  1. 克隆仓库:
git clone https://github.com/neoforge-dev/neoforge-mcp-server.git
cd python-server-mcp
  1. 创建虚拟环境并安装依赖:
uv venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
uv pip install -e .
  1. 启动 MCP 服务器:
python server.py

服务器将在 http://0.0.0.0:8000 启动。

调试方式

  1. 安装测试依赖:
uv pip install -r requirements.txt
  1. 运行测试:
./run_tests.py
  1. 运行带覆盖率报告的测试:
./run_tests.py --coverage
  1. 运行详细输出的测试:
./run_tests.py --verbose
  1. 运行特定测试文件:
./run_tests.py --test tests/test_command_execution.py

许可证

该项目遵循 MIT 开源许可条款。