mcpField
J
jaspar-database

jaspar-database

github.com/google-deepmind数据与数据库3.4k2.2k 次安装5 天前更新
代码仓库

关于 jaspar-database

用于查询 JASPAR 转录因子结合谱的命令行技能,适合将序列基序或基因组区域关联到潜在调控因子的研究者;提供矩阵查询、元数据、评分和序列推断命令。

主要功能

  1. 01将 TF 名称解析为矩阵 ID
  2. 02获取基序与元数据
  3. 03将 PFM 转换为 PWM 评分
  4. 04根据蛋白质序列推断谱
  5. 05获取 TFFM 元数据

适用场景

  1. 01从基因名称查找 TF 矩阵
  2. 02查看基序或 TF 家族信息
  3. 03使用 PWM 值对基序评分
  4. 04根据蛋白质序列探索谱

安装

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

$npx skills add https://github.com/google-deepmind/science-skills --skill jaspar-database

安装后在 Claude Code 中输入/jaspar-database确认已加载。

附带文件references/citation.bibscripts/jaspar_api.py

详细介绍

JASPAR 技能

JASPAR 是转录因子(TF)结合谱的权威开放数据库,这些谱以位置频率矩阵(PFM)的形式存储。

使用此技能,可将抽象序列基序或基因组区域映射到特定的生物调控因子(例如,“哪些 TF 会结合这里?”或“CTCF 的基序是什么?”)。

前提条件

  1. uv:阅读 uv 技能,并按照其中的设置说明,确保已安装 uv 且其位于 PATH 中。
  2. 用户通知:如果工作区根目录中尚不存在 .licenses/jaspar_database_LICENSE.txt,则(1)醒目地通知用户查看 https://jaspar.elixir.no/ 和 https://jaspar.elixir.no/api/ 上的条款,然后(2)创建该文件,记录通知文本和时间戳。

核心规则

重要:必须遵守 JASPAR API 使用条款,具体要求如下:

  • 使用封装脚本:查询数据库时,始终执行提供的辅助脚本,而非直接访问数据库。这些脚本会自动、平稳地强制执行所需的速率限制。
  • API 窗口大小上限:单次 API 查询的基因组窗口不得超过 100,000 bp(100kb)。查询较大区域时,jaspar_api.py 脚本会自动拆分请求,以绕过此限制。
  • 有效矩阵 ID:get_tf_motif、get_tf_metadata 和 get_tf_pwm 需要稳定的 JASPAR 矩阵 ID(例如 MA0488.2)。如果用户提供的是基因符号(例如 JUN),必须先使用 resolve_tf_id 进行解析。
  • 必须提供分类 ID:解析 ID 时必须提供 tax_id,以确保搜索范围明确。常用 ID:人类 = 9606,小鼠 = 10090。
  • 通知:如果使用了此技能,必须在输出中提及。

实用脚本

使用随附的 Python 脚本运行所有命令:

1. 将 TF 解析为矩阵 ID

将转录因子名称映射为稳定的矩阵 ID。如果只提供了基因名称,这是获取基序前必须执行的步骤。

uv run scripts/jaspar_api.py resolve_tf_id --name "JUN" --tax-id 9606
2. 获取 TF 基序(PFM)

获取特定 TF 的原始位置频率矩阵。支持 --format 标志。

uv run scripts/jaspar_api.py get_tf_motif --matrix-id "MA0488.2"
uv run scripts/jaspar_api.py get_tf_motif --matrix-id "MA0488.2" --format meme
3. 获取 TF 元数据

获取 TF 类别、家族以及外部数据库(例如 UniProt)的链接。支持 --format 标志。

uv run scripts/jaspar_api.py get_tf_metadata --matrix-id "MA0488.2"
uv run scripts/jaspar_api.py get_tf_metadata --matrix-id "MA0488.2" --format yaml
4. 计算 PWM(位置权重矩阵)

获取矩阵的 PFM,并将其转换为对数几率分数(PWM)。

uv run scripts/jaspar_api.py get_tf_pwm --matrix-id "MA0488.2"
uv run scripts/jaspar_api.py get_tf_pwm --matrix-id "MA0488.2" --pseudocount 0.1
5. 根据蛋白质序列推断矩阵

根据原始转录因子蛋白质序列推断可能的 JASPAR 矩阵谱。

uv run scripts/jaspar_api.py infer_from_sequence --sequence "QAQLLPSHHVG"
6. 获取 TF 灵活模型(TFFM)

获取 JASPAR TF 灵活模型的元数据。(注意:JASPAR TFFM 端点偶尔会出现 500 Internal Server 错误。)

uv run scripts/jaspar_api.py get_tffm --tffm-id "TFFM0001.1"
输出格式

get_tf_motif 和 get_tf_metadata 命令接受可选的 --format 标志。支持的格式:json(默认)、jsonp、jaspar、meme、transfac、pfm、yaml。

反模式

  • 不要将基因符号(例如 JUN)传给 get_tf_motif。必须传入 MA... 矩阵 ID。
  • 不要在解析 TF 名称时忘记添加 --tax-id。
  • 不要使用此技能来确定组织特异性的表观遗传可用性(JASPAR 展示的是潜在结合,而非实际的组织表达背景)。
  • 不要使用此技能来模拟特定蛋白质突变对结合的影响。

评论

支持 Markdown