Agent SkillsRunchuan-BU/BioClaw › query-interpro

query-interpro

GitHub

查询 InterPro 数据库以获取蛋白质结构域、家族及功能位点信息。适用于询问蛋白质结构域、家族归属、功能位点或基序的场景,通过 REST API 检索并解析蛋白质注释数据。

container/skills/query-interpro/SKILL.md Runchuan-BU/BioClaw

Trigger Scenarios

interpro protein domain domain architecture protein family functional site motif

Install

npx skills add Runchuan-BU/BioClaw --skill query-interpro -g -y
More Options

Non-standard path

npx skills add https://github.com/Runchuan-BU/BioClaw/tree/main/container/skills/query-interpro -g -y

Use without installing

npx skills use Runchuan-BU/BioClaw@query-interpro

指定 Agent (Claude Code)

npx skills add Runchuan-BU/BioClaw --skill query-interpro -a claude-code -g -y

安装 repo 全部 skill

npx skills add Runchuan-BU/BioClaw --all -g -y

预览 repo 内 skill

npx skills add Runchuan-BU/BioClaw --list

SKILL.md

Frontmatter
{
    "name": "query-interpro",
    "description": "Query InterPro for protein domains and families. Use when user asks about protein domains, functional sites, protein families, domain architecture, or motifs. Triggers on \"interpro\", \"protein domain\", \"domain architecture\", \"protein family\", \"functional site\", \"motif\"."
}

InterPro Protein Domain Database

Query the InterPro REST API for protein domains, families, and functional sites.

When to Use

  • User asks about domains in a protein
  • User wants to know what family a protein belongs to
  • User asks about functional sites or motifs
  • User wants domain architecture visualization

How to Execute

import requests
import json

BASE_URL = "https://www.ebi.ac.uk/interpro/api"

# 1. Get protein annotation (domains/families for a UniProt ID)
def get_protein_domains(uniprot_id):
    url = f"{BASE_URL}/protein/uniprot/{uniprot_id}"
    r = requests.get(url, headers={"Accept": "application/json"})
    r.raise_for_status()
    return r.json()

# 2. Get InterPro entry details
def get_interpro_entry(interpro_id):
    url = f"{BASE_URL}/entry/interpro/{interpro_id}"
    r = requests.get(url, headers={"Accept": "application/json"})
    r.raise_for_status()
    return r.json()

# 3. Search InterPro by text
def search_interpro(query, max_results=10):
    url = f"{BASE_URL}/entry/interpro"
    params = {"search": query, "page_size": max_results}
    r = requests.get(url, params=params, headers={"Accept": "application/json"})
    r.raise_for_status()
    return r.json()

# 4. Get domain matches for a protein
def get_domain_matches(uniprot_id):
    url = f"{BASE_URL}/protein/uniprot/{uniprot_id}/entry/interpro"
    r = requests.get(url, headers={"Accept": "application/json"})
    r.raise_for_status()
    return r.json()

# Example: TP53 domains
domains = get_domain_matches("P04637")
for result in domains.get("results", []):
    meta = result.get("metadata", {})
    name = meta.get("name", "N/A")
    ipr_type = meta.get("type", "N/A")
    accession = meta.get("accession", "N/A")
    proteins = result.get("proteins", [])
    if proteins:
        locations = proteins[0].get("entry_protein_locations", [])
        for loc in locations:
            for frag in loc.get("fragments", []):
                start = frag.get("start", "?")
                end = frag.get("end", "?")
                print(f"{accession} ({ipr_type}): {name} [{start}-{end}]")

Entry Types

  • domain — Structural/functional domain
  • family — Protein family
  • homologous_superfamily — Distant homologs
  • repeat — Repeated motif
  • site — Active/binding site

Follow-up Suggestions

  • "Want me to compare domains across species?"
  • "Should I map these domains onto the 3D structure?"
  • "Want me to find other proteins with the same domain?"

Version History

  • a79b8c4 Current 2026-07-25 11:44

Same Skill Collection

.claude/skills/add-figure/SKILL.md
.claude/skills/add-gmail/SKILL.md
.claude/skills/add-omics-runtime-pack/SKILL.md
.claude/skills/add-telegram-swarm/SKILL.md
.claude/skills/add-telegram/SKILL.md
.claude/skills/add-voice-transcription/SKILL.md
.claude/skills/convert-to-docker/SKILL.md
.claude/skills/customize/SKILL.md
.claude/skills/debug/SKILL.md
.claude/skills/setup/SKILL.md
.claude/skills/x-integration/SKILL.md
container/skills/agent-browser/SKILL.md
container/skills/atac-seq/SKILL.md
container/skills/bio-tools/SKILL.md
container/skills/blast-search/SKILL.md
container/skills/cell-annotation/SKILL.md
container/skills/chip-seq/SKILL.md
container/skills/differential-expression/SKILL.md
container/skills/metagenomics/SKILL.md
container/skills/proteomics/SKILL.md
container/skills/pubmed-search/SKILL.md
container/skills/query-alphafold/SKILL.md
container/skills/query-clinvar/SKILL.md
container/skills/query-ensembl/SKILL.md
container/skills/query-geo/SKILL.md
container/skills/query-kegg/SKILL.md
container/skills/query-opentarget/SKILL.md
container/skills/query-pdb/SKILL.md
container/skills/query-reactome/SKILL.md
container/skills/query-stringdb/SKILL.md
container/skills/query-uniprot/SKILL.md
container/skills/report-template/SKILL.md
container/skills/scrna-preprocessing-clustering/SKILL.md
container/skills/sds-gel-review/SKILL.md
container/skills/sec-report/SKILL.md
container/skills/sequence-analysis/SKILL.md
container/skills/skills-hub/SKILL.md
container/skills/structural-biology/SKILL.md
container/skills/query-genomic-intelligence/SKILL.md

Metadata

Files
0
Version
50a7d9b
Hash
dcd160f8
Indexed
2026-07-25 11:44

trang chủ - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-09-02 01:56
浙ICP备14020137号-1 $bản đồ khách truy cập$