UniProt MCP
Verifiable, release-aware protein evidence workflows over UniProt and linked scientific sources.
Connector by smaniches · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/smaniches-uniprot-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: database-access, deep-research
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.
- Tools
- 41 read · 0 write · 0 deleteRead-only
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 41
Read from the source code; the running server may list different tools.
Read 41 · Look things up without changing anything.
uniprot_batch_entriesuniprot_compute_propertiesuniprot_features_at_positionuniprot_get_active_sitesuniprot_get_alphafold_confidenceuniprot_get_citationuniprot_get_cross_refsuniprot_get_disease_associationsuniprot_get_entryuniprot_get_evidence_summaryuniprot_get_featuresuniprot_get_go_terms
Show 29 more tools
uniprot_get_keyworduniprot_get_processing_featuresuniprot_get_proteomeuniprot_get_ptmsuniprot_get_publicationsuniprot_get_sequenceuniprot_get_subcellular_locationuniprot_get_uniparcuniprot_get_unirefuniprot_get_variantsuniprot_id_mappinguniprot_lookup_variantuniprot_provenance_verifyuniprot_replay_from_cacheuniprot_resolve_alphafolduniprot_resolve_chembluniprot_resolve_clinvaruniprot_resolve_interprouniprot_resolve_orthologyuniprot_resolve_pdbuniprot_searchuniprot_search_citationsuniprot_search_keywordsuniprot_search_proteomesuniprot_search_subcellular_locationsuniprot_search_uniparcuniprot_search_unirefuniprot_target_dossieruniprot_taxonomy_search
Network hosts it talks to 10
alphafold.ebi.ac.uk· found in codeebi.ac.uk· found in codeeutils.ncbi.nlm.nih.gov· found in codegithub.com· found in codeglama.ai· found in codeorcid.org· found in coderaw.githubusercontent.com· found in coderest.uniprot.org· found in codesmaniches.github.io· found in codeuniprot.org· found in code
Tools (41)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
uniprot_batch_entriesread-onlyFetch multiple entries in a single call. Use this instead of repeated ``uniprot_get_entry`` calls when you already have a list of accessions — one network round-trip instead of N, with invalid accessions reported rather than aborting the batch.
uniprot_compute_propertiesread-onlyDerived sequence chemistry for a UniProt entry: molecular weight, theoretical pI, GRAVY hydrophobicity, aromaticity, net charge at pH 7, extinction coefficient at 280 nm, amino-acid composition. Computed from the canonical FASTA via standard methods (Lehninger pK values, Kyte-Doolittle hydropathy, Pace 1995 ε₂₈₀ formula). Pure-Python — no additional external API call beyond the FASTA fetch.
uniprot_features_at_positionread-onlyList every UniProt feature that overlaps a residue position (1-indexed). Answers the question 'what's at residue 175 of TP53?' by intersecting the entry's features with the given position. Useful for variant-effect interpretation — surfaces every domain, binding site, modification, mutagenesis annotation, and natural variant at a single residue in one call.
uniprot_get_active_sitesread-onlyReturn the active sites, binding sites, metal-binding residues, and DNA-binding regions annotated on a UniProt entry. Filtered view over the entry's feature array — this is the residue-level chemistry of the protein, the input to enzyme drug-design and antibiotic target-validation workflows.
uniprot_get_alphafold_confidenceread-onlyFetch model-level AlphaFold DB confidence metadata for an accession. Returns mean pLDDT and the four-band distribution of local model confidence, not individual residue scores. Checks the exact UniProt accession so an isoform's prediction cannot be substituted for the canonical protein. For multiple same-accession models or fragments, JSON output includes additionalModelSummaries with separate ranges. Global pLDDT does not prove experimental accuracy or validate confidence at a particular residue or between domains. Call ``uniprot_resolve_alphafold`` for the UniProt cross-reference. This too…
uniprot_get_citationread-onlyFetch a UniProt citation record by ID (typically a PubMed ID, e.g. 9840937). Returns title, authors, journal, year, volume, pages, and cross-references.
uniprot_get_cross_refsread-onlyList every external-database cross-reference UniProt has curated for an entry (PDB, Pfam, Ensembl, Reactome, KEGG, STRING, and dozens more), optionally narrowed to one ``database``. For the common single-database cases there are dedicated, richer tools that resolve structured details beyond a bare ID: ``uniprot_resolve_pdb`` (structures with method/resolution), ``uniprot_resolve_alphafold``, ``uniprot_resolve_interpro``, and ``uniprot_resolve_chembl``. Use this tool for any other database or to see the full cross-reference set at once.
uniprot_get_disease_associationsread-onlyStructured disease associations for a UniProt entry. Returns the diseases recorded in DISEASE-type comments with name, acronym, UniProt disease ID, OMIM cross-reference, description, and the annotation note. Critical for clinical interpretation — distinguishes a UniProt-curated disease association (literature-anchored) from a raw cross-reference. Empty result does not imply disease-irrelevant; see Open Targets / OMIM / DisGeNET for population-level evidence.
uniprot_get_entryread-onlyFetch a UniProt protein entry by accession (e.g. P04637 for p53, P38398 for BRCA1). Returns function, gene, organism, disease associations, cross-references.
uniprot_get_evidence_summaryread-onlySummarise and grade the ECO (Evidence and Conclusion Ontology) codes attached to a UniProt entry's annotations. Counts how many features and comments cite each evidence code, then classifies every occurrence as experimental (wet-lab, ECO:0000269), manual (curator-reviewed inference), or automatic (un-reviewed pipeline call). A project-defined 0-100 index describes the annotation evidence mix, NOT annotation correctness, biological certainty, or a calibrated probability (unlike AlphaFold pLDDT). The legacy JSON key ``evidence_confidence`` includes ``calibrated=False`` and the raw ``evidence_cou…
uniprot_get_featuresread-onlyReturn the full, unfiltered feature array for an entry: domains, binding sites, PTMs, signal peptides, and every other annotated region, optionally narrowed by ``feature_types``. For a residue-specific view ('what's at position 175?') use ``uniprot_features_at_position`` instead; for the curated subsets (active/binding sites, processing, PTMs alone) the dedicated ``uniprot_get_active_sites`` / ``uniprot_get_processing_features`` / ``uniprot_get_ptms`` tools apply the same filter server-side.
uniprot_get_go_termsread-onlyGet GO annotations grouped by aspect.
uniprot_get_keywordread-onlyFetch a UniProt keyword by ID (e.g. KW-0007 for Acetylation, KW-0539 for Nucleus). Returns name, definition, category, synonyms, GO cross-refs, and parent/child hierarchy.
uniprot_get_processing_featuresread-onlyReturn the maturation and processing features (signal peptide, propeptide, transit peptide, initiator methionine, chain, peptide). These describe how the translated polypeptide is cleaved and targeted into its mature form — essential for therapeutic-protein engineering and pathogen-secretion-system analysis. A pre-filtered view over ``uniprot_get_features``; for post-translational chemical modifications instead of cleavage/targeting, use ``uniprot_get_ptms``.
uniprot_get_proteomeread-onlyFetch a UniProt proteome by UP ID (e.g. UP000005640 = human reference). Returns organism, taxonomy lineage, protein count, gene count, BUSCO completeness score, annotation score, and component breakdown (chromosomes / contigs).
Show 26 more tools
uniprot_get_ptmsread-onlyReturn the post-translational modification features (modified residues, glycosylation sites, lipidation sites, disulfide bonds, cross-links). PTMs are functionally critical: they switch enzymes on, target proteins for degradation, anchor them to membranes, and fold them via disulfides. A pre-filtered view over ``uniprot_get_features``; for cleavage/targeting features instead of chemical modifications, use ``uniprot_get_processing_features``. The empty case carries an honest pointer to mass-spec databases (PhosphoSitePlus, GlyConnect) for additional evidence.
uniprot_get_publicationsread-onlyList the publications UniProt cites on an entry, with PubMed IDs, DOIs, titles, authors, journal, year, and the 'reference position' annotation (the experimental work each citation supports — e.g. 'CRYSTALLIZATION', 'PHOSPHORYLATION AT SER-15', 'INVOLVEMENT IN LI-FRAUMENI SYNDROME'). Pure composition over the entry's ``references`` block — no extra HTTP call beyond the entry fetch.
uniprot_get_sequenceread-onlyFetch the canonical protein sequence in FASTA format. Use this when you need the raw residue string itself (e.g. for local sequence analysis); for pre-computed chemistry derived from this same sequence (molecular weight, pI, hydrophobicity) call ``uniprot_compute_properties`` instead, which fetches the FASTA internally so you don't have to parse it yourself. Always returns markdown/plain-text FASTA — there is no ``response_format`` parameter because FASTA is already the interchange format.
uniprot_get_subcellular_locationread-onlyFetch a UniProt subcellular-location term by ID (e.g. SL-0039 Cell membrane, SL-0086 Cytoplasm, SL-0191 Nucleus). Returns name, definition, category, GO cross-refs, and the is-a / part-of hierarchy.
uniprot_get_uniparcread-onlyFetch a UniParc sequence-archive record by its known UPI. Returns sequence, MD5/CRC64 checksums, cross-reference counts, linked UniProtKB accessions, and the common-taxa list. UniParc is the non-redundant sequence archive — every protein sequence ever submitted to a major public database has exactly one UniParc record, making this the tool to use when a UniProtKB accession doesn't exist for a sequence you have. Don't have a UPI yet? Use ``uniprot_search_uniparc`` to find one first.
uniprot_get_unirefread-onlyFetch a UniRef cluster by ID. Examples: UniRef100_P04637 (100 % identity, only exact-match members), UniRef90_P04637 (90 % identity), UniRef50_P04637 (50 %, broadest grouping). Returns representative member, member list, common taxon, last-updated date.
uniprot_get_variantsread-onlyList every literature-described natural variant UniProt has curated for an entry, including disease-associated mutations. Use this to see the full variant catalogue for a protein; to check one specific HGVS-shorthand change (e.g. 'R175H') use ``uniprot_lookup_variant`` instead, which does the position/residue matching for you. UniProt's natural-variant annotations only cover literature-described variants — for population-scale clinical significance data use ``uniprot_resolve_clinvar``.
uniprot_id_mappingread-onlyMap identifiers between UniProt and external databases (or between two external databases) via UniProt's ID mapping service. Submits an async job and polls it to completion server-side, so the call may take a few seconds for large batches.
uniprot_lookup_variantread-onlyLook up an HGVS-shorthand amino-acid change (e.g. ``R175H``, ``V600E``, ``R248*``) in the UniProt entry's natural-variant annotations. Returns the matching variant feature(s) including the UniProt-curated description (often a disease association). A null result here does NOT mean a variant is benign — UniProt only annotates literature-described variants; ClinVar / dbSNP carry population-level data.
uniprot_provenance_verifyread-onlyRe-fetch a previously recorded UniProt URL and verify it still returns the same release identifier and the same canonical response body (SHA-256). Pass the values from a prior response's provenance footer (`url`, `release`, `response_sha256`, `accept_header`); empty optional fields skip the corresponding check. Returns a verification report with explicit pass / drift / unreachable verdicts per check. ``accept_header`` must match the Accept header used for the original request (default ``application/json``; use ``text/plain;format=fasta`` for FASTA-originated provenance). Replaying the wrong h…
uniprot_replay_from_cacheread-onlyRead a previously-cached UniProt response without hitting the upstream. The local provenance cache is opt-in via the ``UNIPROT_MCP_CACHE_DIR`` environment variable; when unset, this tool always reports cache-disabled. Useful for: reproducing a year-old answer from a sealed cache snapshot; working offline / behind air-gaps; reducing UniProt's load when running benchmarks twice. Returns the cached body text wrapped in the recorded Provenance. The annotation ``openWorldHint=False`` reflects that this tool consults the local file system only — no upstream call.
uniprot_resolve_alphafoldread-onlyResolve the AlphaFoldDB cross-reference for a UniProt entry — typically one canonical model per accession. Includes a direct EBI viewer link.
uniprot_resolve_chemblread-onlyResolve ChEMBL drug-target cross-references for a UniProt entry. Returns the ChEMBL target IDs with EBI viewer links — empty if the protein has no documented bioactivity data in ChEMBL.
uniprot_resolve_clinvarread-onlyLook up ClinVar records for the gene encoded by a UniProt entry. First fetches the entry to extract the canonical gene symbol, then queries NCBI eutils ClinVar by gene (and optional protein-change filter, e.g. ``R175H``). Returns clinical-significance classification, review status, condition list (trait_set), molecular consequence, and the protein-change list per record. Critical for clinical workflows — UniProt's natural-variant annotations stop at literature-described variants. ClinVar carries every variant submitted by clinical labs, with curated significance classifications. Combine ``uni…
uniprot_resolve_interproread-onlyList InterPro signatures (domain / family classifications) for a UniProt entry, with names extracted from the entry's cross-reference properties.
uniprot_resolve_orthologyread-onlyGroup every orthology cross-reference in a UniProt entry by source database (KEGG / OMA / OrthoDB / eggNOG / HOGENOM / PhylomeDB / InParanoid / TreeFam / GeneTree / PAN-GO / PANTHER / OrthoInspector). Different databases use different inference methods; surfacing them side-by-side lets the agent reason about consensus when comparing orthologs across species. Pure-Python — no extra HTTP call beyond the entry fetch.
uniprot_resolve_pdbread-onlyList every PDB structure cross-referenced from a UniProt entry, with method, resolution, and chain coverage. Faster than parsing the raw cross-references blob — returns a structured list typed for downstream analysis.
uniprot_searchread-onlyThe general-purpose entry point for finding UniProtKB proteins by any combination of gene, organism, keyword, or free text. Use this first when you don't already have an accession; use ``uniprot_get_entry`` once you do. Examples: '(gene:TP53) AND (organism_id:9606)', 'kinase AND reviewed:true'. ``reviewed_only`` and ``organism`` are convenience shortcuts equivalent to adding the corresponding clause to ``query`` yourself.
uniprot_search_citationsread-onlySearch the UniProt citations index (the literature UniProt references) by title, author, or year. Use this to find a citation's ID (typically a PubMed ID); once you have it, call ``uniprot_get_citation`` for the full record. For the publications attached to one specific protein entry, use ``uniprot_get_publications`` instead. Returns up to ``size`` matches, or an empty list if nothing matches. Examples: 'p53 AND author:Vogelstein', 'BRCA1 AND year:[2020 TO 2024]'.
uniprot_search_keywordsread-onlySearch UniProt's controlled keyword vocabulary (the ``KW-####`` terms) by name or definition. Use this to discover a keyword ID from a concept; once you have the ``KW-####`` ID, call ``uniprot_get_keyword`` for its full record (definition, category, hierarchy, GO cross-references). Returns up to ``size`` matches, or an empty list if nothing matches. Examples: 'acetylation', 'nucleus', 'kinase activity'.
uniprot_search_proteomesread-onlySearch UniProt proteomes (whole-organism protein sets) by organism or proteome field. Use this to find a proteome's ``UP#########`` ID; once you have it, call ``uniprot_get_proteome`` for the full record (protein / gene counts, BUSCO completeness, component breakdown). Returns up to ``size`` matches, or an empty list if nothing matches. Examples: 'organism_id:9606' for human, 'proteome_type:1' for reference proteomes only, 'taxonomy_name:bacteria' for all bacterial proteomes.
uniprot_search_subcellular_locationsread-onlySearch UniProt's controlled subcellular-location vocabulary (the ``SL-####`` terms) by name or definition. Use this to discover a location ID from a concept; once you have the ``SL-####`` ID, call ``uniprot_get_subcellular_location`` for its full record (definition, category, hierarchy, GO cross-references). Returns up to ``size`` matches, or an empty list if nothing matches. Examples: 'membrane', 'mitochondrion', 'cytoplasm'.
uniprot_search_uniparcread-onlySearch the UniParc non-redundant sequence archive by taxonomy, source database, or other UniParc query fields — the entry point when you don't already have a UPI. Examples: 'taxonomy_id:9606' for human sequences, 'database:Ensembl' for Ensembl-derived entries. Once you have a UPI from the results, use ``uniprot_get_uniparc`` for the full record.
uniprot_search_unirefread-onlySearch for UniRef clusters by content (not by a known cluster ID — for that, use ``uniprot_get_uniref`` directly). Example: query='kinase' identity_tier='90' returns the 90% clusters matching 'kinase'. Use a looser tier (50) to find broad homology groups, a tighter tier (100) to find near-identical sequence sets.
uniprot_target_dossierread-onlyOne-call comprehensive characterisation of a UniProt entry, structured for drug-discovery / clinical workflows. Composes nine views over the same entry plus one FASTA fetch (so two upstream network calls, not nine): Identity · Function · Sequence chemistry · Structural evidence (PDB count + best-resolution + AlphaFold model id + InterPro count) · Drug-target context (ChEMBL ids, DrugBank count) · Disease associations (with MIM IDs) · Variants count · Functional annotations (top GO MF, subcellular, ECO diversity) · Cross-references summary For per-residue pLDDT con…
uniprot_taxonomy_searchread-onlyResolve an organism name to its NCBI taxonomy ID(s) — the numeric ID other UniProt tools expect (e.g. the ``organism`` parameter of ``uniprot_search``, or ``organism_id:`` in a query string). Returns each match's taxonomy ID, scientific name, common name, and rank (species / genus / etc.); a name can resolve to multiple IDs when it's ambiguous (e.g. a genus with several species), so inspect the rank and full scientific name before picking one. Use this before filtering any other search by organism if you only know the name, not the numeric ID.
Signals
- Stars
- 3
- Forks
- 0
- Open issues
- 1
- Weekly downloads
- 365
- Last commit
- Oct 23, 2026 (5 days ago)
- Last release
- Oct 26, 2026 (2 days ago)
- Last package publish
- Oct 23, 2026 (5 days ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.smaniches/uniprot-mcp- Version
- 1.3.15
- Auth
- No auth
- Packages
- pypi uniprot-mcp-server
- License
- Apache-2.0
- Repository
- github.com/smaniches/uniprot-mcp
- First seen
- Oct 24, 2026
- Last checked
- Oct 26, 2026
More from smaniches
- 0.664score
Semantic Scholar MCP Server
smaniches
MCP server for the Semantic Scholar API: search 200M+ papers, citations, authors, recommendations.
ConnectorAFreshness: ALocalRead-only★ 23↓ 1.3K/wkClaude Code +5 - 0.641score
AlphaFold Sovereign MCP
smaniches
MCP server for AlphaFold and 8 other biomedical data sources with a local SQLite knowledge graph
ConnectorAFreshness: ALocal★ 4↓ 545/wkClaude Code +5
Cite this page
UniProt MCP. Agent Mart. https://agentmart.dev/connectors/smaniches-uniprot-mcp (last updated 2026-10-26)