mcpbeat Sign in

Uniprot MCP Server

answering

Uniprot MCP Server is answering right now. Last checked 14 min ago. 61 installs a week from npm. It exposes 6 tools. Last commit 31 Aug 2026.

Protein research over UniProtKB — search by function, fetch curated records, map IDs, proteomes.

Installs per day peak 169 · avg 22 · +138% w/w
a month agotoday
Uptime history 28 days of history · worst day 99%
28 days agonow
100.0%
Uptime 24h
91 of 91 checks
6
Tools
read from the server
340 ms
Response time
average over 24h
61
Installs / week
npm and PyPI

What changed 3

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 31 August 2026. No other catalogue keeps this.

31 Aug a tool description was rewritten uniprot_map_ids
31 Aug a tool changed the parameters it asks for uniprot_map_ids
31 Aug a tool changed version

Nothing serious here today

Today is the operative word: we check Uniprot MCP Server every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 14 min ago.

run in your terminal
claude mcp add uniprot-mcp-server --transport http https://uniprot.caseyjhand.com/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "uniprot-mcp-server": {
      "url": "https://uniprot.caseyjhand.com/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.uniprot-mcp-server]
url = "https://uniprot.caseyjhand.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "uniprot-mcp-server": {
      "url": "https://uniprot.caseyjhand.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "uniprot-mcp-server": {
      "url": "https://uniprot.caseyjhand.com/mcp"
    }
  }
}

This one needs environment variables set before it will start: MCP_HTTP_HOST (The hostname for the HTTP server.), MCP_HTTP_PORT (The port to run the HTTP server on.), MCP_HTTP_ENDPOINT_PATH (The endpoint path for the MCP server.), MCP_AUTH_MODE (Authentication mode to use: 'none', 'jwt', or 'oauth'.), MCP_LOG_LEVEL (Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').). The author declared them in the registry entry; get the values from the project itself.

Available tools 6

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

uniprot
uniprot_get_entry
Fetch 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 batch — resolved entries land in succeeded[] and unknown/withdrawn accessions in failed[]. Pass fields to trim the upstream projection. A single oversized record returns kind: "outline" (a section listing with byte sizes) instead of overflowing context — re-call the same accession with sections:[...] (e.g. ["disease","variants"]) to pull only those. This tool does not search: accessions come from uniprot_search_proteins.results[].accession or uniprot_map_ids. Strip any isoform suffix (P04637-2 to P04637) before calling.
uniprot_get_proteome
Fetch 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 accession. The protein set is opt-in via include_proteins (it is large — human is ~147,506) and returns a capped page with a forward cursor; narrow it with the query filter (UniProtKB Lucene syntax) for a subset. Resolve an organism name to a taxon ID first with uniprot_get_taxonomy.
uniprot_get_sequence
Fetch 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. Accessions come from uniprot_search_proteins or uniprot_map_ids; strip any "-N" isoform suffix (P04637-2 to P04637) before calling.
uniprot_get_taxonomy
Resolve 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 the record). Use this to turn an organism name into the taxon ID that uniprot_search_proteins (organism_id) and uniprot_get_proteome (taxon_id) expect.
uniprot_map_ids
Translate 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; pass that ticket alone to poll the same job. A completed call returns status "finished" with one results page; when continuation is present, pass it alone to fetch the next completed page without re-submitting or polling the job. A gene name often maps to one reviewed Swiss-Prot accession plus dozens of unreviewed TrEMBL ones, so target UniProtKB-Swiss-Prot (reviewed only) for the usual intent, or UniProtKB / UniProtKB_AC-ID to include TrEMBL. Pair a gene-symbol from_db with tax_id to disambiguate species. Chain the resulting accessions into uniprot_get_entry.
uniprot_search_proteins
Search 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 (TrEMBL) are computationally predicted and ~30x more numerous, so reviewed defaults to true to avoid drowning in predictions — set it false to include TrEMBL. Request facets (e.g. reviewed, model_organism) for server-side count breakdowns. Results page forward with an opaque cursor; UniProtKB has no offset paging. This is the discovery entry point — chain results[].accession into uniprot_get_entry for full records, or uniprot_get_sequence for FASTA.

Endpoints

URLTransportStateLatencyChecked
https://uniprot.caseyjhand.com/mcp streamable-http answering 406 ms 14 min ago

Alternatives to Uniprot MCP Server

same job, measured the same way
Uap Pulse
by davidmosiah

Search and map the Pentagon UAP/UFO releases plus curated official archives from 12 nations.

1 396 installs/wk local only
Copus
by copus-io

Search human-curated content recommendations from Copus - The Internet Treasure Map

26 installs/wk local only
Contractors Near Me
by contractorsnearme

Search licensed US contractors by trade or location, fetch profiles and reviews, and submit leads.

14 tools answering
I
NDIS Provider Feed
by benno303

Agent-readable search over the NDIS Provider Register (CC BY 4.0 AU) by location and service.

3 tools answering
FAIR Appraisers
by fairappraisers

Search public FAIR appraiser profiles by location, specialty, and intended use.

3 tools answering
Jobvetta MCP Server
by jobvetta

Search live, vetted India jobs by keyword, location, posting age, and job ID.

2 tools answering
GroundTruth - Environmental Records
by agentlookups

Federal environmental records near any US location, with dates and provenance; never a safety score.

3 tools answering
PyreCrawl
by sanggonboy

13 tools for AI agents: scrape, crawl, extract, map, search, papers, batch, research, monitor.

1 029 installs/wk local only

Uniprot MCP Server — questions

Answers built from our own checks of this server.

What can Uniprot MCP Server do?
It exposes 6 tools, read directly from the server on our last check. Among them: uniprot_get_entry, uniprot_get_proteome, uniprot_get_sequence, uniprot_get_taxonomy, uniprot_map_ids, uniprot_search_proteins. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Uniprot MCP Server working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 340 ms. The bar chart above shows every period we have measured.
How do I connect Uniprot MCP Server?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Uniprot MCP Server need an API key?
No. Uniprot MCP Server completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 6 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Uniprot MCP Server?
It answers our handshake in 340 ms on average, which is faster than 45% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use Uniprot MCP Server?
The npm package @cyanheads/uniprot-mcp-server was installed 61 times in the last week. Week over week that is +138%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Uniprot MCP Server open source?
Yes — it is published under the Apache-2.0 licence, written in TypeScript, 2 stars on GitHub and 7 open issues. The source link is on this page, so you can read exactly what it does with your data before you connect it.