Interpret variants that gain or lose glycosylation sites
Hand Claude a list of protein-coding variants; get back a ranked, cited table of the ones predicted to destroy an existing glycosylation site (loss of glycosylation, LOG) or create a new one (gain of glycosylation, GOG), joined to ClinVar/AlphaMissense annotations and an expression sanity-check.
| Problem class | Knowledge synthesis |
| Subject areas | Translational Medicine, Molecular and Cellular Biology |
| Evidence level | Reported |
| Complexity | Multi-tool harness |
| Availability | Fully open |
| Compute | Laptop |
Problem
Altered glycosylation is a recurring, under-scanned disease mechanism: a missense change can knock out an N-X-S/T sequon (X ≠ P) that normally carries a glycan, or introduce a novel one, and either can shift protein stability, secretion, or receptor signaling. Two textbook cases: a sequon mutation at Asn135 in antithrombin/SERPINC1 (P01008) reduces circulating antithrombin (LOG), and IFNGR2 Thr168Asn (P38484) creates a novel N-glycan that causes Mendelian susceptibility to mycobacterial disease (GOG). The work is tedious and error-prone by hand — you must map each variant onto the canonical Swiss-Prot protein coordinate (numbering differs across databases and publications; the antithrombin site is Asn135 in one frame, Asn167 in the reference), check whether the mutated residue sits on or near a known glycosite, then cross-reference clinical and pathogenicity annotations. Solved looks like: hand over a variant list, get back a ranked table of glycosylation-altering variants with clinical/functional annotations, an expression check, and a re-runnable provenance record.
Recommended approach
This is a two-MCP toolbelt: GlyGen MCP supplies the glycosite ground truth GlyGen itself curates; BioMCP supplies the ClinVar / AlphaMissense / literature joins that GlyGen does not cover (its germline variants come from the EBI variant API and its somatic variants from BioMuta).
-
Add both servers.
claude mcp add --transport http glygen https://mcp.glygen.org/mcp uv tool install biomcp-cli claude mcp add --transport stdio biomcp -- biomcp mcpRun
/mcpto confirm both are connected. - Have Claude write a versioned driver script, not a chat transcript. Ask it to author
glyco_variants.pythat, for each input variant (UniProt, protein_change— e.g.,P01008,N135S):- resolves the canonical GlyGen protein with
get_protein_summaryand pulls known glycosites withget_site_summary; - harmonizes numbering — reconcile the input site frame against the GlyGen canonical frame before comparing (the Asn135↔Asn167 antithrombin case is the canonical trap); refuse to classify a variant whose frame cannot be reconciled and log it as
unmapped; - classifies each variant as
LOG(mutation removes a residue in a known N-X-S/T sequon or an annotated O-glycosite),GOG(mutation creates a new N-X-S/T sequon — check the ±2 residue window), ornone; - joins ClinVar significance and AlphaMissense pathogenicity via BioMCP
variant_searcher/variant_getter(MyVariant.info federates both) — note AlphaMissense is not in the getter’s default view; request itspredictionssection (biomcp get variant <id> predictions), a superset that adds it; - emits
glyco_candidates.csvwith columnsuniprot, site, class, glygen_evidence, clinvar_significance, alphamissense, rank.
Rank GOG/LOG hits above
none, then within class by AlphaMissense pathogenicity and ClinVar significance. - resolves the canonical GlyGen protein with
-
Add an expression sanity-check step. Have the script (or a short follow-up cell) note whether the affected protein is expressed in the tissue/disease context of interest — cite the source you use and record its snapshot date; drop candidates in tissues where the protein is not expressed to the bottom of the ranking rather than deleting them.
-
Pin the environment and record provenance. Commit
glyco_variants.py, a pinnedrequirements.txt(themcp/biomcp-pythonclient versions), the input variant list,glyco_candidates.csv, and aprovenance.jsoncapturing: GlyGen release version + MCP endpoint, BioMCP version, ClinVar/AlphaMissense snapshot dates, input file sha256, run date, and model id. Follow the reproducibility guide and model the artifact onrecipes/examples/functional-enrichment/. - Emit an IEEE-2791 BioCompute Object. Serialize the run as an IEEE-2791 (BioCompute Object) JSON alongside
provenance.json, populating the standard domains —description_domain.pipeline_steps(the GlyGen lookup → numbering harmonization → LOG/GOG classification → BioMCP join → rank),execution_domain(script, pinned software, the GlyGen MCP / UniProt / BioMCP endpoints),parametric_domain(the sequon rule and ranking),io_domain, anderror_domain(the missense-only scope, the ranking heuristic, theunmappedguard). GlyGen publishes its own source datasets as BCOs (germlineGLY_001534, somaticGLY_001537) — cite those in theio_domaininput as dataset provenance. Validate the object against the published IEEE-2791 JSON schema before relying on it. Seerecipes/examples/glyco-variants/for a reference implementation that emits and validates the BCO.
The natural-language ranked report must cite only what appears in glyco_candidates.csv — the saved table is the audit trail.
Why this assembly
Rung 3 (small toolbelt, two components). One MCP is not enough: GlyGen owns the glycosite ground truth but not the ClinVar/AlphaMissense pathogenicity joins the request needs, and BioMCP owns those joins but has no glycosylation-site data. Neither alone answers “is this variant glycosylation-altering and clinically interesting.” Claude Code alone (rung 1) cannot fetch live glycosite or variant records and would confabulate sequon positions. Rung 4 (an autonomous system) is unwarranted — the workflow is a bounded lookup-join-rank, not an open-ended research loop.
Availability
Fully open to run. GlyGen data is publicly and freely accessible; BioMCP is MIT-licensed and its underlying sources (MyVariant.info → ClinVar, AlphaMissense) are public APIs. Caveat: the GlyGen MCP wrapper repo declares no LICENSE file (flagged on its catalog page as of 2026-07-15), and the endpoint is Beta — pin the release version you queried and expect the tool surface to move.
Compute requirements
Laptop-sufficient. Every step is a read-only remote API call. A list of a few hundred variants completes in minutes; the bottleneck is per-variant BioMCP lookups, not compute. No GPU.
Evidence
Reported. The GlyGen team documents this exact workflow — “Use case: Identifying the impact of mutational loss or gain of glycosylation sites” — in the GlyGen knowledgebase preprint (Mazumder et al., Research Square 2026-07-01), with the SERPINC1 (LOG, Asn135↔Asn167) and IFNGR2 Thr168Asn (GOG) worked examples, and ships a reference implementation as the variants.ipynb Colab notebook (glygener/colab-notebooks) that regenerates the plots from the GlyGen proteoform and mutation datasets. That documents a human running the assembly’s core (glycosite lookup → variant classification → annotation join). The glycosylation-site-disruption mechanism is independently well established (e.g., glycosylation-defect disease mechanisms, Noor et al., J. Biol. Chem. 2021). What is not separately benchmarked is the Claude-driven, GlyGen-MCP + BioMCP composition — no published attempt of the agent-orchestrated version is known; the ranking heuristic here is rational from the component capabilities, not validated.
Alternatives considered
- The Colab notebook directly. If you only need the two published worked examples and don’t need arbitrary variant lists or ClinVar/AlphaMissense joins, run
variants.ipynbas-is — it’s the validated reference. Reach for this recipe when you have your own variant list and want the annotation joins and a re-runnable provenance record. - Interpret a clinical variant (rung 2, BioMCP alone). Use it when the question is general clinical significance of a variant, not specifically its glycosylation consequence. This recipe adds the GlyGen glycosite layer on top.
- Scan a therapeutic antibody for glycosylation sites. The sequence-level sibling — scans a single protein sequence for sequons de novo (no variant list, no clinical join). Use it for developability pre-flight, not variant interpretation.
See also
- GlyGen MCP Server
- BioMCP
- Interpret a clinical variant from a natural-language query — the general variant-annotation sibling.
- Scan a therapeutic antibody for glycosylation sites — the sequence-level glycosite scanner.
- Reproducible, provenance-tracked AI analysis — the artifact pattern this recipe follows.
Sources
- GlyGen knowledgebase preprint (Mazumder et al., Research Square) — posted 2026-07-01; verified 2026-07-16 (this run). Documents the LOG/GOG use case and worked examples.
glygener/colab-notebooks(variants.ipynb) — reference implementation of the glycosylation-variant workflow.- GlyGen germline variant BCO
GLY_001534/ somaticGLY_001537— input-dataset provenance. - Noor et al., J. Biol. Chem. 2021 — glycosylation-defect disease-mechanism support.
Tried this recipe?
Share feedback — what worked, what didn’t, what you’d change. The form opens with this recipe pre-selected and a link back to this page.