Help us improve
Share bugs, ideas, or general feedback.
From superpowers
Retrieves DNA/RNA sequences, raw reads (FASTQ), genome assemblies, and metadata from the European Nucleotide Archive via REST APIs and FTP for genomics and bioinformatics pipelines.
npx claudepluginhub lunartech-x/superpowers --plugin superpowersHow this skill is triggered — by the user, by Claude, or both
Slash command
/superpowers:enaThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
The European Nucleotide Archive (ENA) is a comprehensive public repository for nucleotide sequence data and associated metadata. Access and query DNA/RNA sequences, raw reads, genome assemblies, and functional annotations through REST APIs and FTP for genomics and bioinformatics pipelines.
Access European Nucleotide Archive (ENA) via API/FTP to retrieve DNA/RNA sequences, raw reads (FASTQ), genome assemblies, and metadata for genomics and bioinformatics pipelines.
Queries the European Nucleotide Archive for sequences, reads, assemblies, and annotations via REST APIs. Searches studies/samples, retrieves FASTA/EMBL, lists FASTQ/BAM file URLs, and resolves taxonomy or cross-references.
Downloads genomes, genes, virus sequences, and taxonomy data from NCBI using datasets and dataformat CLI tools. Handles summaries, orthologs, metadata to TSV conversion for bioinformatics workflows.
Share bugs, ideas, or general feedback.
The European Nucleotide Archive (ENA) is a comprehensive public repository for nucleotide sequence data and associated metadata. Access and query DNA/RNA sequences, raw reads, genome assemblies, and functional annotations through REST APIs and FTP for genomics and bioinformatics pipelines.
This skill should be used when:
ENA organizes data into hierarchical object types:
Studies/Projects - Group related data and control release dates. Studies are the primary unit for citing archived data.
Samples - Represent units of biomaterial from which sequencing libraries were produced. Samples must be registered before submitting most data types.
Raw Reads - Consist of:
Assemblies - Genome, transcriptome, metagenome, or metatranscriptome assemblies at various completion levels.
Sequences - Assembled and annotated sequences stored in the EMBL Nucleotide Sequence Database, including coding/non-coding regions and functional annotations.
Analyses - Results from computational analyses of sequence data.
Taxonomy Records - Taxonomic information including lineage and rank.
ENA provides multiple REST APIs for data access. Consult references/api_reference.md for detailed endpoint documentation.
Key APIs:
ENA Portal API - Advanced search functionality across all ENA data types
ENA Browser API - Direct retrieval of records and metadata
ENA Taxonomy REST API - Query taxonomic information
ENA Cross Reference Service - Access related records from external databases
CRAM Reference Registry - Retrieve reference sequences
Rate Limiting: All APIs have a rate limit of 50 requests per second. Exceeding this returns HTTP 429 (Too Many Requests).
Browser-Based Search:
Programmatic Queries:
Example API Query Pattern:
import requests
# Search for samples from a specific study
base_url = "https://www.ebi.ac.uk/ena/portal/api/search"
params = {
"result": "sample",
"query": "study_accession=PRJEB1234",
"format": "json",
"limit": 100
}
response = requests.get(base_url, params=params)
samples = response.json()
Metadata Formats:
Sequence Data:
Download Methods:
Retrieve raw sequencing reads by accession:
# Download run files using Browser API
accession = "ERR123456"
url = f"https://www.ebi.ac.uk/ena/browser/api/xml/{accession}"
Search for all samples in a study:
# Use Portal API to list samples
study_id = "PRJNA123456"
url = f"https://www.ebi.ac.uk/ena/portal/api/search?result=sample&query=study_accession={study_id}&format=tsv"
Find assemblies for a specific organism:
# Search assemblies by taxonomy
organism = "Escherichia coli"
url = f"https://www.ebi.ac.uk/ena/portal/api/search?result=assembly&query=tax_tree({organism})&format=json"
Get taxonomic lineage:
# Query taxonomy API
taxon_id = "562" # E. coli
url = f"https://www.ebi.ac.uk/ena/taxonomy/rest/tax-id/{taxon_id}"
Bulk Download Pattern:
BLAST Integration: Integrate with EBI's NCBI BLAST service (REST/SOAP API) for sequence similarity searches against ENA sequences.
Rate Limiting:
Data Citation:
API Response Handling:
Performance:
This skill includes detailed reference documentation for working with ENA:
api_reference.md - Comprehensive API endpoint documentation including:
Load this reference when constructing complex API queries, debugging API responses, or needing specific parameter details.