Folklore variant evidence

Retrieve ClinGen gene-disease validity assertions for a public gene or disease, and review source-linked public evidence and literature for one supported GRCh38 germline nuclear SNV or simple indel through Folklore Clinical Variant Interpretation MCP.

How to use it

  1. Hit Copy the whole skill.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit K-Dense-AI/scientific-agent-skills/skills/folklore-variant-evidence#main ~/.claude/skills/folklore-variant-evidence

For one project only, change the path to .claude/skills/folklore-variant-evidence.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text223 lines
folklore-variant-evidence/SKILL.md223 lines10.5 KBpushed 10d agoRawView on GitHub

Folklore Variant Evidence

Use Folklore Clinical Variant Interpretation MCP to retrieve structured public variant evidence, automated variant-level ACMG/AMP decision support, provenance, and source-linked literature for professional review. Keep the workflow limited to public identifiers and preserve every explicit outcome state. Adapter 1.5.0 also provides ClinGen Gene-Disease Validity assertions; source coverage is bounded, not every known association.

Folklore Clinical Variant Interpretation MCP is published by Helena Bioinformatics. Its hosted endpoint is:

https://api.helena.bio/folklore/v1/mcp

No account or API key is required. The public Apache-2.0 adapter and contract are available at https://github.com/helena-bioinformatics/folklore-mcp.

Minimal connection example

A host without native MCP support can make the same public JSON-RPC call:

curl --silent --show-error --fail-with-body --max-time 60 \
  -X POST https://api.helena.bio/folklore/v1/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2026-07-28' \
  -H 'Mcp-Method: tools/call' \
  -H 'Mcp-Name: search_variant_evidence' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientCapabilities":{}},"name":"search_variant_evidence","arguments":{"assembly":"GRCh38","query":"rs80357914"}}}'

Inspect the returned outcome before continuing. This example can return ambiguous with multiple candidates: stop and request an unambiguous public variant notation instead of selecting a candidate automatically.

Select the right skill

Use this skill when the task is one public variant to structured Folklore evidence, explicit resolution-state handling, variant-linked literature, or ClinGen gene-to-disease/disease-to-gene assertions.

  • Use database-lookup for broad direct queries across ClinVar, dbSNP, gnomAD, Ensembl VEP, COSMIC, or multiple databases.
  • Use genomic-coordinates first when the assembly, coordinate convention, contig name, or variant representation is uncertain.
  • Do not use this skill for VCF annotation, batch processing, somatic variants, structural variants, polygenic scores, or patient-specific interpretation.

Folklore Clinical Variant Interpretation MCP complements those skills with one source-linked public evidence contract. It does not replace direct database review or qualified clinical judgment.

Enforce the input boundary

Before a variant tool call:

  1. Extract exactly one public variant identifier or notation.
  2. Require GRCh38 and a germline nuclear SNV or simple indel.
  3. Remove or refuse patient names, case identifiers, phenotypes, family history, segregation evidence, clinical records, uploaded files, and other private or patient-specific context.
  4. If the task depends on patient context, stop and explain that Folklore Clinical Variant Interpretation MCP does not accept or evaluate it.
  5. Never transform a patient-specific request into a public variant query while implying that the result answers the patient-specific question.

Accepted public variant forms include genomic coordinates, genomic/coding/ protein HGVS, SPDI, rsID, or a canonical_key returned by Folklore Clinical Variant Interpretation MCP.

Verify the live tool catalog

Connect to the hosted endpoint and call tools/list. Verify the available tools instead of relying on model memory. The documented public catalog contains:

  • search_variant_evidence
  • search_variant_literature
  • get_publication_details
  • search_literature_corpus
  • get_gene_disease_associations
  • search_disease_genes

The separate seventh tool support_helena is not scientific evidence; use it only when explicitly requested.

If discovery or a tool call fails, preserve the failure as an availability problem. Do not reinterpret it as lack of scientific evidence.

