CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

linking-umls-concepts

Links entities extracted by OpenMed to UMLS Metathesaurus CUIs using the USER'S OWN UTS API key, with nothing from the Metathesaurus bundled or cached. Use when the user wants to normalize concepts across vocabularies to a single CUI, resolve synonyms via the UMLS, filter by semantic type, or cross-walk between SNOMED CT, ICD-10, RxNorm and MeSH through their shared CUI. Trigger keywords: UMLS, CUI, Metathesaurus, UTS API key, semantic type, TUI, MetaMap, QuickUMLS, concept normalization, cross-vocabulary. Pairs after OpenMed NER: consume Disease/Pharmaceutical/Chemical/Anatomy entities from openmed.analyze_text and resolve each span to a CUI out-of-process. UMLS is license-restricted — the Metathesaurus is NEVER bundled; every call uses the user's UTS account.

72

Quality

91%

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, dense body: fully executable code, a clear sequenced workflow with semantic-type validation, and substantive edge-case guidance. Weaknesses are mild — repeated license framing, no retry/error-recovery loop for UTS calls, and inlining of content that could be split into a reference file.

Suggestions

Consolidate the three separate license-boundary statements (callout, 'Never bundle or cache' bullet, Hand-off closing line) into one authoritative statement to reduce token cost.

Add a brief error-recovery step to the workflow (e.g. retry with backoff on 429/timeout from UTS, skip-and-log unresolvable spans) to close the batch-processing validation gap.

Move the reusable search/concept/crosswalk helper library into a references/ file, keeping only a minimal inline example in SKILL.md.

DimensionReasoningScore

Conciseness

Overall efficient with no padding about concepts Claude already knows, but the license-restriction boundary is stated three times (callout, 'Never bundle or cache' bullet, Hand-off closing line) — minor repetition that could be trimmed to one authoritative statement.

4 / 5

Actionability

Two complete, copy-paste-ready code blocks (search/concept/crosswalk functions and a working OpenMed entity loop with a concrete example) cover the common cases fully, matching the top anchor.

5 / 5

Workflow Clarity

The six-step workflow is clearly sequenced with concrete endpoints, and TUI filtering plus ranking act as candidate checkpoints, but there is no explicit error-handling or retry guidance for failed UTS calls or rate limits, leaving a minor validation gap.

4 / 5

Progressive Disclosure

Well-organized sections with clearly signaled external standards links, but this is a single ~148-line file whose quick-start function library could partly live in a references/ file; good structure with minor organization gaps rather than an ideal overview-plus-references split.

4 / 5

Total

17

/

20

Passed

Description

96%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 excellent description: concrete multi-action capability statement, explicit 'Use when...' guidance, and a comprehensive natural-language trigger keyword list. Only minor risk is overlap with sibling vocabulary-specific skills via the cross-walk and MetaMap/QuickUMLS terms.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — link entities to CUIs, normalize concepts across vocabularies, resolve synonyms, filter by semantic type, cross-walk between SNOMED CT/ICD-10/RxNorm/MeSH — with comprehensive coverage, matching the top anchor rather than the 'minor gaps' level below.

5 / 5

Completeness

Clearly answers both 'what' (links OpenMed entities to UMLS CUIs via the user's UTS key) and 'when' (explicit 'Use when the user wants to...' clause with concrete trigger scenarios), matching the score-5 anchor.

5 / 5

Trigger Term Quality

Explicit trigger keyword list ('UMLS, CUI, Metathesaurus, UTS API key, semantic type, TUI, MetaMap, QuickUMLS, concept normalization, cross-vocabulary') covers natural terms, synonyms, and tool names users would say; no common variation is missing.

5 / 5

Distinctiveness Conflict Risk

A clear niche (CUI linking paired with OpenMed NER) with distinct triggers, but cross-vocabulary phrases and MetaMap/QuickUMLS keywords create minor overlap risk with sibling terminology skills; mostly distinct rather than minimal-conflict.

4 / 5

Total

19

/

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

Path

skills/linking-umls-concepts/SKILL.md

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.