项目简介

Scanpy-MCP是一个基于Model Context Protocol (MCP) 构建的服务器,旨在通过标准化的接口,使大型语言模型 (LLM) 或AI Agent能够利用Scanpy库执行单细胞RNA测序数据的分析任务。它将Scanpy的复杂功能封装为MCP协议定义的“工具”,允许AI客户端通过自然语言或结构化请求调用这些功能,实现从数据读取、预处理到分析和可视化的全流程。

主要功能点

  • 数据输入/输出: 支持读取和写入单细胞RNA测序数据文件(如'.h5ad'格式)。
  • 数据预处理: 提供过滤、质量控制、标准化、缩放、高变基因检测、PCA降维、构建邻居图等常用预处理功能。
  • 数据分析工具: 集成了聚类、差异表达分析等核心分析工具。
  • 数据可视化: 支持生成小提琴图、热图、点图等多种可视化图表。
  • 实用工具: 提供如将聚类ID映射到细胞类型名称等辅助功能。

安装步骤

使用pip包管理器安装:

pip install scanpy-mcp

服务器配置

Scanpy-MCP是一个MCP服务器,需要由支持MCP协议的AI客户端(如Cherry Studio、Cline、Agno等)来启动和管理。客户端需要进行配置,以告知如何连接到Scanpy-MCP服务。

典型的配置方式有两种:

  1. 本地运行 (Stdio传输): 客户端直接启动服务器进程并通过标准输入/输出进行通信。

    • 在客户端的MCP服务器配置中,指定服务器名称(例如:"scanpy-mcp")。
    • 指定服务器启动命令('command'),通常是安装后可执行的'scanpy-mcp'命令路径。
    • 指定启动命令的参数('args'),通常是'["run"]'表示启动服务器。
    • (示例配置片段,请在您的客户端界面中填写对应信息,而非直接粘贴代码):
      "scanpy-mcp": {
        "command": "/path/to/scanpy-mcp", // 替换为实际的scanpy-mcp可执行文件路径
        "args": ["run"]
      }
  2. 远程运行 (HTTP传输): 服务器作为一个独立的Web服务运行,客户端通过HTTP连接。

    • 首先在服务器端运行Scanpy-MCP:
      scanpy-mcp run --transport shttp --port 8000
    • 在客户端的MCP服务器配置中,指定服务器名称(例如:"scanpy-mcp")。
    • 指定服务器的URL('url'),格式为'http://服务器地址:端口/mcp'。
    • (示例配置片段):
      "scanpy-mcp": {
        "url": "http://localhost:8000/mcp" // 替换为实际运行scanpy-mcp的服务器地址和端口
      }

完成客户端配置后,启动客户端,它将根据配置启动或连接到Scanpy-MCP服务器。

基本使用方法

一旦Scanpy-MCP服务器在客户端中成功运行并连接,LLM客户端就能够发现服务器提供的功能(工具)。用户可以通过自然语言向LLM提出单细胞数据分析相关的请求。LLM将理解用户的意图,并将其转化为对Scanpy-MCP服务器提供的具体工具的调用(例如,调用'io_read'读取数据,调用'pp_normalize_total'进行标准化,调用'tl_pca'进行主成分分析等)。服务器执行请求后,将结果(如处理后的数据状态、分析结果、图表信息等)返回给客户端,LLM再将结果以用户友好的方式呈现。用户无需直接编写Scanpy代码,即可完成复杂的生物信息学分析。

信息

分类

AI与计算