Agent skill

Ensembl REST API

by wentorai in wentorai/research-plugins

Query gene, sequence, and variant data via the Ensembl REST API

MITAuto-check passedBackend & APIs

Install Ensembl REST API

skills CLI
$ npx skills add wentorai/research-plugins --skill ensembl-rest-api -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install wentorai/research-plugins ensembl-rest-api --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/domains/biomedical/ensembl-rest-api .claude/skills/ensembl-rest-api && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ensembl-rest-api
GitHub stars
298
Used in
1 other repo
Token cost
~2k tokens
SKILL.md length
472 words
Files
1
Skills in repo
405
Repo updated
First seen
Licence
MIT

At a glance

Query gene, sequence, and variant data via the Ensembl REST API

  • Tasks that involve REST APIs
  • SKILL.md covers Overview, Authentication, Core Endpoints and Rate Limits, plus 3 more sections
  • Calls curl; reaches rest.ensembl.org and grch37.rest.ensembl.org
  • Tasks that involve Bioinformatics

What it does

Ensembl REST API is an agent skill from wentorai/research-plugins. Query gene, sequence, and variant data via the Ensembl REST API

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Backend & APIs, covering REST APIs and Bioinformatics. It works with Ensembl. The repository describes itself as: 350+ academic research skills, MCP configs, and plugins for Research-Claw and AI agents. The licence is MIT.

When your agent uses it

  • Tasks that involve REST APIs
  • Tasks that involve Bioinformatics

Example prompts

  • “/ensembl-rest-api”

Requirements

  • Python 3

What it can do on your machine

Read from SKILL.md and the folder at commit bf44b3c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • rest.ensembl.org
    • grch37.rest.ensembl.org

    Also links to:

    • ensembl.org
    • pachterlab.github.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ensembl REST API loads about 2k tokens when it runs. Until then it costs about 20 tokens; SKILL.md has 472 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~20
When it runs · the whole SKILL.md, loaded when a task matches
~2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from wentorai/research-plugins at commit bf44b3c, republished under its MIT licence (© wentorai). 472 words, ~1,991 tokens.

