
UniProt MCP
Brings UniProt's protein database into Claude with 41 tools across eight families: entry retrieval, search, disease associations, variant lookup, sequence analysis, cross-references, taxonomy queries, and batch operations. The standout feature is per-response provenance records. Every answer includes the UniProt release, retrieval timestamp, canonical URL, and SHA-256 hash of the response body, which you can independently verify with uniprot_provenance_verify. That matters if you're in regulated biotech and need to prove a protein annotation claim still holds years later. Ships with offline replay support and release pinning. Built for traceability in contexts where "Claude said so" isn't documentation.
- GitHub stars
- 3
- tools
- 41
- transport
- STDIO
- last updated
- Nov 12, 2026
Tools
41 toolsPublic tool metadata for what this MCP can expose to an agent.
uniprot_get_entryFull UniProt entry (e.g. `P04637` for p53). Function, gene, organism, disease, cross-refs.
Full UniProt entry (e.g. `P04637` for p53). Function, gene, organism, disease, cross-refs.
No parameter schema in public metadata yet.
uniprot_searchUniProt query language — gene, organism, taxon ID, reviewed flag, free text.
UniProt query language — gene, organism, taxon ID, reviewed flag, free text.
No parameter schema in public metadata yet.
uniprot_get_sequenceFASTA. PIR-style provenance comment block above the first record (BLAST+ / biopython compatible).
FASTA. PIR-style provenance comment block above the first record (BLAST+ / biopython compatible).
No parameter schema in public metadata yet.
uniprot_get_featuresDomains, binding sites, PTMs, signal peptides — optional type filter.
Domains, binding sites, PTMs, signal peptides — optional type filter.
No parameter schema in public metadata yet.
uniprot_get_variantsNatural variants and disease mutations.
Natural variants and disease mutations.
No parameter schema in public metadata yet.
uniprot_get_go_termsGO annotations grouped by aspect (F / P / C).
GO annotations grouped by aspect (F / P / C).
No parameter schema in public metadata yet.
uniprot_get_cross_refsRaw cross-references to PDB, Pfam, Ensembl, Reactome, KEGG, STRING …
Raw cross-references to PDB, Pfam, Ensembl, Reactome, KEGG, STRING …
No parameter schema in public metadata yet.
uniprot_id_mappingMap IDs between databases (Gene_Name → UniProtKB, PDB → UniProtKB, …).
Map IDs between databases (Gene_Name → UniProtKB, PDB → UniProtKB, …).
No parameter schema in public metadata yet.
uniprot_batch_entriesUp to 100 entries in one call; invalid accessions filtered client-side.
Up to 100 entries in one call; invalid accessions filtered client-side.
No parameter schema in public metadata yet.
uniprot_taxonomy_searchSearch UniProt taxonomy by organism name.
Search UniProt taxonomy by organism name.
No parameter schema in public metadata yet.
uniprot_get_keywordKeyword by ID (e.g. `KW-0007` = Acetylation). Definition, synonyms, GO refs, hierarchy.
Keyword by ID (e.g. `KW-0007` = Acetylation). Definition, synonyms, GO refs, hierarchy.
No parameter schema in public metadata yet.
uniprot_search_keywordsFree-text keyword search.
Free-text keyword search.
No parameter schema in public metadata yet.
uniprot_get_subcellular_locationSubcellular-location term by ID (e.g. `SL-0039` = Cell membrane).
Subcellular-location term by ID (e.g. `SL-0039` = Cell membrane).
No parameter schema in public metadata yet.
uniprot_search_subcellular_locationsFree-text location search.
Free-text location search.
No parameter schema in public metadata yet.
uniprot_get_unirefUniRef cluster by ID (`UniRef50_P04637`, `UniRef90_P04637`, `UniRef100_P04637`).
UniRef cluster by ID (`UniRef50_P04637`, `UniRef90_P04637`, `UniRef100_P04637`).
No parameter schema in public metadata yet.
uniprot_search_unirefCluster search with `identity_tier` filter (50 / 90 / 100).
Cluster search with `identity_tier` filter (50 / 90 / 100).
No parameter schema in public metadata yet.
uniprot_get_uniparcSequence-archive record by UPI (`UPI000002ED67`).
Sequence-archive record by UPI (`UPI000002ED67`).
No parameter schema in public metadata yet.
uniprot_search_uniparcUniParc full-text search.
UniParc full-text search.
No parameter schema in public metadata yet.
uniprot_get_proteomeProteome by UP ID (`UP000005640` = human). Counts, BUSCO score, components.
Proteome by UP ID (`UP000005640` = human). Counts, BUSCO score, components.
No parameter schema in public metadata yet.
uniprot_search_proteomesFilter by organism / type / completeness.
Filter by organism / type / completeness.
No parameter schema in public metadata yet.
uniprot_get_citationCitation record by ID (typically a PubMed numeric ID).
Citation record by ID (typically a PubMed numeric ID).
No parameter schema in public metadata yet.
uniprot_search_citationsIndex search across UniProt citations.
Index search across UniProt citations.
No parameter schema in public metadata yet.
uniprot_resolve_pdbPDB structures: id + method + resolution + chain coverage.
PDB structures: id + method + resolution + chain coverage.
No parameter schema in public metadata yet.
uniprot_resolve_alphafoldAlphaFold model id + EBI viewer URL (model id only — for pLDDT call the dedicated tool below).
AlphaFold model id + EBI viewer URL (model id only — for pLDDT call the dedicated tool below).
No parameter schema in public metadata yet.
uniprot_resolve_interproInterPro signatures: id + entry name.
InterPro signatures: id + entry name.
No parameter schema in public metadata yet.
uniprot_resolve_chemblChEMBL drug-target id + EBI target-card URL.
ChEMBL drug-target id + EBI target-card URL.
No parameter schema in public metadata yet.
uniprot_compute_propertiesDerived sequence chemistry from the FASTA: MW / pI / GRAVY / aromaticity / charge / ε₂₈₀.
Derived sequence chemistry from the FASTA: MW / pI / GRAVY / aromaticity / charge / ε₂₈₀.
No parameter schema in public metadata yet.
uniprot_features_at_positionEvery feature overlapping a residue position. Critical for variant-effect interpretation.
Every feature overlapping a residue position. Critical for variant-effect interpretation.
No parameter schema in public metadata yet.
uniprot_lookup_variantHGVS-shorthand match (`R175H`, `V600E`, `R248*`) against UniProt's natural-variant features.
HGVS-shorthand match (`R175H`, `V600E`, `R248*`) against UniProt's natural-variant features.
No parameter schema in public metadata yet.
uniprot_get_disease_associationsStructured disease records from DISEASE-type comments: name + acronym + UniProt disease ID + OMIM cross-ref + description.
Structured disease records from DISEASE-type comments: name + acronym + UniProt disease ID + OMIM cross-ref + description.
No parameter schema in public metadata yet.
uniprot_get_active_sitesCatalytic and ligand-binding residues: active sites, binding sites, sites, metal binding, DNA binding.
Catalytic and ligand-binding residues: active sites, binding sites, sites, metal binding, DNA binding.
No parameter schema in public metadata yet.
uniprot_get_processing_featuresMaturation features: signal peptide, propeptide, transit peptide, initiator methionine, chain, peptide.
Maturation features: signal peptide, propeptide, transit peptide, initiator methionine, chain, peptide.
No parameter schema in public metadata yet.
uniprot_get_ptmsPost-translational modifications: modified residues (phospho/acetyl/methyl), glycosylation, lipidation (GPI/prenyl/palmitoyl), disulfide bonds, cross-links.
Post-translational modifications: modified residues (phospho/acetyl/methyl), glycosylation, lipidation (GPI/prenyl/palmitoyl), disulfide bonds, cross-links.
No parameter schema in public metadata yet.
uniprot_get_alphafold_confidencepLDDT mean + four-band distribution; lets the agent decide whether to trust the model.
pLDDT mean + four-band distribution; lets the agent decide whether to trust the model.
No parameter schema in public metadata yet.
uniprot_resolve_clinvarHuman UniProt entries only (NCBI taxon 9606); ClinVar classifications by gene + optional protein change, not transferable to nonhuman orthologs.
Human UniProt entries only (NCBI taxon 9606); ClinVar classifications by gene + optional protein change, not transferable to nonhuman orthologs.
No parameter schema in public metadata yet.
uniprot_get_publicationsPure-Python over the entry's references — listed here because it complements the cross-origin enrichment.
Pure-Python over the entry's references — listed here because it complements the cross-origin enrichment.
No parameter schema in public metadata yet.
uniprot_resolve_orthologyGroup orthology cross-references by source DB (KEGG / OMA / OrthoDB / eggNOG / 8 more).
Group orthology cross-references by source DB (KEGG / OMA / OrthoDB / eggNOG / 8 more).
No parameter schema in public metadata yet.
uniprot_get_evidence_summarySummarize UniProt ECO annotation evidence and assertion methods, with a weighted 0-100 descriptive mix index. The index is uncalibrated, not a probability of annotation correctness and not comparable to AlphaFold pLDDT.
Summarize UniProt ECO annotation evidence and assertion methods, with a weighted 0-100 descriptive mix index. The index is uncalibrated, not a probability of annotation correctness and not comparable to AlphaFold pLDDT.
No parameter schema in public metadata yet.
uniprot_target_dossierOne-call comprehensive characterisation: nine sections — identity / function / chemistry / structure / drug-target / disease / variants / functional annotations / cross-refs.
One-call comprehensive characterisation: nine sections — identity / function / chemistry / structure / drug-target / disease / variants / functional annotations / cross-refs.
No parameter schema in public metadata yet.
uniprot_provenance_verifyRe-fetch a previously recorded URL and compare release tag + canonical response SHA-256. Six verdicts (`verified`, `incomplete_evidence`, `release_drift`, `hash_drift`, `release_and_hash_drift`, `url_unreachable`) each with an advice string.
Re-fetch a previously recorded URL and compare release tag + canonical response SHA-256. Six verdicts (`verified`, `incomplete_evidence`, `release_drift`, `hash_drift`, `release_and_hash_drift`, `url_unreachable`) each with an advice string.
No parameter schema in public metadata yet.
uniprot_replay_from_cacheRead a cached UniProt response without hitting the upstream. Opt-in via `UNIPROT_MCP_CACHE_DIR`.
Read a cached UniProt response without hitting the upstream. Opt-in via `UNIPROT_MCP_CACHE_DIR`.
No parameter schema in public metadata yet.
Sponsors
Readme
Details
- Repository
- github.com/smaniches/uniprot-mcp
- Package
uniprot-mcp-server- Transport
- STDIO
- Registry
- MCP registry, active