{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-05T19:29:49.375Z","url":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice","markdownUrl":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice.md","server":{"slug":"cloudcorprecords-medprice","name":"io.github.CloudCorpRecords/medprice","registryName":"io.github.CloudCorpRecords/medprice","description":"Compare US prescription prices by pharmacy, find nearby pharmacies and drug equivalents.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"ghcr-io-cloudcorprecords-medprice","type":"oci","identifier":"ghcr.io/cloudcorprecords/medprice","withdrawn":false,"url":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice","version":"0.1.0","transport":"stdio","scoredAt":"2026-11-05T06:49:23.317Z"},"score":{"total":37,"tier":"low","status":"scored","weekDelta":null,"history":[{"date":"2026-11-05","total":37},{"date":"2026-11-04","total":37}]},"categories":[{"name":"Supply Chain Security","score":0,"verdict":"unverified","reasons":["No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.","Known CVEs could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.","Install-script risk not yet assessed.","Dependency health could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read."],"codes":[{"code":"supplychain.malware_inconclusive","args":{"reason":"ecosystem_unsupported"}},{"code":"cve.inconclusive","args":{"reason":"no_sbom_attached"}},{"code":"installscript.inconclusive","args":{"reason":"no_install_concept"}},{"code":"dephealth.inconclusive","args":{"reason":"no_sbom_attached"}}]},{"name":"Provenance & Transparency","score":45,"verdict":"fail","reasons":["Source repository is publicly reachable at the declared URL.","Provenance check failed: no build-provenance attestation is published.","Clear OSI-approved license (MIT).","Actively maintained (last published 0 days ago).","Disclosure check failed: no security disclosure policy was found in the source repository."],"codes":[{"code":"provenance.repo_verified","args":{}},{"code":"provenance.none","args":{}},{"code":"license.osi","args":{"spdx":"MIT"}},{"code":"maintenance.recent","args":{"age_days":"0"}},{"code":"disclosure.absent","args":{}}]},{"name":"Schema Quality & AI Usability","score":62,"verdict":"fail","reasons":["AI-judged instruction clarity (excellent).","Context-footprint check failed: tool/resource definitions use about 5094 tokens (~283/item across 18 items; 18 tools + 0 resources), over budget; trim descriptions and params.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.ai_quality","args":{"band":"excellent"}},{"code":"schema.footprint_heavy","args":{"avg":"283","items":"18","tools":"18","tokens":"5094","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":3,"verdict":"partial","reasons":["Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"1"}}]},{"name":"Tool Coverage","score":100,"verdict":"pass","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","100% of tool parameters carry a description."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"100"}}]},{"name":"Tool Safety","score":75,"verdict":"fail","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; \"get_transfer_steps\" implies \"transfer\" and declares no destructiveHint at all, which the MCP spec reads as destructive by default.","An AI judge read all 18 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_undeclared","args":{"pct":"0","tool":"get_transfer_steps","verb":"transfer","declared":"none","annotated":"0","destructive":"1"}},{"code":"toolsafety.manipulation_clean","args":{"units":"18","judged":"18"}}]},{"name":"Capabilities","score":100,"verdict":"pass","reasons":["Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28."],"codes":[{"code":"protocol.supported","args":{"latest":"2026-07-28","version":"2025-11-25"}}]}],"inconclusive":["No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.","Known CVEs could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.","Install-script risk not yet assessed.","Dependency health could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read."],"malware":[],"components":[{"slug":"reneturcios-medprice","type":"npm","identifier":"@reneturcios/medprice","withdrawn":false,"score":66,"current":false,"url":"https://verifymcp.io/servers/cloudcorprecords-medprice/reneturcios-medprice","markdownUrl":"https://verifymcp.io/servers/cloudcorprecords-medprice/reneturcios-medprice.md"},{"slug":"ghcr-io-cloudcorprecords-medprice","type":"oci","identifier":"ghcr.io/cloudcorprecords/medprice","withdrawn":false,"score":37,"current":true,"url":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice","markdownUrl":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice.md"}],"facts":[{"label":"Registry","value":"oci"},{"label":"Package","value":"ghcr.io/cloudcorprecords/medprice"},{"label":"Version","value":"0.1.0"},{"label":"Transport","value":"stdio"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"compare_prices","title":null,"description":"Price of one medicine with the free FineRx card at US pharmacy chains, near a place.\n\n    Use when the person asks what a medicine costs, where it costs less, or its\n    price near them or in a ZIP code. ``drug`` is a name as typed or a slug from\n    search_drugs; ``strength`` (\"10 mg\"), ``form`` (\"tablet\") and ``quantity``\n    are optional (the package with the most chains priced is used). ``zip`` is a\n    5-digit US ZIP — pass it only when the person gave one; without it the host's\n    approximate location is used when there is one, else the answer is national\n    and asks for a ZIP. ``ndc`` (+ ``quantity``) is accepted for older callers.\n    ``compare_to`` is a dollar amount the person named for THIS package — their\n    insurance copay, what they pay now, or a price they want to hear about —\n    and the answer then says how many chains were seen below it.\n\n    Returns the package, every chain's card price with its observation date\n    (Walmart per state), the nearest store of each chain with a store nearby,\n    chains with a card price but no store nearby, coverage (``other_quantities``\n    lists the pack sizes that were seen), and the card: codes, the dated price\n    with the card, and the card sentence.\n\n    Next: quote each price with its date and chain; say the price is set per\n    chain; then the card sentence and codes.","inputs":[{"name":"channel","type":null,"required":false,"description":"An optional channel tag identifying where the request comes through; leave it out unless the calling host supplies one."},{"name":"compare_to","type":null,"required":false,"description":"A dollar amount the person named for this package (their insurance copay, what they pay now, or a price they want to beat); the answer then says how many chains were seen below it."},{"name":"drug","type":null,"required":false,"description":"The medicine: a name as typed, or a slug from search_drugs."},{"name":"form","type":null,"required":false,"description":"The dosage form of the medicine (e.g. \"tablet\")."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"ndc","type":null,"required":false,"description":"The medicine's NDC (National Drug Code); accepted together with quantity for older callers."},{"name":"quantity","type":null,"required":false,"description":"The quantity to price (the pack size / number of units)."},{"name":"strength","type":null,"required":false,"description":"The strength of the medicine (e.g. \"10 mg\")."},{"name":"zip","type":null,"required":false,"description":"A 5-digit US ZIP code to locate prices and stores near; pass it only when the person gave one."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":546},{"name":"ui_prices","title":null,"description":"Card prices for another dose, quantity or place — called by the FineRx card itself.\n\n    Same answer as compare_prices, for the package and place picked inside the\n    card. ``where`` is the place as typed in the card (a ZIP, a city or an\n    address): used for this one request, never stored. Not for the model.","inputs":[{"name":"compare_to","type":null,"required":false,"description":"A dollar amount the person named for this package (their insurance copay, what they pay now, or a price they want to beat); the answer then says how many chains were seen below it."},{"name":"form","type":null,"required":false,"description":"The dosage form of the medicine (e.g. \"tablet\")."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"quantity","type":null,"required":false,"description":"The quantity to price (the pack size / number of units)."},{"name":"slug","type":"string","required":true,"description":"The slug of the medicine whose package is on screen in the card."},{"name":"strength","type":null,"required":false,"description":"The strength of the medicine (e.g. \"10 mg\")."},{"name":"where","type":null,"required":false,"description":"The place as typed in the card (a ZIP, a city or an address); used for this one request, never stored."},{"name":"zip","type":null,"required":false,"description":"A 5-digit US ZIP code to locate prices and stores near; pass it only when the person gave one."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":277},{"name":"find_nearby_pharmacies","title":null,"description":"Pharmacy stores within 30 miles, per chain — with the card price when a drug is given.\n\n    Use when the person asks where the pharmacies are near a ZIP or near them.\n    ``zip`` is a 5-digit US ZIP (leave it out to use the host's approximate\n    location when there is one). ``family`` is a comma-separated list of chain\n    codes: walmart, cvs, walgreens, kroger, albertsons, costco, publix, heb,\n    hyvee, meijer, wegmans, shoprite, bigy, gianteagle, kinney (``chains`` is the\n    older name of the same filter). With ``drug`` (+ optional strength, form,\n    quantity) each store carries its chain's card price and observation date.\n\n    Returns stores (chain, address, city, distance, whether it is a pharmacy or a\n    store with a pharmacy inside — not verified) and the card. Stock is not\n    visible: suggest calling ahead. Coordinates © OpenStreetMap contributors.","inputs":[{"name":"chains","type":null,"required":false,"description":"The older name of the family filter: a comma-separated list of pharmacy chain codes to include."},{"name":"drug","type":null,"required":false,"description":"The medicine: a name as typed, or a slug from search_drugs."},{"name":"family","type":null,"required":false,"description":"A comma-separated list of pharmacy chain codes to include: walmart, cvs, walgreens, kroger, albertsons, costco, publix, heb, hyvee, meijer, wegmans, shoprite, bigy, gianteagle, kinney."},{"name":"form","type":null,"required":false,"description":"The dosage form of the medicine (e.g. \"tablet\")."},{"name":"limit","type":"integer","required":false,"description":"The maximum number of stores to return per chain (default 3)."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"quantity","type":null,"required":false,"description":"The quantity to price (the pack size / number of units)."},{"name":"strength","type":null,"required":false,"description":"The strength of the medicine (e.g. \"10 mg\")."},{"name":"zip","type":null,"required":false,"description":"A 5-digit US ZIP code to locate prices and stores near; pass it only when the person gave one."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":451},{"name":"ui_nearby","title":null,"description":"Pharmacies near a place for the package on screen — called by the FineRx card itself.\n\n    ``where`` is the place as typed in the card (a ZIP, a city or an address):\n    used for this one request, never stored. Not for the model.","inputs":[{"name":"family","type":null,"required":false,"description":"A comma-separated list of pharmacy chain codes to include: walmart, cvs, walgreens, kroger, albertsons, costco, publix, heb, hyvee, meijer, wegmans, shoprite, bigy, gianteagle, kinney."},{"name":"form","type":null,"required":false,"description":"The dosage form of the medicine (e.g. \"tablet\")."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"quantity","type":null,"required":false,"description":"The quantity to price (the pack size / number of units)."},{"name":"slug","type":null,"required":false,"description":"The slug of the medicine whose package is on screen in the card."},{"name":"strength","type":null,"required":false,"description":"The strength of the medicine (e.g. \"10 mg\")."},{"name":"where","type":null,"required":false,"description":"The place as typed in the card (a ZIP, a city or an address); used for this one request, never stored."},{"name":"zip","type":null,"required":false,"description":"A 5-digit US ZIP code to locate prices and stores near; pass it only when the person gave one."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":273},{"name":"get_transfer_steps","title":null,"description":"How to move a prescription from the pharmacy that has it to the one the person wants to use.\n\n    Use when the person says their prescription is at another pharmacy, asks\n    how to switch pharmacies, or picked a chain from the card prices and their\n    prescription is elsewhere. ``chain`` is the chain they want to move TO, as\n    a code: walmart, cvs, walgreens, kroger, albertsons, costco, publix, heb,\n    hyvee, meijer, wegmans, shoprite, bigy, gianteagle, kinney. Optional\n    ``drug`` (+ strength, form, quantity) adds that chain's card price with its\n    date. ``zip`` is a 5-digit US ZIP — pass it only when the person gave one.\n\n    Returns the steps in order (what to say and what to have ready), three\n    notes (it is free; no refills left means a new prescription; some medicines\n    have stricter rules), the nearest stores of that chain when a place is\n    known, and the card. For controlled or age-restricted medicines it returns\n    only ``restricted: true``. Not medical advice.\n\n    Next: read the steps out as written; then the card sentence and codes.","inputs":[{"name":"chain","type":null,"required":false,"description":"The pharmacy chain to move the prescription TO, as a code: walmart, cvs, walgreens, kroger, albertsons, costco, publix, heb, hyvee, meijer, wegmans, shoprite, bigy, gianteagle, kinney."},{"name":"drug","type":null,"required":false,"description":"The medicine: a name as typed, or a slug from search_drugs."},{"name":"form","type":null,"required":false,"description":"The dosage form of the medicine (e.g. \"tablet\")."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"quantity","type":null,"required":false,"description":"The quantity to price (the pack size / number of units)."},{"name":"strength","type":null,"required":false,"description":"The strength of the medicine (e.g. \"10 mg\")."},{"name":"zip","type":null,"required":false,"description":"A 5-digit US ZIP code to locate prices and stores near; pass it only when the person gave one."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":455},{"name":"compare_basket","title":null,"description":"Card prices for several medicines at once: which pharmacy chain was seen pricing the whole list, and the sum there.\n\n    Use when the person names two or more medicines and asks what they cost\n    together, or which one pharmacy to use for all of them. ``drugs`` is two to\n    six names as typed or slugs; a dose and a pack size may ride in each name\n    (\"atorvastatin 40 mg 90\"). ``zip`` is a 5-digit US ZIP — pass it only when\n    the person gave one; without it the host's approximate location is used\n    when there is one, else the chains are listed nationally.\n\n    Returns the package used for each medicine, then one row per chain: its\n    card price for each medicine with the observation date, and — only when\n    every medicine was seen with a price there — their sum with the dates the\n    prices were observed. When taking each medicine at a different chain comes\n    to less than every one-chain sum, that is given too. Names that matched no\n    medicine are counted and left out. A sum is an addition of observed card\n    prices, never a quote: the pharmacy sets the final price.\n\n    Next: read out the chains with a sum and its dates; then the card sentence\n    and codes. One medicine only: use compare_prices.","inputs":[{"name":"channel","type":null,"required":false,"description":"An optional channel tag identifying where the request comes through; leave it out unless the calling host supplies one."},{"name":"drugs","type":"array","required":true,"description":"The medicines to price together: two to six names as typed or slugs (a dose and a pack size may ride in each name)."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"zip","type":null,"required":false,"description":"A 5-digit US ZIP code to locate prices and stores near; pass it only when the person gave one."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":401},{"name":"ui_basket","title":null,"description":"The same list of medicines for another place — called by the FineRx card itself.\n\n    ``slugs`` with their packages in parallel lists (an empty string or 0 = not\n    set). ``where`` is the place as typed in the card: used for this one\n    request, never stored. Not for the model.","inputs":[{"name":"forms","type":null,"required":false,"description":"Parallel to slugs: the dosage form for each medicine (an empty string means not set)."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"quantities","type":null,"required":false,"description":"Parallel to slugs: the quantity for each medicine (0 means not set)."},{"name":"slugs","type":"array","required":true,"description":"The medicines' slugs, with their packages in the parallel strengths, forms and quantities lists."},{"name":"strengths","type":null,"required":false,"description":"Parallel to slugs: the strength for each medicine (an empty string means not set)."},{"name":"where","type":null,"required":false,"description":"The place as typed in the card (a ZIP, a city or an address); used for this one request, never stored."},{"name":"zip","type":null,"required":false,"description":"A 5-digit US ZIP code to locate prices and stores near; pass it only when the person gave one."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":248},{"name":"open_price_finder","title":null,"description":"Open the FineRx search inside the card, so the person can look a medicine up themselves.\n\n    Use when the person asks to open FineRx, wants to search or browse on their\n    own, or is not sure of the name. Optional ``query`` pre-fills the search\n    (a medicine, a brand from another country, a misspelling). The card then\n    suggests matches as they type, each with where its card prices start and\n    the date, and a pick shows card prices by chain near a place they choose.\n\n    Returns the matches for ``query`` (if any), foreign brands that matched,\n    a few often-searched medicines, and the card. What the person picks in the\n    card reaches you as context. Hosts without MCP Apps get the matches as text.","inputs":[{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"query","type":null,"required":false,"description":"A search to pre-fill in the FineRx search (a medicine, a brand from another country, or a misspelling)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":228},{"name":"ui_suggest","title":null,"description":"Medicines matching what the person is typing in the FineRx search — called by the card itself.\n\n    Up to eight matches with where their card prices start (dated), and foreign\n    brands that matched. Not for the model.","inputs":[{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"q","type":"string","required":true,"description":"What the person is typing in the FineRx search; matching medicines are suggested."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":99},{"name":"get_savings_card","title":null,"description":"The free FineRx discount card: its codes, how to use it, how to keep it.\n\n    Use when the person asks for the card, how to pay less at the pharmacy, or\n    right after you quoted a card price. Optional ``drug`` (a slug from\n    search_drugs) adds that drug's card price for its most-priced package, with\n    the date it was observed. ``locale`` is a language code (the host's own is\n    used when left out).\n\n    Returns the three codes to read at the counter, the steps, the sentence to\n    say to the pharmacist, the links to the card page and the printable sheet,\n    and the card sentence with the small print. Hosts with MCP Apps show it as an\n    interactive card; write the three codes in your answer anyway. The card is\n    free, needs no signup and is not insurance.","inputs":[{"name":"channel","type":null,"required":false,"description":"An optional channel tag identifying where the request comes through; leave it out unless the calling host supplies one."},{"name":"drug","type":null,"required":false,"description":"The medicine: a name as typed, or a slug from search_drugs."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":263},{"name":"search_drugs","title":null,"description":"Find a medicine by name (brand, generic, misspelled or in another script) and get its slug.\n\n    Not needed before compare_prices, compare_basket or get_transfer_steps:\n    they take a name as typed. Use it when the person asks what FineRx has, or\n    a name is ambiguous.\n\n    Returns candidates with ``slug`` (for get_drug and compare_prices), ``kind``\n    (generic/brand) and ``fromCardPrice`` — where its card prices start: the\n    amount, the package it is for and the observation date. ``foreignBrands``\n    lists home-country brands that matched the same text (Нурофен, No-Spa): when\n    ``results`` is empty and ``foreignBrands`` is not, call find_us_equivalent.\n    Several candidates: ask which one — brand and generic are different products.","inputs":[{"name":"limit","type":"integer","required":false,"description":"The maximum number of matching medicines to return (default 10)."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"query","type":"string","required":true,"description":"The medicine name to search for (brand, generic, misspelled or in another script)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":256},{"name":"get_drug","title":null,"description":"Strengths, forms and pack sizes of one medicine that have a card price, and its default package.\n\n    Use when you have a slug and need to know which strengths and quantities\n    exist before quoting a price. Returns ``configs`` (strength × form, each\n    with quantities, where the card prices for that pack start, with the date,\n    and how many chains priced it), ``defaultConfig`` (the package the most chains\n    price), ``fromCardPrice``, the card prices of the default package per chain,\n    and the card. Next: compare_prices for the package the person takes.","inputs":[{"name":"channel","type":null,"required":false,"description":"An optional channel tag identifying where the request comes through; leave it out unless the calling host supplies one."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."},{"name":"slug","type":"string","required":true,"description":"The slug of the medicine to describe, from search_drugs."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":201},{"name":"get_dataset_info","title":null,"description":"What FineRx covers: pharmacy chains with card prices, how fresh they are, stores on the map, terms.\n\n    Use when the person asks what FineRx is, how big or current the data is, or\n    how to cite it. Returns the pharmacy chain families we hold card prices for,\n    their store banners, the newest observation date, how many stores we can\n    place on a map, the catalog size, and the attribution terms.","inputs":[],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":102},{"name":"get_prescription_options","title":null,"description":"Routes to filling a prescription, including having none yet.\n\n    Use when the person says they have no prescription, asks how to get one, or\n    says the brand costs too much. Optional ``drug`` is a slug from\n    search_drugs (a name works too). Returns three sections — havePrescription\n    (steps), noPrescription (clinics and telehealth, each with the disclosure\n    to read out when FineRx earns anything), brandCostly — plus a Medicaid\n    note, where the drug's card prices start (dated), and the card. For\n    controlled or age-restricted medicines it returns only ``restricted:\n    true``: FineRx shows card prices and the card for them, nothing else. Not\n    medical advice: never say what to take or at what dose.","inputs":[{"name":"drug","type":null,"required":false,"description":"The medicine: a name as typed, or a slug from search_drugs."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":218},{"name":"find_us_equivalent","title":null,"description":"What a medicine from another country is in the US, and its card price here.\n\n    Use when the person names a medicine that is not a US product — a brand from\n    home (No-Spa, Nurofen, Dolo-Neurobion, 999 Ganmaoling), a name in another\n    script (Но-шпа, 泰诺), or an ingredient the US calls something else\n    (paracetamol) — or asks \"what is this called in the US?\". Optional\n    ``country`` picks between brands of the same name sold in different places.\n\n    Returns the reviewed entry: ``usClass`` (``same_inn`` = the same active\n    ingredient is sold here, ``rx_alternative`` = it is not and the closest US\n    options need a prescription, ``no_equivalent`` = nothing here matches),\n    ``guidance`` (ONE vetted sentence, to be quoted word for word),\n    ``guidanceDisclaimer``, ``inn``, ``usGeneric``, ``usBrands``, ``rxStatus``,\n    ``usDrug`` (slug and the card price from which it was seen, with the date),\n    ``otherMatches`` for the same brand name in other countries, and the card.\n    ``found`` is false when nothing matched.\n\n    Next: quote ``guidance`` as written, then ``guidanceDisclaimer``. With a\n    ``usDrug``, compare_prices for its slug. Do not call the US drug the same\n    product or suggest swapping; for ``rx_alternative`` and ``no_equivalent``\n    name no substitute — send the person to a pharmacist or a doctor.","inputs":[{"name":"brand","type":"string","required":true,"description":"The brand name of the medicine from another country, as typed."},{"name":"channel","type":null,"required":false,"description":"An optional channel tag identifying where the request comes through; leave it out unless the calling host supplies one."},{"name":"country","type":null,"required":false,"description":"The country the brand is sold in; picks between brands of the same name sold in different places."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":445},{"name":"find_us_equivalents","title":null,"description":"What several medicines from another country are in the US — the list a person brought from home.\n\n    Use when the person names two or more medicines that are not US products\n    (brands from home, names in another script) and asks what they are here.\n    ``brands`` is two to six names as typed; optional ``country`` picks between\n    brands of the same name sold in different places. One medicine: use\n    find_us_equivalent.\n\n    Returns one entry per medicine found, each exactly as find_us_equivalent\n    gives it: ``usClass``, the reviewed ``guidance`` sentence (quote it word for\n    word), the US product and where its card prices start ONLY when it has the\n    same active ingredient, and the card. Names that matched nothing are\n    counted and left out — never guess what they are.\n\n    Next: for each entry quote ``guidance``; name no substitute for\n    ``rx_alternative`` and ``no_equivalent``; then offer compare_basket for the\n    US products that have the same active ingredient.","inputs":[{"name":"brands","type":"array","required":true,"description":"The brand names of the medicines from another country: two to six names as typed."},{"name":"channel","type":null,"required":false,"description":"An optional channel tag identifying where the request comes through; leave it out unless the calling host supplies one."},{"name":"country","type":null,"required":false,"description":"The country the brand is sold in; picks between brands of the same name sold in different places."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":330},{"name":"ui_equivalent","title":null,"description":"One foreign brand the person picked in the FineRx search — called by the card itself.\n\n    The same answer as find_us_equivalent for exactly that brand (its\n    ``brandSlug`` from ui_suggest): the reviewed guidance, word for word, and\n    the US product only when it has the same active ingredient. Not for the model.","inputs":[{"name":"brand_slug","type":"string","required":true,"description":"The slug of the foreign brand picked in the FineRx search."},{"name":"locale","type":null,"required":false,"description":"A language code for the answer (the host's own is used when left out)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":123},{"name":"foreign_brands_for_drug","title":null,"description":"What a US drug is called abroad — the reverse of find_us_equivalent.\n\n    Use when the person has the US name and wants the home-country one (\"what is\n    lisinopril called in Mexico?\"). ``slug`` comes from search_drugs. Returns the\n    reviewed brands that resolve to this drug: ``brand``, ``brandScript``,\n    ``countries``, ``inn`` and ``usClass`` (an ``rx_alternative`` entry is a\n    DIFFERENT medicine used for the same complaint — say so if you mention it),\n    and the card. Do not present any of these as interchangeable with the US\n    drug, and do not tell anyone to buy or import one.","inputs":[{"name":"slug","type":"string","required":true,"description":"The slug of the US medicine, from search_drugs."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":178}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-05T06:49:23.000Z","track":"package","endpoint":null,"declaredUrl":null,"truncated":false,"tls":null,"dnssec":null,"auth":null,"httpsRedirect":null,"transports":[],"provenance":{"outcome":"none","label":"No attestation","reason":"no_attestation","reasonLabel":"No attestation published","discovery":null,"discoveryLabel":null,"sourceRepo":null,"attestationSkipped":null,"attestationSkippedLabel":null},"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":null},"mismatches":[],"changelog":{"trackingSince":"2026-11-04","recent":[{"id":"chg_01a1a8d0-5b97-79b6-9563-193c45742f9c","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice#chg-chg_01a1a8d0-5b97-79b6-9563-193c45742f9c"},{"id":"chg_01a1a8cb-d0c5-7cc4-88db-4a8e56748399","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice#chg-chg_01a1a8cb-d0c5-7cc4-88db-4a8e56748399"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice/changelog.json"},"links":{"html":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice","markdown":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice.md","changelogJson":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice/changelog.json","changelogRss":"https://verifymcp.io/servers/cloudcorprecords-medprice/ghcr-io-cloudcorprecords-medprice.xml","external":[{"label":"GitHub Container Registry","href":"https://ghcr.io/cloudcorprecords/medprice"},{"label":"Repository","href":"https://github.com/CloudCorpRecords/medprice"}]}}