使用说明

项目简介

本项目提供一个基于 Python 的 MCP 服务器,通过 BioBlend 库集成 Galaxy 生物信息学平台。它允许 AI 助手及其他 MCP 客户端以编程方式与一个指定的 Galaxy 实例进行交互,执行生物信息学分析任务。

主要功能点

  • Galaxy 连接:连接到指定的 Galaxy 实例,建立会话。
  • 工具管理:搜索、查看详情及运行 Galaxy 工具面板中的工具。
  • 工作流集成:访问交互式工作流编辑器 (IWC) 中的工作流,并将其导入到 Galaxy 实例中。
  • 历史记录操作:创建、获取用户历史记录列表及详情,管理分析结果数据集。
  • 文件管理:上传本地文件到 Galaxy 历史记录中作为输入数据集。

安装步骤

  1. 确保您的系统已安装 Python 3.8 或更高版本,以及 'pip' 包管理器。
  2. 克隆本仓库到本地:
    git clone https://github.com/galaxyproject/galaxy-mcp.git
  3. 进入 Python 实现的目录:
    cd galaxy-mcp/mcp-server-galaxy-py
  4. 安装所需的 Python 依赖库:
    pip install -r requirements.txt

服务器配置

连接到 Galaxy 需要提供 Galaxy 实例的 URL 和 API Key。您可以选择以下方式配置这些凭据:

  1. 环境变量:在运行服务器之前设置 'GALAXY_URL' 和 'GALAXY_API_KEY' 环境变量。
    export GALAXY_URL="<您的 Galaxy URL>"
    export GALAXY_API_KEY="<您的 Galaxy API Key>"
  2. .env 文件:在 'mcp-server-galaxy-py' 目录下创建一个名为 '.env' 的文件,内容如下:
    GALAXY_URL=<您的 Galaxy URL>
    GALAXY_API_KEY=<您的 Galaxy API Key>

注意:如果通过环境变量或 '.env' 文件配置了凭据,服务器启动时会自动尝试连接。

对于 MCP 客户端,通常需要配置服务器的启动方式。您可以使用以下 JSON 结构配置此 MCP 服务器,指定运行主程序的命令及其参数:

{
  "server_name": "galaxy", // MCP服务器的唯一标识名称,由客户端定义
  "description": "Galaxy 生物信息学平台交互服务器", // 服务器的简要描述
  "command": "mcp", // 启动MCP服务器进程的命令,确保 mcp 命令行工具已安装并可在PATH中找到
  "args": [ // 传递给command的参数列表
    "run", // mcp命令的一个子命令,用于运行MCP应用
    "mcp-server-galaxy-py/main.py" // MCP服务器的主程序文件路径,相对于客户端启动目录或绝对路径
  ]
}

基本使用方法

  1. 配置好 Galaxy URL 和 API Key(通过环境变量或 '.env' 文件)。
  2. MCP 客户端根据上述配置启动 Galaxy MCP 服务器进程。
  3. MCP 客户端与服务器建立连接后,可以首先调用服务器声明的 'connect' 工具,显式地传递 Galaxy URL 和 API Key 来覆盖环境变量配置(如果需要),并测试连接是否成功。
  4. 连接成功后,MCP 客户端即可通过调用服务器暴露的其他工具(如 'search_tools' 搜索工具, 'run_tool' 运行分析任务, 'get_histories' 查看历史记录等)与 Galaxy 平台进行交互。

信息

分类

AI与计算