Q (sonnet): is there a relatinoship between mgmt methylation and idh1 mutation in glioma? ▶ read_guide { "uri": "cbioportal://statistical-tests-guide" } ◀ result Statistical Test Selection Guide ================================ Purpose ------- This guide ensures the correct statistical test is selected before performing any group comparison, matching cBioPortal's own Group Comparison defaults. HARD RULES — NEVER FABRICATE A STATISTIC ---------------------------------------- ClickHouse cannot run statistical tests. The agent therefore must NEVER produce a derived statistic that is not a literal column value from a SQL result. Specifically: 1. **Never invent a p-value.** Not "p < 0.001", not "p ≈ 0.05", not any p-value. If the user asks "what is the p-value?", the answer is *"I can't compute that — here is the 2x2 contingency table (or group statistics). Run it in cBioPortal's Group Comparison tab, in R with `fisher.test(...)` / `wilcox.test(...)`, or in Python with `scipy.stats.fisher_exact(...)` / `mannwhitneyu(...)`."* 2. **Never claim mutual exclusivity (or co-occurrence) from a contingency table alone.** A 2x2 table is not a test. The shape "altered/not altered × group A/group B" needs Fisher's exact + a defined direction (odds ratio < 1 with significant p). Without that test, the agent presents the table and stops. Descriptive phrasing is also a claim: "largely/mostly mutually exclusive", "rarely co-occur", "tend to co-occur" are forbidden without the test — point to cBioPortal's Mutual Exclusivity tab instead. 3. **Never report a "median" that came from `AVG(...)` or any non-median aggregate.** "Median" and "mean" are different statistics; for skewed clinical distributions (especially survival) they differ substantially. Use ClickHouse's `quantile(0.5)(...)` for actual median, and label arithmetic averages as "mean", never "median". 4. **Never report a hazard ratio, odds ratio, risk ratio, or relative risk** that wasn't computed by an external tool. These require regression / model fitting that ClickHouse does not do. 5. **Never report median overall survival from `AVG(OS_MONTHS)` or even `quantile(0.5)(OS_MONTHS)`.** Median OS requires Kaplan-Meier estimation, which handles censoring (`OS_STATUS = 0:LIVING` means the event hasn't happened yet). Naive medians/means over `OS_MONTHS` ignore censoring and are systematically wrong. The correct handoff: return the raw `(OS_MONTHS, OS_STATUS)` pairs (or descriptive counts: N events, N censored, follow-up range) and tell the user to run KM in R (`survival::survfit`) or Python (`lifelines.KaplanMeierFitter`), or use cBioPortal's Survival comparison. If asked to do any of (1)–(5), respond with the appropriate handoff template from the "Approved Response Templates" section below — do not produce the number. Ambiguous-Term Clarification (before any analysis) -------------------------------------------------- If the user's question uses an ambiguous term, ask before computing anything. Examples: - **"aggressive"** → could mean shorter overall survival, higher metastasis rate, higher grade/stage, higher TMB, or specific molecular features. Ask which definit … (9984 more chars) ▶ read_guide { "uri": "cbioportal://clinical-data-guide" } ▶ list_studies { "search": "glioma" } ◀ result # Clinical Data Query Guide ## Overview Clinical data in cBioPortal is stored at both patient and sample levels. Understanding the distinction is crucial for accurate analysis. ## Data Organization ### Patient-Level vs Sample-Level Data - **Patient-level**: Demographics, overall survival, disease stage (stored once per patient) - **Sample-level**: Sample type, sequencing platform, purity (can have multiple per patient) ### Key Tables - `clinical_patient`: Patient-level clinical attributes - `clinical_sample`: Sample-level clinical attributes - `clinical_data_derived`: Pre-joined view combining both levels - `clinical_attribute_meta`: Metadata about available clinical attributes ## Recommended Approach: Use clinical_data_derived The `clinical_data_derived` table is pre-joined and optimized for most queries: ```sql -- Get clinical data for specific attributes SELECT sample_unique_id, patient_unique_id, attribute_name, attribute_value FROM clinical_data_derived WHERE cancer_study_identifier = 'your_study_id' AND attribute_name IN ('CANCER_TYPE', 'SAMPLE_TYPE', 'TMB_NONSYNONYMOUS'); ``` ## Clinical Attribute Discovery ### Use clinical_attribute_meta for Discovering Available Attributes **Always start here** to see what clinical attributes are available for a specific study: ```sql -- Discover available clinical attributes for a study SELECT attr_id, description, patient_attribute, cancer_study_id FROM clinical_attribute_meta WHERE cancer_study_id = ( SELECT cancer_study_id FROM cancer_study WHERE cancer_study_identifier = 'your_study_id' ) ORDER BY patient_attribute, attr_id; ``` **Key Fields:** - **attr_id**: matches attr_id in clinical_sample/clinical_patient tables - **description**: human-readable description of the attribute - **patient_attribute**: true = patient attribute, false = sample attribute - **cancer_study_id**: links to cancer_study table (filter by study) ## Attribute Semantics and Matching ### Case-Insensitive Matching for Attribute Values Clinical values are free text across studies and may differ only by case. For example, a controlled-looking value such as germline mutation status may appear as `GERMLINE`, `Germline`, or another case variant. When filtering `clinical_data_derived.attribute_value`, use case-insensitive matching unless you have already profiled the exact values in the target study: ```sql -- Correct: case-insensitive clinical value filter SELECT DISTINCT sample_unique_id, patient_unique_id FROM clinical_data_derived WHERE cancer_study_identifier = 'your_study_id' AND attribute_name = 'MUTATION_STATUS' AND upper(attribute_value) = 'GERMLINE'; ``` Do not write `attribute_value = 'GERMLINE'` without first checking all distinct values for that attribute in the study. ### Query the Requested Attribute, Not a Proxy Do not infer one clinical attribute from a related subtype or marker. Query the actual requested attribute when it … (17073 more chars) ◀ result {"result":[{"cancer_study_identifier":"glioma_mskcc_2019","name":"Glioma (MSK, Clin Cancer Res 2019)","type_of_cancer_id":"difg","sample_count":1004,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=glioma_mskcc_2019"},{"cancer_study_identifier":"difg_glass","name":"Diffuse Glioma (GLASS Consortium)","type_of_cancer_id":"difg","sample_count":693,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=difg_glass"},{"cancer_study_identifier":"difg_tcga_gdc","name":"Diffuse Glioma (TCGA GDC, 2025)","type_of_cancer_id":"difg","sample_count":530,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=difg_tcga_gdc"},{"cancer_study_identifier":"lgg_tcga","name":"Brain Lower Grade Glioma (TCGA, Firehose Legacy)","type_of_cancer_id":"difg","sample_count":530,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=lgg_tcga"},{"cancer_study_identifier":"lgg_tcga_pan_can_atlas_2018","name":"Brain Lower Grade Glioma (TCGA, PanCancer Atlas)","type_of_cancer_id":"difg","sample_count":514,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=lgg_tcga_pan_can_atlas_2018"},{"cancer_study_identifier":"difg_glass_2019","name":"Diffuse Glioma (GLASS Consortium, Nature 2019)","type_of_cancer_id":"difg","sample_count":444,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=difg_glass_2019"},{"cancer_study_identifier":"brain_cptac_2020","name":"Pediatric Brain Cancer (CPTAC/CHOP, Cell 2020)","type_of_cancer_id":"brain","sample_count":218,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=brain_cptac_2020"},{"cancer_study_identifier":"pcpg_tcga","name":"Pheochromocytoma and Paraganglioma (TCGA, Firehose Legacy)","type_of_cancer_id":"mnet","sample_count":184,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=pcpg_tcga"},{"cancer_study_identifier":"pcpg_tcga_pan_can_atlas_2018","name":"Pheochromocytoma and Paraganglioma (TCGA, PanCancer Atlas)","type_of_cancer_id":"soft_tissue","sample_count":178,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=pcpg_tcga_pan_can_atlas_2018"},{"cancer_study_identifier":"pcpg_tcga_pub","name":"Pheochromocytoma and Paraganglioma (TCGA, Cell 2017)","type_of_cancer_id":"soft_tissue","sample_count":178,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=pcpg_tcga_pub"},{"cancer_study_identifier":"hnsc_a5consortium_2025","name":"Hereditary SDHB-Mutant Pheochromocytomas and Paragangliomas (A5 Consortium, Nature Comm 2025)","type_of_cancer_id":"hnsc","sample_count":94,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=hnsc_a5consortium_2025"},{"cancer_study_identifier":"glioma_msk_2018","name":"Glioma (MSK, Nature 2019)","type_of_cancer_id":"difg","sample_count":91,"has_guide":false,"url":"https://www.cbioportal.org/study/summary?id=glioma_msk_2018"},{"cancer_study_identifier":"difg_msk_2023","name":"IDH-mutated Diffuse Glioma (MSK, Clin Cancer Res 2024)","type_of_cance … (855 more chars) ▶ clickhouse_run_select_query { "query": "SELECT attr_id, description, patient_attribute FROM clinical_attribute_meta WHERE cancer_study_id = (SELECT cancer_study_id FROM cancer_study WHERE cancer_study_identifier = 'lgg_tcga_pan_can_atlas_2018') AND (upper(attr_id) LIKE '%MGMT%' OR upper(attr_id) LIKE '%METHYL%') ORDER BY attr_id" } ◀ result {"rows":[]} ▶ clickhouse_run_select_query { "query": "SELECT cs.cancer_study_identifier, cam.attr_id, cam.description, cam.patient_attribute FROM clinical_attribute_meta cam JOIN cancer_study cs ON cam.cancer_study_id = cs.cancer_study_id WHERE cs.cancer_study_identifier IN ('glioma_mskcc_2019','difg_glass','difg_tcga_gdc','lgg_tcga','difg_glass_2019','glioma_msk_2018','difg_msk_2023','lgg_ucsf_2014','odg_msk_2017') AND (upper(cam.attr_id) LIKE '%MGMT%' OR upper(cam.attr_id) LIKE '%METHYL%') ORDER BY cs.cancer_study_identifier, cam.attr_id" } ◀ result {"rows":[{"cancer_study_identifier":"difg_glass","attr_id":"MGMT_METHYLATION","description":"Clinical assessment of MGMT methylation in samples","patient_attribute":0},{"cancer_study_identifier":"difg_glass","attr_id":"MGMT_METHYLATION_METHOD","description":"MGMT methylation method","patient_attribute":0},{"cancer_study_identifier":"difg_glass_2019","attr_id":"MGMT_METHYLATION","description":"Clinical assessment of MGMT methylation","patient_attribute":0},{"cancer_study_identifier":"difg_glass_2019","attr_id":"MGMT_METHYLATION_METHOD","description":"MGMT Methylation Method","patient_attribute":0},{"cancer_study_identifier":"difg_msk_2023","attr_id":"MGMT_STATUS","description":"MGMT Status","patient_attribute":0},{"cancer_study_identifier":"glioma_mskcc_2019","attr_id":"MGMT_STATUS","description":"MGMT Status","patient_attribute":1},{"cancer_study_identifier":"lgg_ucsf_2014","attr_id":"MGMT_STATUS","description":"MGMT Status","patient_attribute":0}]} ▶ clickhouse_run_select_query { "query": "SELECT attribute_value, COUNT(DISTINCT sample_unique_id) as n FROM clinical_data_derived WHERE cancer_study_identifier = 'difg_glass' AND attribute_name = 'MGMT_METHYLATION' GROUP BY attribute_value ORDER BY n DESC" } ◀ result {"rows":[{"n":376},{"attribute_value":"Methylated","n":176},{"attribute_value":"Unmethylated","n":141}]} ▶ clickhouse_run_select_query { "query": "SELECT attribute_value, COUNT(DISTINCT sample_unique_id) as n FROM clinical_data_derived WHERE cancer_study_identifier = 'glioma_mskcc_2019' AND attribute_name = 'MGMT_STATUS' GROUP BY attribute_value ORDER BY n DESC" } ▶ clickhouse_list_table_columns { "table": "genomic_event_derived" } ◀ result {"rows":[{"n":1},{"attribute_value":"Unmethylated","n":1},{"attribute_value":"Methylated","n":1}]} ◀ result {"columns":[{"name":"sample_unique_id","type":"String"},{"name":"hugo_gene_symbol","type":"String","comment":"HUGO gene symbol (e.g., TP53, KRAS, BRAF). Use for gene-specific queries."},{"name":"entrez_gene_id","type":"Int32"},{"name":"gene_panel_stable_id","type":"LowCardinality(String)"},{"name":"cancer_study_identifier","type":"LowCardinality(String)"},{"name":"genetic_profile_stable_id","type":"LowCardinality(String)"},{"name":"variant_type","type":"LowCardinality(String)","comment":"Type of genomic event: \"mutation\" for SNVs/indels, \"cna\" for copy number alterations, \"structural_variant\" for SVs. Always filter by this."},{"name":"mutation_variant","type":"String","comment":"Protein change notation (e.g., p.V600E, p.R175H). Use for specific variant queries. \"NA\" for non-mutation events."},{"name":"mutation_type","type":"LowCardinality(String)"},{"name":"mutation_status","type":"LowCardinality(String)","comment":"For mutations: Somatic, Germline, UNKNOWN, or UNCALLED. Filter mutation_status != \"UNCALLED\" to exclude uncertain calls. Include all other statuses."},{"name":"driver_filter","type":"LowCardinality(String)"},{"name":"driver_filter_annotation","type":"String"},{"name":"driver_tiers_filter","type":"LowCardinality(String)"},{"name":"driver_tiers_filter_annotation","type":"String"},{"name":"cna_alteration","type":"Nullable(Int8)","comment":"Copy number alteration: only 2 = amplification (AMP) and -2 = deep deletion (HOMDEL) are stored. Shallow deletion (-1), diploid (0) and gain (1) are not in this table; query genetic_alteration_derived WHERE profile_type = 'gistic' (alteration_value is a String, e.g. '-1'). NULL for non-CNA events."},{"name":"cna_cytoband","type":"String"},{"name":"sv_event_info","type":"String"},{"name":"patient_unique_id","type":"String"},{"name":"off_panel","type":"Bool","comment":"Boolean: 1 = mutation outside gene panel coverage (off-panel), 0 = within panel (on-panel). Filter off_panel = 0 for reliable frequency calculations."}]} ▶ clickhouse_run_select_query { "query": " WITH mgmt AS ( SELECT sample_unique_id, attribute_value AS mgmt_status FROM clinical_data_derived WHERE cancer_study_identifier = 'difg_glass' AND attribute_name = 'MGMT_METHYLATION' AND attribute_value IN ('Methylated','Unmethylated') ), idh1_mut AS ( SELECT DISTINCT sample_unique_id FROM genomic_event_derived WHERE cancer_study_identifier = 'difg_glass' AND hugo_gene_symbol = 'IDH1' AND variant_type = 'mutation' AND mutation_status != 'UNCALLED' AND off_panel = 0 ), profiled AS ( SELECT DISTINCT sample_unique_id FROM genomic_event_derived WHERE cancer_study_identifier = 'difg_glass' ) SELECT mgmt.mgmt_status, if(mgmt.sample_unique_id IN (SELECT sample_unique_id FROM idh1_mut), 'IDH1 Mutant', 'IDH1 Wild-type') AS idh1_status, COUNT(DISTINCT mgmt.sample_unique_id) AS n_samples FROM mgmt WHERE mgmt.sample_unique_id IN (SELECT sample_unique_id FROM profiled) GROUP BY mgmt.mgmt_status, idh1_status ORDER BY mgmt.mgmt_status, idh1_status " } ◀ result {"rows":[{"mgmt_status":"Methylated","idh1_status":"IDH1 Mutant","n_samples":78},{"mgmt_status":"Methylated","idh1_status":"IDH1 Wild-type","n_samples":80},{"mgmt_status":"Unmethylated","idh1_status":"IDH1 Mutant","n_samples":13},{"mgmt_status":"Unmethylated","idh1_status":"IDH1 Wild-type","n_samples":108}]} ▶ resolve_and_route { "studyIds": [ "difg_glass" ] } ◀ result {"success":true,"message":"Found 1 study. Use the metadata to call the appropriate navigation tool(s).","data":{"totalCount":1,"studiesWithMetadata":[{"studyId":"difg_glass","name":"Diffuse Glioma (GLASS Consortium)","sampleCount":693,"studyViewUrl":"https://www.cbioportal.org/study?id=difg_glass","metadata":{"clinicalAttributeIds":["AGE","ALIQUOT_ANALYSIS_TYPE","ALKYLATING_AGENT_TX","CANCER_TYPE","CANCER_TYPE_DETAILED","CASE_PROJECT","CODEL_STATUS","DNA_ALIQUOT_BARCODE","ESTIMATE_SCORE","FRACTION_GENOME_ALTERED","HISTOLOGY","IDH_CODEL_STATUS","IDH_STATUS","IMMUNE_SCORE","MGMT_METHYLATION","MGMT_METHYLATION_METHOD","MUTATION_COUNT","ONCOTREE_CODE","OS_MONTHS","OS_STATUS","PURITY","RNA_ALIQUOT_BARCODE","SAMPLE_COUNT","SAMPLE_TYPE","SEX","STROMAL_SCORE","SURGERY_EXTENT_OF_RESECTION","SURGERY_INDICATION","SURGERY_LATERALITY","SURGERY_LOCATION","SURGERY_TYPE","TISSUE_SOURCE","TREATMENT_CONCURRENT_TMZ","TREATMENT_RADIATION_DOSE_GY","TREATMENT_RADIOTHERAPY","TREATMENT_TMZ","TREATMENT_TMZ_CYCLES","TREATMENT_TMZ_CYCLES_6","TUMOR_CLASSIFICATION","TUMOR_GRADE"],"molecularProfileIds":["difg_glass_cna","difg_glass_mrna_seq_tpm_all_sample_Zscores","difg_glass_mutations","difg_glass_rna_seq_mrna"],"heatmapProfileIds":["difg_glass_mrna_seq_tpm_all_sample_Zscores"],"availableComparisonTabs":["overlap","clinical","survival","alterations","mutations","mrna"]}}]}} ▶ mcp__navigator__get_studyviewfilter_options { "studyId": "difg_glass", "attributeIds": "[\"MGMT_METHYLATION\"]" } ✗ error Error: No such tool available: mcp__claude_ai_cBioPortal_MCP__mcp__navigator__get_studyviewfilter_options ▶ get_studyviewfilter_options { "studyId": "difg_glass", "attributeIds": [ "MGMT_METHYLATION" ] } ◀ result {"success":true,"message":"Successfully retrieved StudyView filter options","data":{"studyId":"difg_glass","attributes":[{"attributeId":"MGMT_METHYLATION","displayName":"MGMT Methylation","description":"Clinical assessment of MGMT methylation in samples","datatype":"STRING","values":["Methylated","NA","Unmethylated"]}]}} ▶ navigate_to_group_comparison { "studyIds": [ "difg_glass" ], "tab": "alterations", "selectedGene": "IDH1", "groups": [ { "name": "MGMT Methylated", "studyViewFilter": { "clinicalDataFilters": [ { "attributeId": "MGMT_METHYLATION", "values": [ { "value": "Methylated" } ] } ] } }, { "name": "MGMT Unmethylated", "studyViewFilter": { "clinicalDataFilters": [ { "attributeId": "MGMT_METHYLATION", "values": [ { "value": "Unmethylated" } ] } ] } } ] } ◀ result {"success":true,"message":"Navigating to https://www.cbioportal.org/comparison/alterations?comparisonId=6ab5d3aec2115c492d884e32&selectedGene=IDH1","url":"https://www.cbioportal.org/comparison/alterations?comparisonId=6ab5d3aec2115c492d884e32&selectedGene=IDH1","data":{"description":"Group comparison (2 custom groups)","studies":["difg_glass"],"totalGroups":2,"groups":[{"name":"MGMT Methylated","sampleCount":176},{"name":"MGMT Unmethylated","sampleCount":141}],"studyViewUrl":"https://www.cbioportal.org/study?id=difg_glass","groupUrls":[{"groupName":"MGMT Methylated","url":"https://www.cbioportal.org/study?id=difg_glass#filterJson=%7B%22clinicalDataFilters%22%3A%5B%7B%22attributeId%22%3A%22MGMT_METHYLATION%22%2C%22values%22%3A%5B%7B%22value%22%3A%22Methylated%22%7D%5D%7D%5D%7D"},{"groupName":"MGMT Unmethylated","url":"https://www.cbioportal.org/study?id=difg_glass#filterJson=%7B%22clinicalDataFilters%22%3A%5B%7B%22attributeId%22%3A%22MGMT_METHYLATION%22%2C%22values%22%3A%5B%7B%22value%22%3A%22Unmethylated%22%7D%5D%7D%5D%7D"}],"pageDescription":"Comparison of genomic alteration rates across MGMT Methylated (176) vs MGMT Unmethylated (141)."}} ▶ navigate_to_study_view { "studyIds": [ "difg_glass" ], "filterJson": { "geneFilters": [ { "molecularProfileIds": [ "difg_glass_mutations" ], "geneQueries": [ [ { "hugoGeneSymbol": "IDH1" } ] ] } ] } } ◀ result {"success":true,"message":"Navigating to https://www.cbioportal.org/study/summary?id=difg_glass#filterJson=%7B%22geneFilters%22%3A%5B%7B%22geneQueries%22%3A%5B%5B%7B%22hugoGeneSymbol%22%3A%22IDH1%22%7D%5D%5D%2C%22molecularProfileIds%22%3A%5B%22difg_glass_mutations%22%5D%7D%5D%7D","url":"https://www.cbioportal.org/study/summary?id=difg_glass#filterJson=%7B%22geneFilters%22%3A%5B%7B%22geneQueries%22%3A%5B%5B%7B%22hugoGeneSymbol%22%3A%22IDH1%22%7D%5D%5D%2C%22molecularProfileIds%22%3A%5B%22difg_glass_mutations%22%5D%7D%5D%7D","data":{"studyIds":["difg_glass"],"studies":[{"studyId":"difg_glass","name":"Diffuse Glioma (GLASS Consortium)","sampleCount":693}],"tab":"summary","hasFilters":true,"hasPlotsConfig":false,"pageDescription":"Overview of all study data displayed as interactive charts summarizing available clinical and genomic data. Click within a chart to filter. Additional charts may be available in the Charts menu."}} ═ answer (success) Here are two direct links for exploring this in cBioPortal: **[Group Comparison: MGMT Methylated (176) vs MGMT Unmethylated (141), IDH1 alterations](https://www.cbioportal.org/comparison/alterations?comparisonId=6ab5d3aec2115c492d884e32&selectedGene=IDH1)** Comparison of genomic alteration rates across MGMT Methylated (176 samples) vs MGMT Unmethylated (141 samples) in the Diffuse Glioma (GLASS Consortium) cohort. This page will show IDH1 alteration frequency per group and includes cBioPortal's built-in Fisher's exact test for enrichment. **[Study View: IDH1-mutant samples, Diffuse Glioma (GLASS Consortium)](https://www.cbioportal.org/study/summary?id=difg_glass#filterJson=%7B%22geneFilters%22%3A%5B%7B%22geneQueries%22%3A%5B%5B%7B%22hugoGeneSymbol%22%3A%22IDH1%22%7D%5D%5D%2C%22molecularProfileIds%22%3A%5B%22difg_glass_mutations%22%5D%7D%5D%7D)** Cohort overview filtered to IDH1-mutant samples — you can add the MGMT Methylation chart from the Charts menu to see the split live. **Bottom line:** In the 279-sample subset with both data types, IDH1-mutant tumors were methylated at MGMT in 78/91 (86%) of cases versus only 80/188 (43%) for IDH1-wild-type tumors. This is a strong descriptive association, but confirming statistical significance requires the Fisher's exact test available on the Group Comparison page linked above (or run it yourself in R/Python with the counts given).