mcpField
T
tooluniverse-expression-data-retrieval

tooluniverse-expression-data-retrieval

github.com/mims-harvard数据与数据库1.8k406 次安装2 天前更新
代码仓库

关于 tooluniverse-expression-data-retrieval

用于检索基因表达实验和多组学数据集的 ToolUniverse 技能,提供查询消歧、数据集搜索及质量评估流程。适合需要按物种、组织和实验设计筛选公开研究数据的用户。

主要功能

  1. 01按基因、疾病或平台搜索实验
  2. 02获取实验元数据、样本和文件
  3. 03评估重复数与注释完整度
  4. 04检索多组学及基线表达数据
  5. 05按数据质量整理结果报告

适用场景

  1. 01寻找特定疾病或组织的 RNA-seq 数据
  2. 02比较候选实验的样本设计和质量
  3. 03查找包含多种组学的数据集
  4. 04获取基因在不同组织的表达背景

MCP 相关

该技能通过 ToolUniverse 工具搜索 ArrayExpress、BioStudies、GEO 等来源,并获取实验详情、样本注释、数据文件及表达信息。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-expression-data-retrieval

安装后在 Claude Code 中输入/tooluniverse-expression-data-retrieval确认已加载。

附带文件CHECKLIST.mdexamples.md

详细介绍

基因表达与组学数据检索

检索基因表达实验和多组学数据集,并进行消歧和质量评估。

重要:在工具调用中始终使用英文术语。使用用户的语言回复。

先查找,不要猜测:切勿假设有哪些数据集或其登录号。务必搜索确认。

领域推理

检索前,确定:物种、组织、实验设计(病例对照/时间序列/剂量反应)。这些因素会影响要搜索的数据库以及结果的解读方式。RNA-seq 的动态范围更广;微阵列拥有大量历史数据。优先选择具有 >=3 个生物学重复、注释完整且同时提供原始数据和处理后数据的实验。

工作流

Phase 0: Clarify (if ambiguous) → Phase 1: Disambiguate → Phase 2: Search & Retrieve → Phase 3: Report

阶段 0:澄清(需要时)

仅在以下情况下提问:基因名称有歧义、组织/条件不明确、未指定物种。 以下情况跳过:指定了登录号(E-MTAB-, E-GEOD-, S-BSST*)、明确说明了疾病/组织和物种、明确提出平台要求。


阶段 1:查询消歧

确定官方基因符号(人类使用 HGNC,小鼠使用 MGI)。记录常见别名以扩展搜索范围。

用户查询类型搜索策略
特定登录号直接检索
基因 + 条件"[gene] [condition]" + 物种筛选
仅疾病"[disease]" + 物种筛选
特定技术添加平台关键词

阶段 2:数据检索(内部)

静默搜索。不要叙述搜索过程。

# ArrayExpress search
result = tu.tools.arrayexpress_search_experiments(keywords="[gene/disease]", species="[species]", limit=20)

# Get experiment details, samples, files
details = tu.tools.arrayexpress_get_experiment(experiment_id=accession)
samples = tu.tools.arrayexpress_get_experiment_samples(experiment_id=accession)
files = tu.tools.arrayexpress_get_experiment_files(experiment_id=accession)

# BioStudies for multi-omics
biostudies = tu.tools.biostudies_search(query="[keywords]", pageSize=10)
study = tu.tools.biostudies_get_study(accession=study_accession)
study_files = tu.tools.biostudies_get_study_files(accession=study_accession)
回退链
主要方式回退方式
ArrayExpress 搜索BioStudies 搜索
arrayexpress_get_experimentbiostudies_get_study
arrayexpress_get_experiment_files注明“文件不可用”

阶段 3:报告数据集概况

以数据集搜索报告的形式呈现。隐藏搜索过程。包括:

  1. 搜索摘要:查询内容、搜索的数据库、结果数量
  2. 排名靠前的实验(逐个实验):
    • 登录号、物种、类型(RNA-seq/微阵列)、平台、样本数、日期
    • 描述、实验设计(条件、重复、组织)
    • 样本组表格、数据文件表格
    • 质量评估(●●●/●●○/●○○)
  3. 多组学研究(来自 BioStudies):登录号、类型、所含数据类型
  4. 汇总表:所有实验的排名
  5. 建议:最适合用户目的的数据集、整合注意事项
  6. 数据访问:下载链接、数据库 URL

数据质量等级

