AlphaFold Sovereign MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ALPHAFOLD_OFFLINE | No | Set to '1' to run in offline mode, refusing all outbound HTTP and serving only from the local SQLite cache. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| lookup_diseaseA | Retrieve a disease record from the MONDO unified disease ontology. Returns the canonical MONDO entry with:
Example: |
| search_diseasesA | Search for diseases by name or keyword using the MONDO ontology. Returns a ranked list of matching diseases with MONDO IDs and cross-references. Useful for resolving a clinical term to a canonical identifier before querying targets or phenotypes. Example: |
| lookup_phenotypeA | Retrieve an HPO phenotype term with associated disease annotations. Returns:
Example: |
| get_gene_phenotype_profileA | Return all HPO phenotypes associated with a gene, plus gnomAD constraint. Useful for understanding the clinical consequences of variants in a gene before requesting structural context. Returns:
Example: |
| get_disease_targetsA | Return top protein targets for a disease with Open Targets evidence scores. Evidence score breakdown (0–1 per data type):
Example: |
| get_target_diseasesA | Return all diseases associated with a protein target via Open Targets. Accepts a UniProt accession and returns the full disease landscape for that target — essential for target-validation and indication-expansion. Example: |
| get_common_disease_targetsA | Profile the top drug targets for a curated set of common diseases in one call. Use this for a fast landscape scan across a whole disease area: given a
Queries Open Targets live. Returns a JSON string with the |
| triage_variant_3dA | Comprehensive clinical triage for a missense variant. Fuses the upstream signals this tool currently wires into a single prioritised report:
Returns a Example: |
| phenotype_to_structuresA | Map a clinical phenotype to the protein structures of its disease targets. Pipeline:
Use the returned UniProt IDs with Example: |
| get_orphan_disease_atlasA | Map an Orphanet rare disease to its MONDO record, HPO phenotypes, and protein targets. Rare / orphan diseases are often under-studied because their small patient populations make large trials impractical. This tool aggregates the available structural and clinical intelligence into one report to accelerate research. Returns:
Example: |
| compare_disease_target_overlapA | Compare the protein target landscapes of two diseases. Identifies shared and unique targets between two diseases — a key analysis for drug repurposing, identifying shared mechanisms, and understanding comorbidity. Returns:
Example: |
| resolve_icd10_to_mondoA | Resolve an ICD-10 clinical code to MONDO disease ontology terms. Enables integration between clinical / EHR data (which uses ICD-10) and the research-grade MONDO ontology used by Open Targets, HPO, and this MCP. Example: |
| query_variant_databaseA | Search the local knowledge graph for stored variants. Returns variants matching the filter criteria. No upstream API calls are made — all data is served from the local SQLite knowledge graph, which is populated by the curated boot seed and by any explicit writes through the knowledge-graph storage API (the analysis tools do not write to it on their own). |
| query_protein_databaseA | Recall proteins already stored in the local knowledge graph. This is a local-recall query, not a live lookup: it returns only proteins that
have previously been written to the local SQLite store (the curated boot seed,
plus anything added through the knowledge-graph storage API). No upstream API is
called. To assess a protein that may not be stored yet, use
Filters are combined with AND; omit a filter to leave that dimension
unconstrained. Returns a JSON record with the applied |
| get_knowledge_graph_statsA | Return statistics about the local knowledge graph. Shows entity counts, database size, and last activity — useful for understanding the current contents and coverage of the local store. |
| export_research_datasetA | Export the stored knowledge-graph data for downstream analysis. Returns all stored entities as JSON-serialisable dicts, suitable for:
Example (Python):: |
| find_drug_gene_networkA | Traverse the local knowledge graph from a seed entity. Given a seed (UniProt ID, gene symbol, or MONDO disease ID), expands its immediate neighbourhood in the stored drug-gene-disease graph: a gene symbol resolves to its encoded proteins and reported variants, a UniProt accession resolves to its stored protein record, and a MONDO disease resolves to drugs with an indication for it. The store is populated by the curated boot seed and by explicit writes through the storage API. |
| generate_variant_clinical_reportA | Generate a multi-source variant interpretation report. Cross-references evidence from up to seven upstream databases for a single HGVS variant into one structured report. The report is a research aid: it surfaces the upstream evidence and the ACMG/AMP criteria that the available evidence supports, but it is not a clinical interpretation and must not be used as a diagnostic without independent review by a qualified clinical laboratory.
The report includes a draft ACMG/AMP criteria checklist with evidence mapping, a structural impact summary, and an actionability statement. |
| assess_target_druggabilityA | Comprehensive druggability assessment for a protein target. Integrates four independent druggability signals into a HOT/WARM/COLD/NOT_DRUGGABLE classification:
It assembles existing public-database evidence into one tier; it does not add scientific judgement and is not a validated predictive model. |
| synthesize_protein_dossierA | Generate a complete protein intelligence dossier from 7 data sources. It assembles disease associations, drug precedent, population constraint, ClinVar variants, and cross-species orthologs for one protein into a single structured record. It composes upstream databases; it does not add scientific judgement. |
| map_disease_drug_landscapeA | Map the complete therapeutic landscape for a disease. Returns approved drugs, pipeline agents, top druggable targets, and an investability summary for a given MONDO disease. Combines Open Targets evidence with ChEMBL drug indications and MONDO disease hierarchy to produce a comprehensive landscape report used in business development, competitive intelligence, and R&D portfolio decisions. |
| classify_variant_acmgA | Generate a draft ACMG/AMP variant classification framework. Populates ACMG/AMP 2015 criteria (Richards et al.) automatically from computational evidence. Designed to pre-populate variant interpretation forms for clinical laboratory review — NOT a substitute for expert review. |
| find_drug_repurposing_candidatesA | Rank existing clinical-stage drugs as repurposing candidates for a disease. Surfaces approved or trial-stage drugs whose target carries genetic/association
evidence for the disease — i.e. drug-repurposing hypotheses. For the full
approved-plus-pipeline drug picture of a disease (not only repurposing
candidates), use How it works: take the top Returns a JSON record whose |
| analyze_structural_confidenceA | Analyze AlphaFold structural confidence using pLDDT and PAE. Returns a structural reliability summary (not a per-residue profile):
|
| compute_topology_fingerprintA | Compute a rotation-invariant topological fingerprint of a protein's fold. Fetches the AlphaFold model for The Betti numbers summarise fold topology: β₀ counts connected components (single- vs multi-domain or fragmented chains), β₁ counts loops/holes (β-barrels, large macrocycles), β₂ counts enclosed voids (cavities). Because they are invariant to rotation and translation, two orientations of the same fold produce the same fingerprint. Returns the fingerprint vector, the Betti numbers, the residue count, and which
method ran. Full persistent homology needs the optional |
| compare_proteins_topologicallyA | Compare multiple proteins using a TDA-fingerprint distance. Computes a pairwise distance matrix between the TDA fingerprints of
the provided proteins. Distance metric: L2 distance between
length-normalised 64-dimensional fingerprint vectors (see
Applications: Possible uses (all of which require independent validation before any downstream use):
None of these are direct functional or sequence-similarity measures. |
| find_evolutionary_structural_shiftsA | Quantify cross-species structural and sequence divergence for a gene. For each ortholog, attempts to fetch the AlphaFold structure and compute
a TDA fingerprint distance against the human structure. When an ortholog
structure is available in AlphaFold DB, the AlphaFold DB coverage of non-human proteomes is partial: model organisms
(mouse, rat, zebrafish) are well-covered; others may not be. The
|
| score_binding_pocket_geometryA | Identify and score putative binding pockets from AlphaFold geometry. Detects pockets with a geometry-only heuristic. Residues in the
inner 60 percent of the structure by distance from the centroid are
taken as the pocket-forming core, then grown greedily into clusters
within an 8 Angstrom radius. A cluster is kept as a putative pocket
when it has at least Each pocket reports a radius of gyration (compactness of the pocket residues), a centroid offset (distance of the pocket centroid from the structure centroid; larger means more peripheral — a solvent-accessible cleft rather than a dead-central cavity, and NOT a measure of solvent burial), a mean pLDDT, and a druggability index. The druggability index runs 0 to 100 and is the sum of four equally weighted 0 to 25 sub-scores: residue count, radius of gyration, mean pLDDT, and centroid offset. This is a fast, dependency-free pre-screen, not a substitute for a validated pocket detector such as fpocket or P2Rank. It needs no ML model, is fully reproducible from AlphaFold coordinates, and runs in air-gapped deployments. |
| detect_intrinsically_disorderedA | Map intrinsically disordered regions (IDRs) using pLDDT as proxy. IDRs with pLDDT < 50 are predicted to be disordered in isolation by AlphaFold. This pLDDT-as-disorder-proxy approach is consistent with Ruff & Pappu (2021) and scales to the full human proteome from precomputed AlphaFold confidence. IDR functional categories returned:
Clinical relevance:
|
| get_protein_structureA | Retrieve a protein's AlphaFold model: metadata, download URLs, optional coordinates. The single entry point for getting the predicted structure itself. Returns the
AlphaFold DB entry metadata — entry ID, model version and creation date,
organism, gene, UniProt description, the amino-acid sequence and its length, and
the model's mean pLDDT — plus stable download URLs for the PDB and mmCIF
coordinate files, the PAE matrix and image, and the AlphaMissense substitutions
CSV. Set Use the sibling structure tools for interpretation rather than retrieval, so
their scopes don't overlap: Returns |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/smaniches/alphafold-sovereign-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server