返回市场
罗库代码MCP安装程序

罗库代码MCP安装程序

作者:robertheadley9 星标更新:2025-05-07

项目介绍

Roo MCP 安装器

描述

Roo MCP 安装器是一个命令行工具,旨在简化Roo模型上下文协议(MCP)服务器的安装和管理。它从Git仓库获取MCP服务器代码,处理依赖项、配置,并在Roo环境中注册。

功能

  • Git 仓库安装: 直接从GitHub仓库URL(例如,https://github.com/user/repo.git)或简短的slug(例如,user/repo)安装MCP。
  • 子目录支持: 使用冒号分隔符从仓库中的特定子目录进行安装(例如,user/repo:subdir)。
  • 安装范围: 支持全局安装(跨项目共享,通常位于~/.roo/mcps)和项目安装(特定于当前目录,在./.roo/mcps)。
  • 自动项目类型检测: 根据标准配置文件识别项目类型:
    • Node.js (package.json)
    • Python (requirements.txt, pyproject.toml)
    • Go (go.mod, main.go)
    • Rust (Cargo.toml) (仍在进行中)(可能无法工作)
  • 依赖项管理: 自动使用检测到的包管理器安装项目依赖项:
    • npm install(如果失败则检查yarn installpnpm install
    • pip install -r requirements.txt(如果失败则检查pip3
    • poetry install(如果失败则检查pip install -e .
    • go mod download
    • cargo build(也用于获取依赖项)
  • 构建步骤执行: 如果需要,自动运行构建命令:
    • Go: go build -o <output_path> <target>
    • Node.js: npm run build(或yarn/pnpm),如果存在构建脚本且根据main/bin字段判断有必要。
  • 环境变量配置:
    • 检测所需的环境变量,通过检查mcp.json(最高优先级)、.env.example或仓库README.md文件中的JSON代码块。
    • 交互式提示用户输入检测到的变量值。
    • 对于名称暗示敏感性的变量(如包含KEYSECRETTOKENPASSWORD的变量),隐藏输入。
    • 使用--skip-env标志可跳过交互式配置。
  • 自动工具检查与安装:
    • 检查必要的命令行工具(如gitnpmnodepythongocargobuntsc等)是否存在。
    • 如果已知安装命令存在(例如,npm install -g bun),提示用户自动全局安装缺失的工具。
  • 列出已安装的MCP: list命令显示全局和项目范围内安装的所有MCP,包括它们的名称和安装路径。
  • 日志查看: logs命令允许查看应用程序的日志文件。
    • --lines / -n: 显示最后N行。
    • --follow / -f: 实时监控日志文件的新条目(类似于tail -f)。
  • 丰富的TUI: 使用rich库提供增强的终端用户界面,包括旋转图标、进度条、样式化文本、表格和交互式提示。
  • 调试模式: 使用--debug标志启用详细的日志记录到控制台和日志文件,以便故障排除。
  • 演示模式: 使用--demo标志(针对install命令)模拟安装过程,展示UI和预期操作而不实际修改文件系统或运行命令。

使用方法

脚本通过python roo.py <command> [options]运行。

命令:

  • install <repo_input> [options]
    • 安装或更新一个MCP服务器。
    • <repo_input>: 仓库URL、user/repo slug或user/repo:subdir
    • --scope <global|project>: 设置安装范围(默认:global)。
    • --skip-env: 跳过环境变量的交互式提示。
    • --demo: 在演示模式下运行安装(不作实际更改)。
    • --debug: 启用调试日志记录。
  • list [options]
    • 列出已安装的MCP服务器。
    • --debug: 启用调试日志记录。
  • logs [options]
    • 显示日志文件。
    • --lines N-n N: 显示最后N行。
    • --follow-f: 实时跟踪日志输出。
    • --debug: 启用调试日志记录。

示例

全局安装一个MCP:

python roo.py install username/my-cool-mcp

将MCP安装到当前项目:

python ro
ro.py install https://github.com/username/project-specific-mcp.git --scope project

从子目录安装MCP,跳过环境变量设置:

python roo.py install username/mono-repo:tools/my-mcp --skip-env

以调试输出模拟安装:

python roo.py install username/test-mcp --demo --debug

列出所有已安装的MCP:

python roo.py list

查看最新的日志条目:

python roo.py logs

查看日志的最后100行:

python roo.py logs --lines 100

实时跟踪日志:

python roo.py logs --follow

依赖项

  • Python: 需要3.11或更高版本(由于使用了tomllib)。
  • Git: 必须安装并可在系统PATH中访问。
  • 第三方Python包: 见下面的requirements.txt。特定项目类型可能还需要额外的工具(如Node.js/npm、Go、Rust/Cargo)。

要求文件 (requirements.txt)

rich

许可证

MIT 许可证

版权所有 (c) 2025 [您的姓名或组织]

在此授权任何人免费获得此软件及其相关文档文件(以下简称“软件”)的副本,不受限制地使用、复制、修改、合并、发布、分发、再许可和/或出售该软件的副本,并允许接收该软件的人这样做,但需遵守以下条件:

上述版权声明和本许可通知必须包含在软件的所有副本或实质部分中。

软件按“原样”提供,不附带任何形式的保证,包括但不限于对适销性、特定用途适用性和非侵权性的默示保证。在任何情况下,作者或版权持有人都不对因软件或其使用或其他交易而产生的任何索赔、损害或其他责任承担任何责任,无论是基于合同、侵权行为或其他原因。