项目简介: BioTools MCP服务器是TransAgent项目的一部分,专注于提供生物信息学领域的上下文信息和功能。它遵循Model Context Protocol (MCP) 标准,允许支持MCP的LLM客户端(如TransAgent应用程序本身)通过结构化请求访问托管的生物资源、执行预定义的分析工具。

主要功能点:

  • 基因位置查询: 根据基因名获取基因组位置信息(BED文件路径)。
  • 生物学注释数据访问: 提供多种生物学注释数据(如增强子、转录因子结合位点、SNP等)的BED文件路径。
  • 转录调控因子(TR)结合区域访问: 根据TR列表获取相应的BED文件路径。
  • 基因表达数据访问: 提供来自不同数据源(TCGA癌症数据、细胞系、组织等)的基因表达数据文件路径。
  • 高性能计算命令执行: 允许LLM通过安全沙箱或远程SSH执行复杂的生物信息学分析命令(如bedtools, homer, macs2, TRAPT等)。

安装步骤:

  1. 确保您的系统已安装Python 3.7+、pip和uvicorn。
  2. 安装必要的Python库:'pip install mcp pandas starlette uvicorn ssh2' (如果需要远程SSH执行命令功能)。
  3. 如果需要托管数据,请将数据文件放置在服务器代码中指定的路径下(例如 '/data/human', '/data/trapt', '/data/exp' 等)。注意:这些数据文件和路径配置是服务器端的要求,非MCP客户端配置内容。
  4. 在 'biotools/mcp_server' 目录下找到服务器代码文件(例如 'server.py')。
  5. 运行服务器:在 'biotools/mcp_server' 目录下执行命令:'uvicorn server:starlette_app --host 0.0.0.0 --port 3001' (如果使用 'server_transagent.py',则将 'server' 替换为 'server_transagent')。服务器将在 '0.0.0.0:3001' 上监听。

服务器配置信息(供MCP客户端参考): 该BioTools MCP服务器通过SSE协议提供服务。支持MCP协议的LLM客户端需要以下信息来连接:

{
  "name": "biotools",
  "url": "http://localhost:3001/sse",
  "enabled": true
}
  • 'name': 服务器的名称,客户端用于标识。
  • 'url': 服务器的访问URL,指向SSE端点。
  • 'enabled': 是否启用此服务器(客户端配置项)。 其他参数如 'command', 'args' 等是特定客户端(如TransAgent应用程序自身)用于启动服务器进程的功能,非MCP协议本身的要求。

基本使用方法:

  1. 启动BioTools MCP服务器(按照安装步骤中的运行命令)。
  2. 在支持MCP协议的LLM客户端中,配置连接信息(参考上方的服务器配置信息)。
  3. 客户端连接成功后,可以向服务器发送JSON-RPC请求:
    • 调用 'list_tools' 方法获取服务器提供的工具列表(名称、描述、参数)。
    • 调用 'call_tool' 方法执行特定工具,并提供相应的JSON格式参数。服务器将返回工具执行结果(通常是文本,例如文件路径或命令输出)。
  4. 客户端(如TransAgent)根据服务器返回的结果,继续执行后续任务。

信息

分类

AI与计算