等级符号标准
高●●●>=3 个生物学重复、元数据完整、有处理后数据
中●●○2-3 个重复,或元数据存在一些缺失
低●○○无重复、元数据稀疏或存在访问问题
注意○○○单一样本、无重复、平台过时

推理框架

数据集质量:优先选择具有 >=3 个生物学重复、注释完整且同时提供原始数据和处理后数据的数据集。单重复实验可提供参考,但不能作为唯一证据。

平台比较:RNA-seq = 动态范围更广,可发现新转录本。微阵列 = 受探针限制,但拥有大量历史数据。跨平台数据整合需要进行批次校正。

元数据评分:按以下各项以 0-5 分评分:(1) 样本注释,(2) 设计说明,(3) 流程说明,(4) 原始数据已存储,(5) 已关联出版物。得分 <=2 时应谨慎对待。

GEO 与 ArrayExpress:GEO 覆盖面更广(包含较早期研究);ArrayExpress 对元数据的要求更严格。BioStudies 收录多组学数据。两者都要搜索。

综合分析问题
  1. 该数据集是否具有足够的重复和元数据,能够支持预期分析?
  2. 是否存在批次效应或混杂变量?
  3. 多个数据集是否呈现一致的模式,能否进行整合?

错误处理

错误响应
"No experiments found"扩大关键词范围,移除物种筛选条件,尝试使用同义词
"Accession not found"核实格式,检查是否已撤回
"Files not available"注明:“提交者限制了数据文件的访问”
"API timeout"重试一次,并注明“(元数据检索不完整)”

工具参考

ArrayExpress:arrayexpress_search_experiments(搜索)、arrayexpress_get_experiment(元数据)、arrayexpress_get_experiment_files(下载)、arrayexpress_get_experiment_samples(注释)

BioStudies:biostudies_search(搜索)、biostudies_get_study(元数据和章节)、biostudies_get_study_files(文件)

其他来源:

  • GEO_search_rnaseq_datasets / geo_search_datasets —— GEO(最大的 RNA-seq 仓库)
  • OmicsDI_search_datasets —— 跨仓库聚合(GEO+ArrayExpress+PRIDE+MassIVE)
  • GTEx_get_expression_summary —— 基线组织表达(54 种正常组织,参数:gene_symbol)
  • ENAPortal_search_studies —— 测序研究(参数:query,其中 description="...")
  • CxGDisc_search_datasets —— 单细胞数据集(需要精确的疾病本体术语)
  • GxA_list_experiments / GxA_get_experiment_info / GxA_get_experiment_expression —— EBI Gene Expression Atlas:经过整理的基线(组织)和差异(条件比较)bulk RNA-seq/微阵列实验。先按 species 和 experiment_type("baseline" 与 "differential")筛选 GxA_list_experiments;GxA_get_experiment_expression 需要指定的 experiment_accession(例如 E-MTAB-2836)和 gene_id。
  • ARCHS4_get_gene_expression / ARCHS4_get_gene_correlations —— ARCHS4:人类/小鼠组织和细胞系的箱线图表达统计值(最小值/Q1/中位数/Q3/最大值,log2),以及基于 30 多万个经过统一重新处理的 RNA-seq 样本,按 Pearson 相关性排列的共表达基因。适合快速检查基线表达是否合理,或在不运行完整差异表达分析流程的情况下寻找可能的协同调控基因。
  • Bgee_search_genes / Bgee_get_gene_expression / Bgee_list_species —— Bgee:涵盖 29 种以上动物的、按组织整理的基线表达结果(相比之下,ARCHS4 仅涵盖重新处理的 RNA-seq 数据中的人类/小鼠,GxA 则涵盖经过整理但范围较窄的实验集)。Bgee_get_gene_expression 需要 Ensembl 基因 ID 和 NCBI 分类 ID,两者缺一不可(例如,人类 TP53 可用 gene_id="ENSG00000141510"、species_id="9606");如果只有基因符号,请先用 Bgee_search_genes 查询基因 ID。使用 Bgee_list_species 确认是否涵盖某个物种,再判断 Bgee 是否包含该物种的数据。最适合跨物种比较问题(“基因 X 在小鼠和斑马鱼中是否表达于相同组织?”),不适合查找可供下载的原始测序数据集。
  • PubMed_search_articles —— 通过出版物发现数据集

搜索参数

ArrayExpress:keywords(自由文本)、species(学名)、array(平台筛选条件)、limit BioStudies:query(自由文本)、limit

评论

支持 Markdown