meddra · Capability

MedDRA Medical Dictionary for Regulatory Activities API

MedDRA (Medical Dictionary for Regulatory Activities) and the WHO Drug Dictionary provide standardized medical terminology APIs for adverse event coding, drug safety reporting, and pharmacovigilance. APIs enable term lookup, hierarchy navigation, and coding validation for regulatory submissions to ICH, FDA, EMA, and other health authorities.

Run with Naftiko MeddraAPI

What You Can Do

GET
Searchterms — Search MedDRA terms
/terms/search
GET
Getterm — Get a term by code
/terms/{termCode}
GET
Gettermchildren — Get child terms in hierarchy
/hierarchy/{level}/{code}/children
GET
Gettermparents — Get parent terms in hierarchy
/hierarchy/{level}/{code}/parents
GET
Listsoc — List all System Organ Classes
/soc
POST
Validatecode — Validate a MedDRA code
/validate/code
GET
Listversions — List available MedDRA versions
/versions

MCP Tools

searchterms

Search MedDRA terms

read-only idempotent
getterm

Get a term by code

read-only idempotent
gettermchildren

Get child terms in hierarchy

read-only idempotent
gettermparents

Get parent terms in hierarchy

read-only idempotent
listsoc

List all System Organ Classes

read-only idempotent
validatecode

Validate a MedDRA code

listversions

List available MedDRA versions

read-only idempotent

Capability Spec

