Foobara MCP Connector 使用说明

项目简介

Foobara MCP Connector 是一个基于 Ruby 和 Foobara 框架实现的 Model Context Protocol (MCP) 服务器。它允许开发者将 Foobara 命令(Commands)暴露为工具(Tools),并通过标准的 MCP 协议与 LLM 客户端进行通信。该项目旨在为 LLM 应用提供可扩展的后端服务,使其能够安全地调用外部功能和获取上下文信息。

主要功能点

  • 工具注册与执行: 将 Ruby 定义的 Foobara 命令注册为 MCP 工具,LLM 客户端可以调用这些工具执行特定任务。
  • JSON-RPC 通信: 使用 JSON-RPC 协议与 MCP 客户端进行通信,接收请求并返回响应。
  • Stdio 传输协议: 支持 Stdio 传输协议,方便快速部署和集成。
  • 会话管理: 支持 MCP 会话管理,为客户端提供上下文环境。
  • 能力声明: 声明服务器提供的工具能力,供客户端发现和使用。

安装步骤

  1. 安装 Ruby 环境: 确保您的系统已安装 Ruby 运行环境 (版本需符合 'version.rb' 中 'MINIMUM_RUBY_VERSION' 的要求)。
  2. 安装 gem: 您可以通过以下两种方式安装 'foobara-mcp-connector' gem:
    • 方式一 (Gemfile): 将 'gem "foobara-mcp-connector"' 添加到您的 'Gemfile' 文件中,并运行 'bundle install'。
    • 方式二 (直接安装): 直接运行命令 'gem install foobara-mcp-connector'。

服务器配置

MCP 服务器需要配置启动命令 (command) 才能被 MCP 客户端连接。以下是一个 '.mcp.json' 配置示例,用于配置名为 "mcp-test" 的 MCP 服务器:

{
  "mcpServers": {
    "mcp-test": { // 服务器名称,可以自定义
      "type": "stdio",
      "command": "path/to/your/simple-mcp-server-example", //  指向您的服务器脚本的路径 (请替换为实际路径)
      "args": [], //  启动服务器脚本时传递的命令行参数,本例中无需参数
      "env": {}  //  启动服务器脚本所需的环境变量,本例中无需环境变量
    }
  }
}

配置参数说明:

  • 'server name': MCP 服务器的名称,例如 "mcp-test",客户端使用此名称引用服务器。
  • 'type': 传输协议类型,本例中使用 "stdio" (标准输入输出)。
  • 'command': 必需参数。指向服务器启动脚本的绝对或相对路径。您需要将 '"path/to/your/simple-mcp-server-example"' 替换为您实际创建的服务器脚本的路径。
  • 'args': 一个字符串数组,用于传递给服务器启动脚本的命令行参数。如果脚本不需要参数,则留空 '[]' 即可。
  • 'env': 一个键值对对象,用于设置服务器启动脚本所需的环境变量。如果不需要环境变量,则留空 '{}' 即可。

基本使用方法

  1. 创建服务器脚本: 根据仓库 'README.md' 提供的示例,创建一个 Ruby 脚本 (例如 'simple-mcp-server-example'),该脚本定义了您希望暴露为 MCP 工具的 Foobara 命令,并使用 'Foobara::McpConnector' 启动 Stdio 服务器。
  2. 配置 '.mcp.json': 创建一个 '.mcp.json' 文件,并按照 服务器配置 中的示例配置您的 MCP 服务器。请务必将 '"command"' 字段的值替换为您创建的服务器脚本的实际路径。
  3. 运行 MCP 客户端: 启动您的 MCP 客户端 (例如 'claude code')。客户端将读取 '.mcp.json' 配置文件并尝试连接到您配置的 MCP 服务器。
  4. 与 LLM 交互: 在 MCP 客户端中,您可以向 LLM 提出问题或指令,这些指令可能会触发对您定义的 MCP 工具的调用。例如,根据 'README.md' 的示例,您可以询问类似 "Hi! Could you please build me a super duper secret using a seed of 5?" 的问题,如果您的服务器配置和命令定义正确,LLM 客户端将调用 'BuildSuperDuperSecret' 工具并返回结果。

注意: 请确保您的服务器脚本具有执行权限 ('chmod +x simple-mcp-server-example')。

信息

分类

AI与计算