io.github.cyanheads/uniprot-mcp-server
io.github.cyanheads/uniprot-mcp-server · v0.2.6
Protein research over UniProtKB: search by function, fetch curated records, map IDs, proteomes.
MCPremotelocal · npmno credentialsScience & open dataHealthDatabases
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 6 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 80/100
What it does: 6 tools · 6 read, 0 write · Maps & location, Health, Databases
Test call uniprot_search_proteins: failed — tool error: Error: Neither text_search nor query was provided.
Recovery: Provide either text_search for plain language or query for (1,117 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: 0
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://uniprot.caseyjhand.com/mcpPackage
registry: npm
identifier: @cyanheads/uniprot-mcp-server
version: 0.2.6
transport: stdioTools
6 tools listed at last check
uniprot_search_proteinsSearch UniProtKB and return curated protein records. Pass text_search for a plain-language query (the 80% case) or query for the full Lucene field syntax (gene:TP53 AND organism_id:9606 AND reviewed:true) — exactly one is required. Reviewed (Swiss-Prot) entries are manually curated; unreviewed (TrEMuniprot_get_entryFetch full curated UniProtKB entries by accession in one batch (up to 20). Each entry carries function, catalytic activity, cofactors, subcellular location, disease involvement, PTMs, natural variants, isoforms, domains, GO terms, keywords, and cross-references. Partial failures do not abort the batuniprot_map_idsTranslate identifiers across databases via UniProt's ID-mapping service — gene names to accessions, accession to PDB / Ensembl / RefSeq / ChEMBL / GeneID, and back. The job runs asynchronously; this tool submits it and polls within a budget. A running job returns status "running" with a ticket; passuniprot_get_proteomeFetch the reference proteome for an organism by UPID (e.g. "UP000005640") or NCBI taxon ID (e.g. 9606) — provide exactly one. Returns metadata inline: proteome type, total protein count, BUSCO completeness (score, complete/fragmented/missing counts, lineage dataset), and the genome assembly accessiouniprot_get_taxonomyResolve a taxonomy record by NCBI taxon ID (e.g. 9606) or scientific name (e.g. "Homo sapiens") — provide exactly one. Returns the scientific and common name, mnemonic, rank, parent, and the full lineage. Set include_children to also fetch immediate child taxa (a separate lookup — not inline on theuniprot_get_sequenceFetch the canonical amino-acid sequence (FASTA) for a UniProtKB accession, with length and the parsed header. Set include_isoforms to also return the alternatively-spliced isoform sequences. This is the cheap sequence-only path — for the full functional record use uniprot_get_entry. A merged accessi
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.github.cyanheads/uniprot-mcp-server)