uniprot-database

Query protein metadata, sequences, and annotations from UniProtKB, UniParc, and UniRef.

Updated Jan 8, 2026
One-click install
npx skills add https://github.com/arslan9024/White-Caves --skill uniprot-database-arslan9024
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: uniprot-database
Source: https://github.com/arslan9024/White-Caves/tree/main/.agents/skills/uniprot_database
Command: npx skills add https://github.com/arslan9024/White-Caves --skill uniprot-database-arslan9024

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires polite-http, and includes scripts (resource) and references (resource) components.

What problem does it solve? Retrieving accurate protein function, sequence, taxonomy, and cross-reference data requires navigating UniProt's REST and SPARQL APIs, which involve complex query syntax, pagination, and dataset selection. This Skill provides a single Python wrapper that handles searching, streaming, counting, ID mapping, and historical lookups without manual API construction. ## Core Features & Use Cases - Protein Search & Retrieval: Search UniProtKB, UniParc, and UniRef with field-specific queries, or fetch a single entry by accession, including historical versions via UniSave. - Bulk Data Streaming: Stream up to 10 million entries in TSV or FASTA format for large-scale annotation pipelines, with automatic pagination for smaller searches. - ID Mapping & SPARQL: Convert identifiers between UniProt and 100+ external databases (PDB, Ensembl, RefSeq, GeneID), and run SPARQL queries for exact sequence matching and complex graph discovery. - Use Case: A researcher needs all reviewed human proteins with their gene names. They run a count to estimate volume, then stream taxonomy_id:9606 AND reviewed:true to a TSV file for downstream analysis. ## Quick Start Ask the AI to search UniProt for reviewed human p53 entries and show the first five results with their accessions and gene names.

Frequently Asked Questions about uniprot-database

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I search UniProt for proteins by gene name?▼

Use the search command with a field-specific query such as `gene:p53 AND reviewed:true` and add `--limit 5` to preview results. Field prefixes like `gene:`, `protein_name:`, and `taxonomy_id:` avoid false positives from broad text searches.

How do I map UniProt IDs to PDB or Ensembl identifiers?▼

Use the map command with `--from_db` and `--to_db` arguments, for example mapping from UniProtKB_AC-ID to PDB or from Ensembl to UniProtKB. The tool supports over 100 databases including RefSeq, GeneID, and HGNC.

Can I search UniProt by an exact protein sequence?▼

The REST search endpoint does not support sequence-string lookups. Use the sparql command with a query matching `up:sequence/rdf:value` against UniProt or the UniParc graph for exact sequence matches.

What is the difference between UniProtKB, UniParc, and UniRef?▼

UniProtKB contains curated protein entries with functional annotations, UniParc is a non-redundant archive of sequences across all sources, and UniRef groups sequences into similarity clusters at 50, 90, and 100 percent identity.

Why does my UniProt bulk download fail or take too long?▼

Large queries without limits can return millions of entries. Always run the count command first, then use stream for full result sets since it does not support `--limit`, or use search with `--limit` for subsets.

How do I retrieve a deleted or older version of a UniProt entry?▼

Use the get command with `--dataset unisave` to access the UniSave archive. This retrieves previous entry versions and helps identify why a formerly valid accession no longer appears in current search results.