Read the public MCP contract before composing tool calls or interpreting response states.

Retrieve gene-disease assertions

Use get_gene_disease_associations for one exact gene symbol or HGNC identifier, or search_disease_genes for an exact MONDO identifier or public disease-name substring. Both accept limit (default 20, 1–50) and offset (default 0, 0–1000). See the reference for request examples. This is a separate source lookup and requires no variant input or assembly.

Preserve each returned disease identity, inheritance, evidence assessment, source URL, date and snapshot. Do not combine distinct diseases or silently choose among name matches. Gene-disease validity does not classify a particular variant. Empty results mean no matching assertion in the available ClinGen source, not no association. No patient, phenotype, family, segregation, private case data or sequencing files may be sent. Qualified professional review remains required.

Run the variant-evidence workflow

1. Resolve and retrieve evidence

Call search_variant_evidence with:

assembly: GRCh38
query: <one public variant identifier or notation>

Do not add phenotype, disease, patient, family, or treatment context to this call. Preserve the returned contract fields, source links, limitations, and usage boundary.

2. Branch on the returned status

Treat the status as a control-flow value, not prose:

Status Required action
resolved Reuse the returned canonical_key; review the structured interpretation, provenance, source links, and limitations.
ambiguous Show the returned candidates and ask for an explicit public variant selection. Never choose a candidate automatically.
not_found Report that no result was found within this service and query scope. Do not claim universal absence.
invalid_request Report the validation problem and request a corrected public variant. Do not silently reinterpret the input.
unsupported State the relevant service boundary and stop. Do not force the query into a supported form.
resolution_unavailable Report a temporary resolution or availability failure. Do not treat it as evidence absence.

Only a resolved result may proceed automatically into a variant-linked literature workflow. If a resolved interpretation itself reports unavailable evidence, preserve that separate limitation.

3. Review the evidence without overclaiming

For a resolved result:

  • Present the returned variant identity and canonical_key.
  • Preserve the automated variant-level ACMG/AMP decision-support result exactly as returned.
  • Cite the returned public sources and provenance.
  • Separate returned facts from the agent's synthesis.
  • State that qualified professional review is required.
  • Do not turn the result into a diagnosis, individual risk estimate, treatment recommendation, or standalone clinical report.

Chain into literature

Variant-linked literature

After a resolved evidence call, pass the returned canonical_key to search_variant_literature. Keep assembly as GRCh38. An optional question may narrow the literature focus, but it must remain a public scientific question and must not contain patient context.

Distinguish each result's match type:

  • exact_variant: direct match to the resolved variant
  • variant_alias: match through a reported alias
  • gene_association: broader gene-level association, not variant-specific proof

Literature associations do not alter the returned ACMG/AMP classification.

Publication details

Call get_publication_details only with a PMID returned by the literature tools. Preserve PubMed URLs, DOI/PMCID fields when present, retraction status, and the distinction between gene mentions and variant mentions.

Semantic corpus search

Use search_literature_corpus for a public natural-language scientific question or for discovery by publication identifier, gene, variant, phenotype, HPO, or OMIM concept. Treat results as source-linked candidates for professional review. A zero-result response means no result was returned for that bounded query, not that no relevant publication exists anywhere.

Do not place patient information into a corpus query, even if the query is not variant-specific.

Report a reproducible result

Include:

  1. The exact public query and GRCh38 assembly.
  2. The returned status and, if resolved, the canonical_key.
  3. The structured evidence or literature result without changing its meaning.
  4. Source links and publication identifiers.
  5. Match type for literature results.
  6. Access date and any availability limitation.
  7. This boundary statement:

This is public, variant-level decision support for qualified professional review. It does not evaluate patient, phenotype, family, segregation, or private case data and is not a diagnosis or treatment recommendation.

Falsifiable smoke test

Use the public rsID rs80357914 to test ambiguity handling:

