使用说明
项目简介
Biomart-MCP 是一个基于 Model Context Protocol (MCP) 的服务器,旨在为大型语言模型 (LLM) 提供访问 Ensembl Biomart 数据库的接口。通过 Biomart-MCP,LLM 可以调用工具来查询基因注释、基因标识符和其他生物数据,从而扩展 LLM 在生物信息学领域的应用能力。
主要功能点
- Mart 和 Dataset 发现: 允许 LLM 浏览和发现 Ensembl Biomart 中可用的不同数据库 (marts) 和数据集 (datasets)。
- 属性和过滤器探索: 提供工具来查看数据集的属性 (attributes) 和过滤器 (filters),帮助 LLM 理解可查询的数据字段和筛选条件。
- 数据检索: 支持 LLM 使用指定的属性和过滤器从 Biomart 数据库中检索生物数据,返回 CSV 格式的结果。
- ID 转换: 提供基因或蛋白 ID 的跨数据库转换功能,例如将基因符号转换为 Ensembl ID。
- 批量 ID 转换: 支持批量转换多个 ID,提高数据处理效率。
安装步骤
- 克隆仓库:
git clone https://github.com/jzinno/biomart-mcp.git cd biomart-mcp - 安装依赖:
Biomart-MCP 使用 'uv' 包管理器,并依赖 'mcp' 和 'pybiomart' 库。
或者,你也可以使用 'uv venv' 创建虚拟环境并手动安装依赖:uv run --with mcp[cli] mcp install --with pybiomart biomart-mcp.pyuv venv source .venv/bin/activate # Linux/MacOS # .venv\Scripts\activate # Windows uv sync # 或 uv add mcp[cli] pybiomart
服务器配置
要将 Biomart-MCP 服务器添加到 MCP 客户端(例如 Claude Desktop 或 Cursor),你需要配置服务器启动命令。以下是配置信息示例 (JSON 格式):
{ "server_name": "biomart", "command": "uv run", "args": [ "--with", "mcp[cli]", "--with", "pybiomart", "mcp", "run", "/your/path/to/biomart-mcp.py" // 请替换为 biomart-mcp.py 文件的实际路径 ] }
配置参数说明:
- 'server_name': 自定义服务器名称,例如 "biomart",在客户端中用于标识该服务器。
- 'command': 运行服务器的命令,这里使用 'uv run' 来运行 Python 脚本并管理依赖。
- 'args': 传递给 'uv run' 命令的参数列表:
- '--with mcp[cli]': 确保包含 MCP 命令行工具,这是运行 MCP 服务器的必要组件。
- '--with pybiomart': 指定包含 'pybiomart' 库,Biomart-MCP 依赖此库来访问 Biomart 数据库。
- 'mcp run': 实际执行 MCP 服务器的命令。
- '/your/path/to/biomart-mcp.py': 重要: 请将 '/your/path/to/biomart-mcp.py' 替换为 'biomart-mcp.py' 脚本在您本地文件系统中的绝对路径。例如,如果 'biomart-mcp.py' 位于用户主目录下的 'biomart-mcp' 文件夹中,路径可能类似于 '/Users/yourusername/biomart-mcp/biomart-mcp.py' (MacOS/Linux) 或 'C:\Users\YourUsername\biomart-mcp\biomart-mcp.py' (Windows)。
在 MCP 客户端中添加服务器时,请务必正确填写 'command' 和 'args',特别是要将脚本路径替换为实际路径。
基本使用方法
- 确保 Biomart-MCP 服务器已成功添加到 MCP 客户端。
- 在 LLM 的对话界面中,可以使用自然语言指令来调用 Biomart-MCP 提供的工具。例如:
- "列出 Ensembl 基因 mart 中的所有数据集"
- "在人类基因数据集中查找基因 'TP53' 的 Ensembl ID"
- "获取人类基因数据集中 'chromosome_name' 为 '1' 且 'gene_biotype' 为 'protein_coding' 的基因的 Ensembl ID 和基因名称"
LLM 将解析这些指令,并调用 Biomart-MCP 服务器提供的相应工具来查询 Biomart 数据库,并将结果返回给用户。
信息
分类
数据库与文件