CtrlK
BlogDocsLog inGet started
Tessl Logo

querying-openfda-labels

Looks up FDA drug labels, NDC directory entries, indications, boxed warnings, and recalls/enforcement actions via the free public OpenFDA API to enrich drugs that OpenMed extracts. Use when the user wants the prescribing information for a drug, its boxed warning, approved indications, dosage forms and routes, package NDC codes, RxCUI, or whether a product has an open recall. Trigger keywords: OpenFDA, drug label, SPL, prescribing information, boxed warning, black box warning, indications, NDC, package code, recall, enforcement, Class I recall, drug enrichment. Pairs adjacent to OpenMed NER: take a drug name (or RxNorm RxCUI) from openmed.analyze_text and resolve its label, NDC, and recall status. OpenFDA is public and free — no license barrier; send only de-identified drug names, never raw clinical notes.

74

Quality

93%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

82%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, highly actionable body: executable code for all three OpenFDA endpoints, a clear sequenced workflow, and genuinely non-obvious gotchas (404-on-empty, list-valued SPL fields, NDC segment formats, recall status values). The main weaknesses are mild redundancy with the frontmatter description, a missing zero-match fallback loop in the workflow, and no use of reference files for detail that has grown past SKILL.md scale.

Suggestions

Add an explicit fallback step to the workflow: if the ingredient query on openfda.generic_name returns no matches, retry with openfda.brand_name, then the raw extracted span, before concluding 'no label found'.

Trim the opening paragraph and 'When to use' section, which restate the frontmatter description almost verbatim — the body can start at 'The three endpoints'.

Move the endpoint key-fields table, edge-case gotchas, and standards links into a references/ file (e.g., references/openfda-api.md) and link to it one level deep, keeping SKILL.md to quick start and workflow.

DimensionReasoningScore

Conciseness

The body is efficient — a dense endpoint table, executable quick start, terse workflow and gotchas — but the opening paragraph and "When to use" section largely restate the frontmatter description, and "Brand vs generic" explains near-common knowledge. These are minor trim candidates, matching the anchor 'Efficient; minor instances of over-explanation that could be trimmed' rather than the every-token-earns-its-place level 5.

4 / 5

Actionability

The quick start is copy-paste-ready executable Python covering all three endpoints with real query strings ('openfda.generic_name:"warfarin"', 'status:"Ongoing"'), 404-as-empty handling, exact field paths, and worked output handling — fully executable and covering the common cases, matching the level-5 anchor.

5 / 5

Workflow Clarity

The 6-step workflow is clearly sequenced (normalize first, label, NDC, enforcement, cache, attach) with checkpoints such as gating alerts on classification and filtering to status:"Ongoing". It falls short of level 5 because there is no explicit validate/retry feedback loop (e.g., what to do when the ingredient query returns zero matches — retry with brand name is only implied in the gotchas). Level 3 does not apply since checkpoints are explicit and the operation is non-destructive, so no cap applies.

4 / 5

Progressive Disclosure

No bundle files exist and the ~125-line body is well organized into endpoints, quick start, workflow, hand-off, edge cases, and standards sections. It is not level 5 because nothing is offloaded to reference files despite some material (the key-fields table, full gotcha list, standards links) being reference-file sized; it is above level 3 because nothing is buried and the structure is clean for a single-file skill.

4 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete third-person capability statement, an explicit 'Use when...' trigger clause, comprehensive keyword coverage including synonyms, and clear delineation from adjacent OpenMed skills. It also states data-handling constraints (de-identified drug names only) without padding.

DimensionReasoningScore

Specificity

The description lists multiple concrete capabilities — "Looks up FDA drug labels, NDC directory entries, indications, boxed warnings, and recalls/enforcement actions via the free public OpenFDA API" — with comprehensive coverage of what the skill resolves (label, NDC, RxCUI, recall status); no minor gaps remain, matching the comprehensive-coverage anchor.

5 / 5

Completeness

Both what and when are explicit: what is "Looks up FDA drug labels, NDC directory entries, indications, boxed warnings, and recalls/enforcement actions", and when is the concrete "Use when the user wants the prescribing information for a drug, its boxed warning, approved indications, dosage forms and routes, package NDC codes, RxCUI, or whether a product has an open recall".

5 / 5

Trigger Term Quality

"Trigger keywords: OpenFDA, drug label, SPL, prescribing information, boxed warning, black box warning, indications, NDC, package code, recall, enforcement, Class I recall, drug enrichment" covers natural terms users would say, including synonyms (boxed warning / black box warning, prescribing information / SPL).

5 / 5

Distinctiveness Conflict Risk

It occupies a clear niche (FDA regulatory data via OpenFDA) with distinct triggers, and explicitly delimits adjacent-skill boundaries ("Pairs adjacent to OpenMed NER... take a drug name (or RxNorm RxCUI) from openmed.analyze_text"), minimizing overlap risk.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
maziyarpanahi/openmed
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.