Call search_variant_evidence with assembly GRCh38 and query rs80357914. If the
result is ambiguous, list the returned candidates and stop for explicit
selection. Do not select a candidate or call downstream literature tools.

The test passes only if an ambiguous response causes the workflow to stop without automatic candidate selection.

Official references

1---
2name: folklore-variant-evidence
3description: "Retrieve ClinGen gene-disease validity assertions for a public gene or disease, and review source-linked public evidence and literature for one supported GRCh38 germline nuclear SNV or simple indel through Folklore Clinical Variant Interpretation MCP. Use when a scientific agent must branch deterministically on resolved, ambiguous, not-found, invalid, unsupported, or unavailable variant outcomes; chain a resolved public variant into related literature or publication details; or preserve evidence provenance without accepting patient, phenotype, family, segregation, or private case data."
4license: MIT
5compatibility: Requires network access to api.helena.bio (stateless Streamable HTTP MCP, no credentials); works from any MCP-capable host or via JSON-RPC POST with curl.
6metadata:
7 version: "1.0"
8 skill-author: "Helena Bioinformatics"
9 website: "https://folklore.helena.bio"
10 github: "https://github.com/helena-bioinformatics/folklore-mcp"
11---
12 
13# Folklore Variant Evidence
14 
15Use Folklore Clinical Variant Interpretation MCP to retrieve structured public
16variant evidence, automated variant-level ACMG/AMP decision support, provenance,
17and source-linked literature for professional review. Keep the workflow limited
18to public identifiers and preserve every explicit outcome state. Adapter 1.5.0 also provides ClinGen Gene-Disease Validity assertions; source coverage is bounded, not every known association.
19 
20Folklore Clinical Variant Interpretation MCP is published by Helena
21Bioinformatics. Its hosted endpoint is:
22 
23```text
24https://api.helena.bio/folklore/v1/mcp
25```
26 
27No account or API key is required. The public Apache-2.0 adapter and contract are
28available at <https://github.com/helena-bioinformatics/folklore-mcp>.
29 
30## Minimal connection example
31 
32A host without native MCP support can make the same public JSON-RPC call:
33 
34```bash
35curl --silent --show-error --fail-with-body --max-time 60 \
36 -X POST https://api.helena.bio/folklore/v1/mcp \
37 -H 'Content-Type: application/json' \
38 -H 'Accept: application/json, text/event-stream' \
39 -H 'MCP-Protocol-Version: 2026-07-28' \
40 -H 'Mcp-Method: tools/call' \
41 -H 'Mcp-Name: search_variant_evidence' \
42 -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientCapabilities":{}},"name":"search_variant_evidence","arguments":{"assembly":"GRCh38","query":"rs80357914"}}}'
43```
44 
45Inspect the returned outcome before continuing. This example can return
46`ambiguous` with multiple candidates: stop and request an unambiguous public
47variant notation instead of selecting a candidate automatically.
48 
49## Select the right skill
50 
51Use this skill when the task is one public variant to structured Folklore
52evidence, explicit resolution-state handling, variant-linked literature, or ClinGen gene-to-disease/disease-to-gene assertions.
53 
54- Use `database-lookup` for broad direct queries across ClinVar, dbSNP, gnomAD,
55 Ensembl VEP, COSMIC, or multiple databases.
56- Use `genomic-coordinates` first when the assembly, coordinate convention,
57 contig name, or variant representation is uncertain.
58- Do not use this skill for VCF annotation, batch processing, somatic variants,
59 structural variants, polygenic scores, or patient-specific interpretation.
60 
61Folklore Clinical Variant Interpretation MCP complements those skills with one
62source-linked public evidence contract. It does not replace direct database
63review or qualified clinical judgment.
64 
65## Enforce the input boundary
66 
67Before a variant tool call:
68 
691. Extract exactly one public variant identifier or notation.
702. Require GRCh38 and a germline nuclear SNV or simple indel.
713. Remove or refuse patient names, case identifiers, phenotypes, family history,
72 segregation evidence, clinical records, uploaded files, and other private or
73 patient-specific context.
744. If the task depends on patient context, stop and explain that Folklore
75 Clinical Variant Interpretation MCP does not accept or evaluate it.
765. Never transform a patient-specific request into a public variant query while
77 implying that the result answers the patient-specific question.
78 
79Accepted public variant forms include genomic coordinates, genomic/coding/
80protein HGVS, SPDI, rsID, or a `canonical_key` returned by Folklore Clinical
81Variant Interpretation MCP.
82 
83## Verify the live tool catalog
84 
85Connect to the hosted endpoint and call `tools/list`. Verify the available tools
86instead of relying on model memory. The documented public catalog contains:
87 
88- `search_variant_evidence`
89- `search_variant_literature`
90- `get_publication_details`
91- `search_literature_corpus`
92- `get_gene_disease_associations`
93- `search_disease_genes`
94 
95The separate seventh tool `support_helena` is not scientific evidence; use it only when explicitly requested.
96 
97If discovery or a tool call fails, preserve the failure as an availability
98problem. Do not reinterpret it as lack of scientific evidence.
99 
100Read [the public MCP contract](references/mcp-contract.md) before composing tool
101calls or interpreting response states.
102 
103## Retrieve gene-disease assertions
104 
105Use `get_gene_disease_associations` for one exact gene symbol or HGNC identifier, or `search_disease_genes` for an exact MONDO identifier or public disease-name substring. Both accept `limit` (default 20, 1–50) and `offset` (default 0, 0–1000). See the reference for request examples. This is a separate source lookup and requires no variant input or assembly.
106 
107Preserve each returned disease identity, inheritance, evidence assessment, source URL, date and snapshot. Do not combine distinct diseases or silently choose among name matches. Gene-disease validity does not classify a particular variant. Empty results mean no matching assertion in the available ClinGen source, not no association. No patient, phenotype, family, segregation, private case data or sequencing files may be sent. Qualified professional review remains required.
108 
109## Run the variant-evidence workflow
110 
111### 1. Resolve and retrieve evidence
112 
113Call `search_variant_evidence` with:
114 
115```text
116assembly: GRCh38
117query: <one public variant identifier or notation>
118```
119 
120Do not add phenotype, disease, patient, family, or treatment context to this
121call. Preserve the returned contract fields, source links, limitations, and
122usage boundary.
123 
124### 2. Branch on the returned status
125 
126Treat the status as a control-flow value, not prose:
127 
128| Status | Required action |
129|---|---|
130| `resolved` | Reuse the returned `canonical_key`; review the structured interpretation, provenance, source links, and limitations. |
131| `ambiguous` | Show the returned candidates and ask for an explicit public variant selection. Never choose a candidate automatically. |
132| `not_found` | Report that no result was found within this service and query scope. Do not claim universal absence. |
133| `invalid_request` | Report the validation problem and request a corrected public variant. Do not silently reinterpret the input. |
134| `unsupported` | State the relevant service boundary and stop. Do not force the query into a supported form. |
135| `resolution_unavailable` | Report a temporary resolution or availability failure. Do not treat it as evidence absence. |
136 
137Only a `resolved` result may proceed automatically into a variant-linked
138literature workflow. If a resolved interpretation itself reports unavailable
139evidence, preserve that separate limitation.
140 
141### 3. Review the evidence without overclaiming
142 
143For a resolved result:
144 
145- Present the returned variant identity and `canonical_key`.
146- Preserve the automated variant-level ACMG/AMP decision-support result exactly
147 as returned.
148- Cite the returned public sources and provenance.
149- Separate returned facts from the agent's synthesis.
150- State that qualified professional review is required.
151- Do not turn the result into a diagnosis, individual risk estimate, treatment
152 recommendation, or standalone clinical report.
153 
154## Chain into literature
155 
156### Variant-linked literature
157 
158After a resolved evidence call, pass the returned `canonical_key` to
159`search_variant_literature`. Keep `assembly` as `GRCh38`. An optional `question`
160may narrow the literature focus, but it must remain a public scientific question
161and must not contain patient context.
162 
163Distinguish each result's match type:
164 
165- `exact_variant`: direct match to the resolved variant
166- `variant_alias`: match through a reported alias
167- `gene_association`: broader gene-level association, not variant-specific proof
168 
169Literature associations do not alter the returned ACMG/AMP classification.
170 
171### Publication details
172 
173Call `get_publication_details` only with a PMID returned by the literature tools.
174Preserve PubMed URLs, DOI/PMCID fields when present, retraction status, and the
175distinction between gene mentions and variant mentions.
176 
177### Semantic corpus search
178 
179Use `search_literature_corpus` for a public natural-language scientific question
180or for discovery by publication identifier, gene, variant, phenotype, HPO, or
181OMIM concept. Treat results as source-linked candidates for professional review.
182A zero-result response means no result was returned for that bounded query, not
183that no relevant publication exists anywhere.
184 
185Do not place patient information into a corpus query, even if the query is not
186variant-specific.
187 
188## Report a reproducible result
189 
190Include:
191 
1921. The exact public query and `GRCh38` assembly.
1932. The returned status and, if resolved, the `canonical_key`.
1943. The structured evidence or literature result without changing its meaning.
1954. Source links and publication identifiers.
1965. Match type for literature results.
1976. Access date and any availability limitation.
1987. This boundary statement:
199 
200> This is public, variant-level decision support for qualified professional
201> review. It does not evaluate patient, phenotype, family, segregation, or
202> private case data and is not a diagnosis or treatment recommendation.
203 
204## Falsifiable smoke test
205 
206Use the public rsID `rs80357914` to test ambiguity handling:
207 
208```text
209Call search_variant_evidence with assembly GRCh38 and query rs80357914. If the
210result is ambiguous, list the returned candidates and stop for explicit
211selection. Do not select a candidate or call downstream literature tools.
212```
213 
214The test passes only if an ambiguous response causes the workflow to stop
215without automatic candidate selection.
216 
217## Official references
218 
219- Integration setup: <https://folklore.helena.bio/integrations>
220- Technical guide: <https://folklore.helena.bio/docs/folklore-connector>
221- Public adapter and contract: <https://github.com/helena-bioinformatics/folklore-mcp>
222- Official MCP Registry identity: `io.github.helena-bioinformatics/folklore`
223 

