For developers

The drug data API, and an MCP server for agents.

647,075 products from the official registers of 19 countries — over REST and GraphQL, as Model Context Protocol tools and as FHIR R4 Medication, with the source register and sync date on every record.

647,075

products

19

countries

49

live sources

GET /v1/drugs?country=CH
curl 'https://drug-database.com/v1/drugs\
?country=CH&q=aspirin&limit=2' \
  -H 'Authorization: Bearer dd_live_…'
response
{
  "results": [
    {
      "id": "3f8a1c2d-1b4e-4c7a-9d2f-0a1b2c3d4e5f",
      "swissmedic_no": "65187",
      "product_name": "Aspirin Cardio 100 mg",
      "atc_code": "B01AC06",
      "manufacturer": "Bayer (Schweiz) AG",
      "dispensing_cat": "B",
      "is_reimbursed": true,
      "country_code": "CH",
      "last_synced_at": "2026-06-27T02:14:00Z"
    }
  ],
  "_meta": {
    "sources": {
      "bag_sl": { "last_synced_at": "2026-06-27T02:10:00Z", "schema_state": "ok" },
      "aips":   { "last_synced_at": "2026-06-27T01:55:00Z", "schema_state": "ok" }
    }
  }
}
A search of the Swiss market, from the Switzerland drug API page. Illustrative values.

Three ways in

One catalogue. Pick your door.

The console for people, the REST API for your application, the MCP server for an AI agent. All three read the same normalised records, so an answer in one is the answer in the others.

  • One dd_ key for the API and the MCP server — same scopes, same quota
  • Every response carries its source register and last-synced date
  • REST on every plan; GraphQL from Pro

Keys & plans

Start with a free key. Scale by quota.

Every plan gets a real key against the production catalogue. Plans differ in monthly requests and in what the key may do.

  • Drug, ATC and change-feed reads and AI answers on every plan
  • Signed change webhooks from Starter
  • Prescription validation (interactions:write) from Growth

Self-serve plans

per month

Self-serve plans: price and monthly request quota
PlanPriceQuota
Free$010 requests
Pro$29/month1,500 requests
Starter$99/month20,000 requests
Growth$490/month150,000 requests
Quotas are counted per account, across its keys and its console use.
Is there a free drug API key?
Yes. The free plan includes 10 requests a month with a real dd_ key, no card — enough to see real responses. Starter $99/mo for 20,000 requests and Growth $490/mo for 150,000 requests are the plans to build on.
REST, GraphQL or MCP — which should I use?
REST for an application, the MCP server for an AI agent. Both use the same key, scopes and monthly quota, and each MCP tool call counts as one request. GraphQL is available from the Pro plan.
Where does the data come from?
From public regulator feeds — the official medicine registers of 19 countries, price lists and safety feeds. 49 of 67 tracked sources are currently in sync; every record carries its source and last-synced date, and /data/sources lists each source.
Can I get notified when a record changes?
Poll the change feed for everything since a timestamp on any plan, or register signed webhooks from the Starter plan to have each change pushed to you.
Is it suitable for clinical software?
It is an informational service, not a medical device. It can feed software used by qualified professionals; it does not replace their judgement or the source of record, which every response names.

Start building

Your first call in a minute.

Create a free account, copy your key from the console and run the quickstart.

Free to try · 10 lookups a month · No card required