meddra-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: MedDRA Medical Dictionary for Regulatory Activities API
  description: MedDRA (Medical Dictionary for Regulatory Activities) and the WHO Drug Dictionary provide standardized medical
    terminology APIs for adverse event coding, drug safety reporting, and pharmacovigilance. APIs enable term lookup, hierarchy
    navigation, and coding validation for regulatory submissions to ICH, FDA, EMA, and other health authorities.
  tags:
  - Meddra
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: meddra
    baseUri: https://api.meddra.example.com/v1
    description: MedDRA Medical Dictionary for Regulatory Activities API HTTP API.
    authentication:
      type: apikey
      in: header
      name: X-API-Key
      value: '{{MEDDRA_TOKEN}}'
    resources:
    - name: terms-search
      path: /terms/search
      operations:
      - name: searchterms
        method: GET
        description: Search MedDRA terms
        inputParameters:
        - name: q
          in: query
          type: string
          required: true
          description: Search text (partial match supported)
        - name: level
          in: query
          type: string
          description: MedDRA hierarchy level to search
        - name: version
          in: query
          type: string
          description: MedDRA version (e.g., 27.0); defaults to current
        - name: language
          in: query
          type: string
          description: Language for term text (en, ja, de, fr, es, zh, etc.)
        - name: currentOnly
          in: query
          type: boolean
          description: Return only current (non-deprecated) terms
        - name: limit
          in: query
          type: integer
        - name: offset
          in: query
          type: integer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: terms-termcode
      path: /terms/{termCode}
      operations:
      - name: getterm
        method: GET
        description: Get a term by code
        inputParameters:
        - name: termCode
          in: path
          type: integer
          required: true
          description: MedDRA term code (e.g., 10019211 for HLT "Hepatic failures")
        - name: level
          in: query
          type: string
          required: true
        - name: version
          in: query
          type: string
        - name: language
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: hierarchy-level-code-children
      path: /hierarchy/{level}/{code}/children
      operations:
      - name: gettermchildren
        method: GET
        description: Get child terms in hierarchy
        inputParameters:
        - name: level
          in: path
          type: string
          required: true
          description: Level of the parent term
        - name: code
          in: path
          type: integer
          required: true
          description: Code of the parent term
        - name: version
          in: query
          type: string
        - name: language
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: hierarchy-level-code-parents
      path: /hierarchy/{level}/{code}/parents
      operations:
      - name: gettermparents
        method: GET
        description: Get parent terms in hierarchy
        inputParameters:
        - name: level
          in: path
          type: string
          required: true
        - name: code
          in: path
          type: integer
          required: true
        - name: version
          in: query
          type: string
        - name: language
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: soc
      path: /soc
      operations:
      - name: listsoc
        method: GET
        description: List all System Organ Classes
        inputParameters:
        - name: version
          in: query
          type: string
        - name: language
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: validate-code
      path: /validate/code
      operations:
      - name: validatecode
        method: POST
        description: Validate a MedDRA code
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: versions
      path: /versions
      operations:
      - name: listversions
        method: GET
        description: List available MedDRA versions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: meddra-rest
    description: REST adapter for MedDRA Medical Dictionary for Regulatory Activities API.
    resources:
    - path: /terms/search
      name: searchterms
      operations:
      - method: GET
        name: searchterms
        description: Search MedDRA terms
        call: meddra.searchterms
        outputParameters:
        - type: object
          mapping: $.
    - path: /terms/{termCode}
      name: getterm
      operations:
      - method: GET
        name: getterm
        description: Get a term by code
        call: meddra.getterm
        with:
          termCode: rest.termCode
        outputParameters:
        - type: object
          mapping: $.
    - path: /hierarchy/{level}/{code}/children
      name: gettermchildren
      operations:
      - method: GET
        name: gettermchildren
        description: Get child terms in hierarchy
        call: meddra.gettermchildren
        with:
          level: rest.level
          code: rest.code
        outputParameters:
        - type: object
          mapping: $.
    - path: /hierarchy/{level}/{code}/parents
      name: gettermparents
      operations:
      - method: GET
        name: gettermparents
        description: Get parent terms in hierarchy
        call: meddra.gettermparents
        with:
          level: rest.level
          code: rest.code
        outputParameters:
        - type: object
          mapping: $.
    - path: /soc
      name: listsoc
      operations:
      - method: GET
        name: listsoc
        description: List all System Organ Classes
        call: meddra.listsoc
        outputParameters:
        - type: object
          mapping: $.
    - path: /validate/code
      name: validatecode
      operations:
      - method: POST
        name: validatecode
        description: Validate a MedDRA code
        call: meddra.validatecode
        outputParameters:
        - type: object
          mapping: $.
    - path: /versions
      name: listversions
      operations:
      - method: GET
        name: listversions
        description: List available MedDRA versions
        call: meddra.listversions
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: meddra-mcp
    transport: http
    description: MCP adapter for MedDRA Medical Dictionary for Regulatory Activities API for AI agent use.
    tools:
    - name: searchterms
      description: Search MedDRA terms
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: meddra.searchterms
      with:
        q: tools.q
        level: tools.level
        version: tools.version
        language: tools.language
        currentOnly: tools.currentOnly
        limit: tools.limit
        offset: tools.offset
      inputParameters:
      - name: q
        type: string
        description: Search text (partial match supported)
        required: true
      - name: level
        type: string
        description: MedDRA hierarchy level to search
      - name: version
        type: string
        description: MedDRA version (e.g., 27.0); defaults to current
      - name: language
        type: string
        description: Language for term text (en, ja, de, fr, es, zh, etc.)
      - name: currentOnly
        type: boolean
        description: Return only current (non-deprecated) terms
      - name: limit
        type: integer
        description: limit
      - name: offset
        type: integer
        description: offset
      outputParameters:
      - type: object
        mapping: $.
    - name: getterm
      description: Get a term by code
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: meddra.getterm
      with:
        termCode: tools.termCode
        level: tools.level
        version: tools.version
        language: tools.language
      inputParameters:
      - name: termCode
        type: integer
        description: MedDRA term code (e.g., 10019211 for HLT "Hepatic failures")
        required: true
      - name: level
        type: string
        description: level
        required: true
      - name: version
        type: string
        description: version
      - name: language
        type: string
        description: language
      outputParameters:
      - type: object
        mapping: $.
    - name: gettermchildren
      description: Get child terms in hierarchy
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: meddra.gettermchildren
      with:
        level: tools.level
        code: tools.code
        version: tools.version
        language: tools.language
      inputParameters:
      - name: level
        type: string
        description: Level of the parent term
        required: true
      - name: code
        type: integer
        description: Code of the parent term
        required: true
      - name: version
        type: string
        description: version
      - name: language
        type: string
        description: language
      outputParameters:
      - type: object
        mapping: $.
    - name: gettermparents
      description: Get parent terms in hierarchy
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: meddra.gettermparents
      with:
        level: tools.level
        code: tools.code
        version: tools.version
        language: tools.language
      inputParameters:
      - name: level
        type: string
        description: level
        required: true
      - name: code
        type: integer
        description: code
        required: true
      - name: version
        type: string
        description: version
      - name: language
        type: string
        description: language
      outputParameters:
      - type: object
        mapping: $.
    - name: listsoc
      description: List all System Organ Classes
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: meddra.listsoc
      with:
        version: tools.version
        language: tools.language
      inputParameters:
      - name: version
        type: string
        description: version
      - name: language
        type: string
        description: language
      outputParameters:
      - type: object
        mapping: $.
    - name: validatecode
      description: Validate a MedDRA code
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: meddra.validatecode
      outputParameters:
      - type: object
        mapping: $.
    - name: listversions
      description: List available MedDRA versions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: meddra.listversions
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    MEDDRA_TOKEN: MEDDRA_TOKEN