Download SKILL.mdSave it as .claude/skills/ensembl-rest-api/SKILL.md (or your agent's skills folder).
name
ensembl-rest-api
description
Query gene, sequence, and variant data via the Ensembl REST API

Ensembl REST API Guide

Overview

Ensembl is a genome browser and annotation system maintained by EMBL-EBI and the Wellcome Sanger Institute, providing reference assemblies, gene annotations, variant data, and comparative genomics for over 300 vertebrate genomes. It is the genomic reference underpinning gget, PyEnsembl, and BioMart.

The REST API exposes Ensembl data via stateless HTTP. Researchers can look up genes by symbol or stable ID, retrieve genomic/cDNA/protein sequences, query variant annotations (rsIDs, clinical significance, consequences), access cross-references (HGNC, UniProt, RefSeq, OMIM), and obtain assembly metadata. Responses in JSON or XML.

Authentication

No authentication required. All endpoints are publicly accessible. Users needing higher throughput can register for an API token.

Core Endpoints

lookup/symbol: Gene Lookup by Symbol

Retrieve gene metadata: coordinates, biotype, canonical transcript.

  • URL: GET https://rest.ensembl.org/lookup/symbol/{species}/{symbol}
  • Parameters:
ParameterTypeRequiredDescription
speciesstringYesSpecies name (e.g., homo_sapiens)
symbolstringYesGene symbol (e.g., BRCA1, TP53)
expandintNoSet to 1 to include transcripts and translations
content-typestringYesapplication/json or text/xml
  • Example:
bash
curl "https://rest.ensembl.org/lookup/symbol/homo_sapiens/BRCA1?content-type=application/json"
  • Response (actual):
json
{
  "display_name": "BRCA1",
  "description": "BRCA1 DNA repair associated [Source:HGNC Symbol;Acc:HGNC:1100]",
  "object_type": "Gene", "species": "homo_sapiens",
  "assembly_name": "GRCh38", "biotype": "protein_coding",
  "seq_region_name": "17", "start": 43044292, "end": 43170245, "strand": -1,
  "id": "ENSG00000012048", "canonical_transcript": "ENST00000357654.9"
}
sequence/id: Sequence Retrieval

Retrieve genomic, cDNA, CDS, or protein sequences by Ensembl stable ID.

  • URL: GET https://rest.ensembl.org/sequence/id/{id}
  • Parameters:
ParameterTypeRequiredDescription
idstringYesEnsembl stable ID (e.g., ENSG00000012048)
typestringNogenomic, cdna, cds, or protein
expand_5primeintNoExpand 5' flanking region by N bases
expand_3primeintNoExpand 3' flanking region by N bases
content-typestringYesapplication/json or text/plain (FASTA)
  • Example:
bash
curl "https://rest.ensembl.org/sequence/id/ENSG00000012048?content-type=application/json&type=genomic"
  • Response (actual, seq truncated):
json
{
  "id": "ENSG00000012048", "query": "ENSG00000012048",
  "desc": "chromosome:GRCh38:17:43044292:43170245:-1",
  "molecule": "DNA",
  "seq": "AAAGCGTGGGAATTACAGATAAATTAAAACTGTGGAACCCCTTTCCTCGGCTGCCGCCAAGGTGTTCGG..."
}
xrefs/symbol: Cross-References

Map a gene symbol to Ensembl stable IDs and external database identifiers.

  • URL: GET https://rest.ensembl.org/xrefs/symbol/{species}/{symbol}
  • Key params: species (required), symbol (required), external_db (optional filter, e.g., UniProt)
  • Example:
bash
curl "https://rest.ensembl.org/xrefs/symbol/homo_sapiens/TP53?content-type=application/json"
  • Response (actual): [{"type":"gene","id":"ENSG00000141510"},{"type":"gene","id":"LRG_321"}]

Use xrefs/id/{id} to expand an Ensembl ID to all external cross-references (UniProt, HGNC, RefSeq, OMIM).

Show full SKILL.md (189 more words)Show less
variation: Variant Annotation

Retrieve variant data by rsID: mappings, alleles, consequence, clinical significance.

  • URL: GET https://rest.ensembl.org/variation/{species}/{id}
  • Key params: species (required), id (required, e.g., rs699)
  • Example:
bash
curl "https://rest.ensembl.org/variation/homo_sapiens/rs699?content-type=application/json"
  • Response (actual, synonyms truncated):
json
{
  "name": "rs699", "var_class": "SNP",
  "most_severe_consequence": "missense_variant",
  "clinical_significance": ["benign"],
  "evidence": ["Frequency","1000Genomes","Cited","ESP","Phenotype_or_Disease","ExAC","TOPMed","gnomAD"],
  "mappings": [{"location":"1:230710048-230710048","allele_string":"A/G","strand":1,"assembly_name":"GRCh38"}]
}
info/assembly: Assembly Metadata
  • URL: GET https://rest.ensembl.org/info/assembly/{species}
  • Response (actual): Returns assembly_name ("GRCh38.p14"), assembly_date ("2013-12"), assembly_accession ("GCA_000001405.29"), full karyotype array (1-22, X, Y, MT), and 347 top_level_region entries.

Rate Limits

  • Without token: 15 requests per second per IP.
  • With token: higher limits available upon registration.
  • Response headers: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset on every response.
  • Batch POST endpoints (/lookup/id, /sequence/id): accept up to 1000 IDs per request.
  • GRCh37 mirror: https://grch37.rest.ensembl.org

Academic Use Cases

  • Gene annotation: Look up coordinates and biotypes for HGNC symbols to annotate RNA-seq results.
  • Variant interpretation: Retrieve consequence types and clinical significance for GWAS rsIDs.
  • ID mapping: Map between Ensembl, UniProt, RefSeq, and HGNC identifiers.
  • Primer design: Fetch genomic sequences with flanking regions for PCR or CRISPR targeting.
  • Comparative genomics: Query homology endpoints for orthologs across species.

Code Examples (Python)

Gene Lookup and Sequence Retrieval
python
import requests

BASE = "https://rest.ensembl.org"
HEADERS = {"Content-Type": "application/json"}

gene = requests.get(f"{BASE}/lookup/symbol/homo_sapiens/BRCA1", headers=HEADERS).json()
print(f"{gene['display_name']} ({gene['id']}) chr{gene['seq_region_name']}:{gene['start']}-{gene['end']}")

seq = requests.get(f"{BASE}/sequence/id/{gene['id']}?type=cds", headers=HEADERS).json()
print(f"CDS length: {len(seq['seq'])} bp")
Batch ID Lookup (POST)
python
import requests

ids = ["ENSG00000012048", "ENSG00000141510", "ENSG00000157764"]  # BRCA1, TP53, BRAF
resp = requests.post(
    "https://rest.ensembl.org/lookup/id",
    headers={"Content-Type": "application/json", "Accept": "application/json"},
    json={"ids": ids}
)
for ens_id, info in resp.json().items():
    print(f"{info['display_name']:10s} chr{info['seq_region_name']}:{info['start']}-{info['end']}")
Variant Annotation Pipeline
python
import requests

for rsid in ["rs699", "rs1042522", "rs334"]:
    v = requests.get(
        f"https://rest.ensembl.org/variation/homo_sapiens/{rsid}",
        headers={"Content-Type": "application/json"}
    ).json()
    loc = v["mappings"][0]["location"] if v.get("mappings") else "N/A"
    print(f"{v['name']:12s} {v['var_class']:5s} {v['most_severe_consequence']:25s} {loc}")

References

© wentorai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/domains/biomedical/ensembl-rest-api of wentorai/research-plugins.

Open the folder on GitHubat commit bf44b3c

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in wentorai/research-plugins, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Ensembl REST API next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Ensembl REST API compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ensembl REST API this skillwentorai/research-plugins2981 repos~2kAutomated safety check: PassMIT
Snpeff Variant Annotationjaechang-hits/SciAgent-Skills3711 repos~5.4kAutomated safety check: PassMIT
Bio Ensembl RESTGPTomics/bioSkills1.2k2 repos~3.6kAutomated safety check: PassMIT
Ensembl Databaseaipoch/medical-research-skills2k—~1.5kAutomated safety check: PassMIT
Mouse Phenome Databasejaechang-hits/SciAgent-Skills3711 repos~6.8kAutomated safety check: PassCC-BY-4.0
Encode Ccres Databasegoogle-deepmind/science-skills3.2k1 repos~1.7kAutomated safety check: PassApache-2.0

Similar skills

  • Snpeff Variant Annotation

    jaechang-hits/SciAgent-Skills

    Annotate and filter VCF variants with SnpEff and SnpSift. An agent skill from jaechang-hits/SciAgent-Skills.

    371 GitHub starsUsed in 1 repo~5.4k tokens
    Research & ScienceAuto-check passed
  • Bio Ensembl REST

    GPTomics/bioSkills

    Query the Ensembl REST API for gene/transcript/protein lookup, sequence retrieval, comparative genomics (Compara), variant effect prediction (VEP), regulatory features, and cross-species…

    1.2k GitHub starsUsed in 2 repos~3.6k tokens
    Research & ScienceAuto-check passed
  • Ensembl Database

    aipoch/medical-research-skills

    Access Ensembl REST API for vertebrate genomic data; use when you need gene/ID lookups, sequence retrieval, variant effect prediction (VEP), or homology/assembly coordinate mapping.

    2k GitHub stars~1.5k tokensUpdated 22 days ago
    Research & ScienceAuto-check passed
  • Mouse Phenome Database

    jaechang-hits/SciAgent-Skills

    Retrieve mouse phenotype data from the Jackson Laboratory Mouse Phenome Database (MPD) via its REST API.

    371 GitHub starsUsed in 1 repo~6.8k tokens
    Knowledge ManagementAuto-check passed
  • Encode Ccres Database

    google-deepmind/science-skills

    Query the ENCODE Registry of cis-Regulatory Elements (cCREs) via the SCREEN GraphQL API, or make custom queries to the ENCODE Portal REST API for experiments and files (ChIP-seq peaks, etc.).

    3.2k GitHub starsUsed in 1 repo~1.7k tokens
    Backend & APIsAuto-check passed
  • Bio Ortholog Inference

    GPTomics/bioSkills

    Pull pre-computed ortholog calls from public databases (OrthoDB, Ensembl Compara, OMA browser, eggNOG, PANTHER, KEGG Orthology, HomoloGene) via their REST APIs.

    1.2k GitHub starsUsed in 2 repos~4.6k tokens
    Backend & APIsAuto-check passed

More from wentorai/research-plugins

All 405 skills in this repo
  • Abstract Writing Guide

    wentorai/research-plugins

    Craft structured research abstracts that maximize clarity and journal acceptance

    298 GitHub starsUsed in 1 repo~1.7k tokens
    Auto-check passed
  • Academic Citation Manager

    wentorai/research-plugins

    Manage academic citations across BibTeX, APA, MLA, and Chicago formats

    298 GitHub starsUsed in 1 repo~2.7k tokens
    Auto-check passed
  • Academic Paper Summarizer

    wentorai/research-plugins

    Summarize academic papers with structured extraction of key elements

    298 GitHub starsUsed in 1 repo~1.4k tokens
    Auto-check passed
  • Academic Study Methods

    wentorai/research-plugins

    Evidence-based study techniques for academic learning and retention

    298 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Academic Tone Guide

    wentorai/research-plugins

    Adjust writing tone and register for academic audiences and venues

    298 GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Academic Translation Guide

    wentorai/research-plugins

    Academic translation, post-editing, and Chinglish correction guide

    298 GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed

Works with

Categories

Questions about Ensembl REST API

What does Ensembl REST API do?

Query gene, sequence, and variant data via the Ensembl REST API. Ensembl REST API is an agent skill from wentorai/research-plugins.

When should I use Ensembl REST API?

Ensembl REST API fits situations like: tasks that involve REST APIs; tasks that involve Bioinformatics.

How do I install Ensembl REST API in Claude Code?

Run `npx skills add wentorai/research-plugins --skill ensembl-rest-api -a claude-code`. Or copy the skill folder (skills/domains/biomedical/ensembl-rest-api in wentorai/research-plugins) into .claude/skills/ensembl-rest-api in your project. Claude Code loads it when a task matches its description.

How do I install Ensembl REST API in Codex?

Run `npx skills add wentorai/research-plugins --skill ensembl-rest-api -a codex`. Or copy the skill folder (skills/domains/biomedical/ensembl-rest-api in wentorai/research-plugins) into .agents/skills/ensembl-rest-api in your project. Codex loads it when a task matches its description.

Can I use Ensembl REST API in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add wentorai/research-plugins --skill ensembl-rest-api -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ensembl-rest-api, .gemini/skills/ensembl-rest-api, .github/skills/ensembl-rest-api and .opencode/skills/ensembl-rest-api in your project.

What does Ensembl REST API need to run?

Going by SKILL.md and its folder, Ensembl REST API needs the command-line tools its instructions call (curl). Our summary lists: Python 3.

Does Ensembl REST API access the network?

SKILL.md names 4 domains. In commands or code: rest.ensembl.org and grch37.rest.ensembl.org; the agent is likely to contact these when it follows the instructions. As links in the text: ensembl.org and pachterlab.github.io. This is read from the text; nothing was executed.

Is Ensembl REST API safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Ensembl REST API use?

Ensembl REST API is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ensembl REST API use?

About 2k tokens (SKILL.md is roughly 8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ensembl REST API?

Skills that share tags, products or a category with Ensembl REST API: Snpeff Variant Annotation (jaechang-hits/SciAgent-Skills, 371 stars), Bio Ensembl REST (GPTomics/bioSkills, 1.2k stars), Ensembl Database (aipoch/medical-research-skills, 2k stars) and Mouse Phenome Database (jaechang-hits/SciAgent-Skills, 371 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ensembl REST API?

wentorai (a GitHub user) maintains it in wentorai/research-plugins, which has 298 GitHub stars. The repository holds 405 skills in this directory. The repository was last updated on June 19, 2026.

Source: wentorai/research-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.