MCP server exposing 6 tools for drug-prices.
This URL is a JSON-RPC 2.0 endpoint over HTTP. Issue POST requests with a JSON-RPC body. Browsers and search crawlers land here on GET.
POST https://gateway.pipeworx.io/drug-prices/mcp
Content-Type: application/json
{"jsonrpc":"2.0","id":1,"method":"tools/list"}
nadac_price — What a US retail pharmacy actually PAYS to acquire a drug — the National Average Drug Acquisition Cost (NADAC), surveyed and published weekly by CMS. Look up by drug name ("atorvastatin 20 mg", "Eliquis", "insulin glargine") or by NDC. NAME MATCHING IS LITERAL: NADAC lists brand products under their BRAND name and generics under the ingredient name, so "Eliquis" finds rows where "apixaban" finds none — if one returns nothing, try the other. Returns the most recent weekly price per NDC with its pricing unit (EA/ML/GM), brand-or-generic classification, and the week the price applies to. This is the ACQUISITION cost, not a retail price, not an insurance copay, and not what Medicare pays a clinic — for a drug given in a doctor's office or infusion centre see asp_payment_limit. Keyless.nadac_history — Weekly price history for one drug NDC — how the pharmacy acquisition cost (NADAC) moved over time. Use for "has the price of this generic gone up", shortage-driven price spikes, or generic erosion after a patent expiry. Returns one row per published week, oldest to newest, with the pricing unit and the percentage change across the window. Keyless.asp_payment_limit — What Medicare Part B PAYS for a drug administered by a provider — the quarterly ASP payment limit, set by statute at 106% of the manufacturer-reported Average Sales Price. Look up by HCPCS J-code ("J9271") or drug name ("pembrolizumab", "Keytruda"). This is the clinic/infusion benchmark: oncology drugs, biologics, injectables and vaccines. Returns the limit per its dosage unit, the quarter it is in force, AND the earlier quarter of ASP data it was derived from — those differ by two quarters and the gap matters. For retail pharmacy acquisition cost use nadac_price instead. Keyless.drug_price_compare — Put the two US drug price benchmarks side by side for one drug — what a pharmacy pays to acquire it (NADAC, weekly) against what Medicare Part B pays a provider for it (ASP limit, quarterly). Use to see the spread between acquisition cost and reimbursement, or to check whether a drug is a retail or a clinic-administered product at all. States the vintage of each number and warns when they are measured months apart, because the ASP limit in force is derived from ASP data two quarters earlier. Returns whichever benchmarks exist — many drugs legitimately have only one. Keyless.b340_covered_entities — Find 340B drug pricing program covered entities registered with HRSA: hospitals, community health centers, Ryan White HIV clinics, family planning and STD grantees. Filter by state, entity type or name and get the 340B ID, registration start date, parent hospital, Medicare CCN, NPI numbers and how many contract pharmacies each one uses. Answers which providers can buy drugs at 340B ceiling prices in a given state, whether a named hospital participates, and when it joined.b340_contract_pharmacies — List the contract pharmacies a 340B covered entity dispenses through, or work backwards from a pharmacy chain to the covered entities it serves. Returns pharmacy name, city, state, contract begin date and termination date. Answers how large a hospital 340B pharmacy network is, which chains a health center contracts with, and how many 340B relationships a chain like Walgreens or CVS holds in a state.Code samples (curl / TypeScript / one-click client install), schemas, and the live playground are on the pack page:
https://pipeworx.io/packs/drug-prices/
Pipeworx is an open MCP gateway connecting AI agents to live data. pipeworx.io