data
openFDA Lua API for KosmoKrator Agents
Agent-facing Lua documentation and function reference for the openFDA KosmoKrator integration.Lua Namespace
Agents call this integration through app.integrations.openfda.*.
Use lua_read_doc("integrations.openfda") inside KosmoKrator to discover the same reference at runtime.
Call Lua from the Headless CLI
Use kosmo integrations:lua when a shell script, CI job, cron job, or another coding CLI should run a deterministic
openFDA workflow without starting an interactive agent session.
kosmo integrations:lua --eval 'dump(app.integrations.openfda.drug_event({}))' --json kosmo integrations:lua --eval 'print(docs.read("openfda"))' --json
kosmo integrations:lua --eval 'print(docs.read("openfda.drug_event"))' --json Workflow file
Put repeatable logic in a Lua file, then execute it with JSON output for the calling process.
local openfda = app.integrations.openfda
local result = openfda.drug_event({})
dump(result) kosmo integrations:lua workflow.lua --json
kosmo integrations:lua workflow.lua --force --json integrations:lua exposes app.integrations.openfda, app.mcp.*, docs.*, json.*, and regex.*. Use app.integrations.openfda.default.* or app.integrations.openfda.work.* when you configured named credential accounts.
MCP-only Lua
If the script only needs configured MCP servers and does not need openFDA, use the narrower mcp:lua command.
# Use mcp:lua for MCP-only scripts; use integrations:lua for this integration namespace.
kosmo mcp:lua --eval 'dump(mcp.servers())' --json Agent-Facing Lua Docs
This is the rendered version of the full Lua documentation exposed to agents when they inspect the integration namespace.
openFDA
Namespace: openfda
openFDA exposes public FDA datasets for drugs, medical devices, food, animal and veterinary products, cosmetics, tobacco, substances, identifiers, and historical documents. Most endpoints share the same query parameters:
search: fielded search expressioncount: aggregate counts by fieldsort: sort expressionlimit: maximum results or count bucketsskip: pagination offsetapi_key: optional openFDA API key for higher daily limits
Examples
local labels = openfda.drug_label({
search = 'openfda.generic_name:"acetaminophen"',
limit = 5,
})
local reactions = openfda.drug_event({
search = 'patient.drug.openfda.generic_name:"metformin"',
count = "patient.reaction.reactionmeddrapt.exact",
limit = 10,
})
local recalls = openfda.food_enforcement({
sort = "report_date:desc",
limit = 10,
})
Dataset Tools
Drug datasets:
openfda_drug_eventopenfda_drug_labelopenfda_drug_enforcementopenfda_drug_ndcopenfda_drug_drugsfdaopenfda_drug_shortages
Device datasets:
openfda_device_510kopenfda_device_classificationopenfda_device_enforcementopenfda_device_eventopenfda_device_pmaopenfda_device_recallopenfda_device_registrationlistingopenfda_device_udiopenfda_device_covid19_serology
Other FDA datasets:
openfda_food_enforcementopenfda_food_eventopenfda_animal_veterinary_eventopenfda_cosmetic_eventopenfda_tobacco_problemopenfda_other_nsdeopenfda_other_substanceopenfda_other_uniiopenfda_other_historicaldocument
The response is the original JSON shape from openFDA, usually including meta and either results records or count buckets.
Raw agent markdown
# openFDA
Namespace: `openfda`
openFDA exposes public FDA datasets for drugs, medical devices, food, animal and veterinary products, cosmetics, tobacco, substances, identifiers, and historical documents. Most endpoints share the same query parameters:
- `search`: fielded search expression
- `count`: aggregate counts by field
- `sort`: sort expression
- `limit`: maximum results or count buckets
- `skip`: pagination offset
- `api_key`: optional openFDA API key for higher daily limits
## Examples
```lua
local labels = openfda.drug_label({
search = 'openfda.generic_name:"acetaminophen"',
limit = 5,
})
local reactions = openfda.drug_event({
search = 'patient.drug.openfda.generic_name:"metformin"',
count = "patient.reaction.reactionmeddrapt.exact",
limit = 10,
})
local recalls = openfda.food_enforcement({
sort = "report_date:desc",
limit = 10,
})
```
## Dataset Tools
Drug datasets:
- `openfda_drug_event`
- `openfda_drug_label`
- `openfda_drug_enforcement`
- `openfda_drug_ndc`
- `openfda_drug_drugsfda`
- `openfda_drug_shortages`
Device datasets:
- `openfda_device_510k`
- `openfda_device_classification`
- `openfda_device_enforcement`
- `openfda_device_event`
- `openfda_device_pma`
- `openfda_device_recall`
- `openfda_device_registrationlisting`
- `openfda_device_udi`
- `openfda_device_covid19_serology`
Other FDA datasets:
- `openfda_food_enforcement`
- `openfda_food_event`
- `openfda_animal_veterinary_event`
- `openfda_cosmetic_event`
- `openfda_tobacco_problem`
- `openfda_other_nsde`
- `openfda_other_substance`
- `openfda_other_unii`
- `openfda_other_historicaldocument`
The response is the original JSON shape from openFDA, usually including `meta` and either `results` records or count buckets. local result = app.integrations.openfda.drug_event({})
print(result) Functions
drug_event Read
Query FAERS drug adverse event reports.
- Lua path
app.integrations.openfda.drug_event- Full name
openfda.openfda_drug_event
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
drug_label Read
Query structured product labeling records.
- Lua path
app.integrations.openfda.drug_label- Full name
openfda.openfda_drug_label
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
drug_enforcement Read
Query drug recall enforcement reports.
- Lua path
app.integrations.openfda.drug_enforcement- Full name
openfda.openfda_drug_enforcement
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
drug_ndc Read
Query NDC directory product listings.
- Lua path
app.integrations.openfda.drug_ndc- Full name
openfda.openfda_drug_ndc
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
drugs Read
Query Drugs@FDA application data.
- Lua path
app.integrations.openfda.drugs- Full name
openfda.openfda_drug_drugsfda
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
drug_shortages Read
Query FDA drug shortage data.
- Lua path
app.integrations.openfda.drug_shortages- Full name
openfda.openfda_drug_shortages
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_510_k Read
Query medical device 510(k) clearances.
- Lua path
app.integrations.openfda.device_510_k- Full name
openfda.openfda_device_510k
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_classification Read
Query device classification records.
- Lua path
app.integrations.openfda.device_classification- Full name
openfda.openfda_device_classification
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_enforcement Read
Query device recall enforcement reports.
- Lua path
app.integrations.openfda.device_enforcement- Full name
openfda.openfda_device_enforcement
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_event Read
Query MAUDE medical device adverse events.
- Lua path
app.integrations.openfda.device_event- Full name
openfda.openfda_device_event
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_pma Read
Query premarket approval records.
- Lua path
app.integrations.openfda.device_pma- Full name
openfda.openfda_device_pma
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_recall Read
Query device recall records.
- Lua path
app.integrations.openfda.device_recall- Full name
openfda.openfda_device_recall
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_registration_listing Read
Query device establishment registration and listing records.
- Lua path
app.integrations.openfda.device_registration_listing- Full name
openfda.openfda_device_registrationlisting
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
device_udi Read
Query GUDID device identification records.
- Lua path
app.integrations.openfda.device_udi- Full name
openfda.openfda_device_udi
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
covid_19_serology Read
Query COVID-19 serology test evaluations.
- Lua path
app.integrations.openfda.covid_19_serology- Full name
openfda.openfda_device_covid19_serology
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
food_enforcement Read
Query food recall enforcement reports.
- Lua path
app.integrations.openfda.food_enforcement- Full name
openfda.openfda_food_enforcement
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
food_event Read
Query CAERS food, dietary supplement, and cosmetic adverse event reports.
- Lua path
app.integrations.openfda.food_event- Full name
openfda.openfda_food_event
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
animal_veterinary_event Read
Query animal and veterinary adverse event reports.
- Lua path
app.integrations.openfda.animal_veterinary_event- Full name
openfda.openfda_animal_veterinary_event
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
cosmetic_event Read
Query cosmetic adverse event reports.
- Lua path
app.integrations.openfda.cosmetic_event- Full name
openfda.openfda_cosmetic_event
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
tobacco_problem Read
Query tobacco product problem reports.
- Lua path
app.integrations.openfda.tobacco_problem- Full name
openfda.openfda_tobacco_problem
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
nsde Read
Query National Substance Data Exchange records.
- Lua path
app.integrations.openfda.nsde- Full name
openfda.openfda_other_nsde
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
substance Read
Query FDA substance records.
- Lua path
app.integrations.openfda.substance- Full name
openfda.openfda_other_substance
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
unii Read
Query Unique Ingredient Identifier records.
- Lua path
app.integrations.openfda.unii- Full name
openfda.openfda_other_unii
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
historical_documents Read
Query openFDA historical documents.
- Lua path
app.integrations.openfda.historical_documents- Full name
openfda.openfda_other_historicaldocument
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||