Discussion

Alternatives

Also in Genomics & omics
AnndataData structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.Science · MITArboretoInfer gene regulatory networks (GRNs) from gene expression data using scalable algorithms (GRNBoost2, GENIE3). Use when analyzing transcriptomics data (bulk RNA-seq, single-cell RNA-seq) to identify transcription factor-target gene relationships and regulatory interactions. Supports distributed computation for large-scale datasets.Science · MITBiopython: Computational Molecular Biology in PythonComprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.Science · MITBulk rnaseqEnd-to-end bulk RNA-seq orchestrator — takes raw FASTQ reads through QC and trimming (FastQC, fastp/Trim Galore), alignment and quantification (STAR, Salmon, featureCounts), assembles a gene-level counts matrix, then hands off to differential expression (pydeseq2), pathway/GSEA enrichment (pathway-enrichment), and publication figures (scientific-visualization). Use whenever the user has bulk RNA-seq reads or quant output and wants a complete, reproducible differential-expression workflow — e.g. "analyze my RNA-seq", "FASTQ to DESeq2", "run nf-core/rnaseq", "STAR/Salmon quantification", "build a counts matrix for DESeq2", or "go from reads to differentially expressed genes and enriched pathways". Routes between an nf-core/rnaseq (Nextflow) path and a standalone STAR/Salmon path, and covers experimental design, strandedness, and QC gates. For single-cell RNA-seq use the scanpy skill instead.Science · MIT