返回市场
捆绑器_mcp

捆绑器_mcp

作者:subelsky19 星标更新:2025-06-30

项目介绍

BundlerMCP

一个模型上下文协议(MCP)服务器,使AI代理能够查询Ruby项目Gemfile中的依赖信息。使用fast-mcp构建。

CI Gem 版本

安装

通过执行以下命令安装gem并将它添加到应用的Gemfile中:

bundle add bundler_mcp --group=development

使用

  1. 生成binstub:
bundle binstubs bundler_mcp
  1. 配置客户端以执行binstub。这里有一些适用于Claude和Cursor的例子:

基本示例(mcp.json)

{
  "mcpServers": {
    "bundler-mcp": {
      "command": "/Users/mike/my_project/bin/bundler_mcp"
    }
  }
}

包含日志记录和明确Gemfile的示例

{
  "mcpServers": {
    "bundler-mcp": {
      "command": "/Users/mike/my_project/bin/bundler_mcp",

      "env": {
        "BUNDLER_MCP_LOG_FILE": "/Users/mike/my_project/log/mcp.log",
        "BUNDLE_GEMFILE": "/Users/mike/my_project/subdir/Gemfile"
      }
    }
  }
}

文档

在RubyDoc上可用

可用工具

该服务器为AI代理提供了两个工具:

list_project_gems

列出所有捆绑的Ruby gems及其:

  • 版本
  • 描述
  • 安装路径
  • 顶级文档位置(例如READMECHANGELOG

list_project_gems工具

get_gem_details

检索特定gem的详细信息,包括:

  • 版本
  • 描述
  • 安装路径
  • 顶级文档位置
  • 源代码文件位置

get_gem_details工具

环境变量

  • BUNDLE_GEMFILE:由Bundler用来定位你的Gemfile。如果你使用了在使用部分描述的binstub方法,通常不需要设置这个变量。
  • BUNDLER_MCP_LOG_FILE:日志文件路径。用于故障排除(默认不启用日志)

开发

检出仓库后,运行bin/setup来安装依赖项,并运行bundle exec rspec来执行测试。你也可以运行bin/console来获得一个交互式提示,允许你进行实验。

使用MCP Inspector进行测试

你可以直接使用MCP inspector来测试服务器:

# 基本用法
npx @modelcontextprotocol/inspector ./bin/bundler_mcp

# 启用日志记录
BUNDLER_MCP_LOG_FILE=/tmp/log/mcp.log npx @modelcontextprotocol/inspector ./bin/bundler_mcp

# 使用自定义Gemfile
BUNDLE_GEMFILE=./other/Gemfile npx @modelcontextprotocol/inspector ./bin/bundler_mcp

发布过程

要将此gem安装到本地机器上,请运行bundle exec rake install。要发布新版本:

  1. 更新version.rb中的版本号
  2. 运行bundle exec rake release

这将:

  • 为版本创建git标签
  • 推送git提交和创建的标签
  • .gem文件推送到rubygems.org

贡献

欢迎在GitHub上的https://github.com/subelsky/bundler_mcp报告错误和拉取请求。

许可证

根据MIT许可证开源。

作者

Mike Subelsky