get_supplements_for_biomarker
Supplements for a biomarker (read-only)
Supplements in Aviado's evidence graph that move a biomarker (e.g. 'LDL cholesterol', 'HbA1c'). Lists only registry-classified supplements: entities Aviado's identity vocabulary types as supplement, class or combination and marks recommendable; prescription drugs, research compounds, foods and unknown ids are excluded (use get_interventions_for_biomarker for all of them). Each hit has direction (up/down/bidirectional), prior_weight (evidence confidence 0-1, not effect size), graph_status (proven/suspected: internal eligibility labels, not clinical verification), has_verified_support / mixed_evidence, and dose (mean study dose {value, unit}: evidence context, not a dosing recommendation; see coverage.dose_note). Rows carry up to 3 PubMed citations ({pmid, url}) with n_studies / rct_count; optional direction (up/down) filters. Null fields and default typing (coverage.row_defaults) are omitted per row. Results are partial and non-exhaustive; pathway_tags are raw graph metadata, not validated mechanisms. The biomarker may be a name, an abbreviation, an Aviado id or a LOINC code (e.g. '4548-4'). Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
biomarker (string, required): Biomarker name, abbreviation, or LOINC codelimit (integer, 1..100, default 25, optional): Max results (default 25, max 100)direction (string, one of up | down, optional): Only rows whose strongest edge moves the biomarker this way ('down' lowers it, 'up' raises it); bidirectional rows match neither
get_interventions_for_biomarker
All interventions for a biomarker (read-only)
All mixed interventions in Aviado's evidence graph that move a biomarker, each labelled with intervention_type: supplement, food_substance, prescription_drug, research_compound, research_nootropic, medical_compound, form_dependent, not_recommendable or unknown (omitted on plain recommendable supplement rows; see coverage.row_defaults). Rows that are not supplements are context, never a recommendation, and carry no dose or pathway details. Rows carry up to 3 PubMed citations ({pmid, url}); optional direction (up/down) filters. graph_status (proven/suspected) is an internal eligibility label, not clinical validation; pathway_tags are raw graph metadata, not validated mechanisms. Coverage is partial and non-exhaustive; absence is not evidence of no effect (see coverage). The biomarker may be a name, an abbreviation, an Aviado id or a LOINC code (e.g. '4548-4'). Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
biomarker (string, required): Biomarker name, abbreviation, or LOINC codelimit (integer, 1..100, default 25, optional): Max results (default 25, max 100)direction (string, one of up | down, optional): Only rows whose strongest edge moves the biomarker this way ('down' lowers it, 'up' raises it); bidirectional rows match neither
get_biomarkers_for_supplement
Biomarkers a supplement affects (read-only)
Biomarkers a supplement moves in the Aviado app's evidence graph, one entry per biomarker (strongest edge), ordered by prior_weight (graph evidence weight 0-1, not a calibrated probability or effect size). Each entry has direction (up/down/bidirectional), goal/subgoal, has_verified_support / mixed_evidence, up to 3 PubMed citations ({pmid, url}) with n_studies / rct_count, and dose (mean study dose {value, unit}: evidence context, not a dosing recommendation; see coverage.dose_note); null fields are omitted. Partial and non-exhaustive: a missing biomarker is not evidence of no effect. The supplement may be a name or an Aviado canonical_id (from search_supplements or a candidates list). Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
supplement (string, required): Supplement name (e.g., 'fish oil', 'curcumin', 'vitamin D3')limit (integer, 1..100, default 25, optional): Max results (default 25, max 100)
get_supplement_info
Supplement overview and safety (read-only)
Overview of one supplement: description, typical uses, its top 5 biomarkers (with up to 3 PubMed citations each), goals, mechanism tags and cited safety contraindications. Contraindications include those recorded for what it contains (e.g. turmeric shows curcumin's), labelled with recorded_for; only cited rows are shown, so an empty list is not proof of safety. For all biomarkers use get_biomarkers_for_supplement; for drug interactions use get_supplement_interactions. The supplement may be a name or an Aviado canonical_id (from search_supplements or a candidates list). Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
supplement (string, required): Supplement name
get_supplement_interactions
Supplement interactions (drugs and supplements) (read-only)
Drug interactions come only from FDA drug labels: thorough for supplements labels name often (St. John's wort, grapefruit, magnesium, ginkgo) and sparse or missing for most others (e.g. fish oil, vitamin K, berberine, ashwagandha); read coverage.drug, and never treat an empty or short list as proof of safety. To check one medication pass drug (generic name; salt forms merged, so 'warfarin' matches 'warfarin sodium'; brand names are not matched). Also returns curated supplement-supplement interactions (synergies, antagonisms, absorption conflicts, timing), except on a drug check unless include_supplement_interactions is true. Interactions recorded for what the supplement contains are included and labelled: fish oil returns EPA, DHA and omega-3 interactions, turmeric returns curcumin's (interaction_sources, recorded_for). Drug entries are one per drug, most severe first, paged with drug_limit/drug_offset (drug_page.total, next_offset); label_artifact_suspected marks an entry whose drug name contains the supplement only as a salt (e.g. esomeprazole magnesium) and whose text does not mention it. Data-source failures return an error, never an empty list. The supplement may be a name or an Aviado canonical_id (from search_supplements or a candidates list). Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
supplement (string, required): Supplement nameinclude_drug_interactions (boolean, default true, optional): Include FDA drug-supplement interactionsdrug_limit (integer, 1..200, default 20, optional): Max drug interactions to return (default 20, max 200)drug_offset (integer, 0..9007199254740991, default 0, optional): Drug interactions to skip, for paging (use drug_page.next_offset)drug (string, optional): Only return drug interactions for this drug: its generic name (e.g. 'warfarin', 'sertraline'), matched exactly with salt forms merged ('warfarin' matches 'warfarin sodium'); brand names are not matched. Supplement-supplement interactions are then omitted unless include_supplement_interactions is trueinclude_supplement_interactions (boolean, optional): Include supplement-supplement interactions (default: true without drug, false when drug is given)
check_interaction
Check an interaction (read-only)
Point check of one pair, about 1-3 KB: a and b are each a supplement (name or canonical_id) or a medication (generic name; salt forms merged, brand names not matched). Supplement + supplement uses curated interactions (components and classes included); supplement + medication uses FDA drug-label rows only; two medications are not covered (no_match). Returns verdict {found, severity, direction, summary, recommendation, recorded_for, evidence_level, sources} and coverage (level none/sparse/moderate/broad). found:false is NOT a safety answer: absence of a record is not evidence of safety, so read coverage and say so. Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
a (string, required): First supplement (name or canonical id) or medication (generic name)b (string, required): Second supplement (name or canonical id) or medication (generic name)
get_top_brands
Top brands by ProofMark (read-only)
Highest-quality brands for a supplement: one product per brand (its best), ranked by ProofMark, Aviado's product quality score (testing, ingredients, transparency, manufacturing, certifications). proofmark_100 is the 0-100 score (proofmark = proofmark_100/100) with a letter grade; proofmark_status is graded, below_coverage_floor (assessed but too little evidence to score; not a low score) or not_scored, and only graded products carry a score. Retired catalog products are excluded. match_basis says whether products matched the supplement identity or a text search (less precise; may include multi-ingredient products). price, retailer and product_url come from scraped listings and may be missing or stale. The supplement may be a name or an Aviado canonical_id (from search_supplements or a candidates list). Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
supplement (string, required): Supplement namelimit (integer, 1..20, default 5, optional): Number of results (max 20)
search_supplements
Find a supplement (read-only)
Find the Aviado id for a supplement name, exactly (no fuzzy matching). Answers with matches[0] = the identity: vocabulary_exact, or user_intent for salt/form names ('magnesium citrate' -> magnesium, with a form note). A name Aviado does not hold may be answered with a naming-model suggestion (match_type naming_slm_suggestion, identity false); confirm it with the user before using its id. Family names ('lithium') and confirm-only names return needs_confirmation with the members or candidates in candidates. Each match carries entity_type, regulatory_status and recommendable. Use mode='supplement_retail' only for raw retail product titles. Pass the confirmed canonical_id to the other supplement tools.
query (string, required): Supplement identity or raw retail product titlemode (string, one of identity | supplement_retail, default "identity", optional): Explicit routing mode; retail titles require supplement_retail
search_conditions
Find a health condition (read-only)
Find the condition id for a health condition, symptom or goal. Answers when the name matches one condition clearly (data.conditions lists it first, with up to 4 related suggestions); a weak or ambiguous name (e.g. 'blood pressure': high vs low) returns needs_confirmation with the suggestions in candidates. Ask the user which one they mean and pass its id as condition to get_supplements_for_condition.
query (string, required): Search query (e.g., 'sleep', 'anxiety', 'brain fog', 'joint pain')
get_supplements_for_condition
Supplements for a condition (read-only)
Supplements associated with a health condition or goal (e.g. 'insomnia', 'anxiety', 'joint pain'), strongest evidence first. evidence_basis direct rows come from studies of the condition; biomarker_proxy rows are inferred from the supplement's effect on the named proxy_biomarkers (each backed by an effect the Aviado app shows), are hypotheses, and are graded at most D. Only recommendable supplements are listed by default (rows carry intervention_type, entity_type, regulatory_status and recommendable only where they differ from coverage.row_defaults; null fields are omitted); include_non_supplements lists prescription drugs and research compounds too, labelled, as context only. dose is a typical study dose {value, unit}: evidence context, not a dosing recommendation (coverage.dose_note). Partial: absence is not evidence a supplement does not help. A weak or ambiguous condition name returns needs_confirmation with candidate conditions; confirm one and pass its id. Check status first: needs_confirmation / no_match means the input did not resolve, data is null and next_step says how to retry.
condition (string, required): Health condition, symptom, or goal (e.g., 'insomnia', 'anxiety', 'brain fog', 'joint pain')min_grade (string, one of A | B | C | D, default "D", optional): Minimum evidence grade to include (default: D = all)limit (integer, 1..50, default 25, optional): Max supplements to return, ranked by evidence (default: 25, max: 50)include_non_supplements (boolean, default false, optional): Also list prescription drugs, research compounds and other non-recommendable entities, labelled (default false)
build_starter_stack
Build a starter stack (read-only)
Starter stack (default 3, max 5) of recommendable supplements for a goal, condition or biomarker, strongest app-visible evidence first; never Rx or research; biomarker-proxy rows are labelled hypotheses. One item per ingredient family, checked for supplement-supplement interactions with each other and with `exclude`. Each item: why, grade, study dose (evidence context), cited cautions, flags. Drug interactions are NOT checked: ask about medications, then call get_supplement_interactions with `drug`. When enabled, data.claim.claim_url lets the user save the stack in a free Aviado account.
goal (string, required): Goal, condition or biomarker (e.g. 'sleep', 'LDL cholesterol')max_items (integer, 1..5, default 3, optional): Stack size (default 3, max 5)exclude (array, optional): Supplements the user takes or avoids: never suggested, interaction-checkedinclude_claim_link (boolean, default true, optional): Create a claim link (default true; only when enabled)