| name | icd-cpt-normalization |
| title | ICD-10 / CPT Code Normalization |
| description | Normalizes diagnostic and procedure codes from medical records into clean, attorney-readable form. Cross-walks ICD-9 to ICD-10-CM, expands ICD-10 codes to narrative descriptions, expands CPT codes to procedure descriptions, and flags bundling or unbundling oddities relevant to billing disputes. Use this skill any time medical codes appear in records being summarized for litigation use, including medical chronologies, demand letters, and billing review. Also use when the user asks what a specific medical code means. |
| author | CaseMark |
| author_url | https://github.com/CaseMark/skills/tree/main/skills/legal/icd-cpt-normalization |
| license | Apache-2.0 |
| version | 0.1.0 |
| execution_mode | open |
| jurisdiction | general |
| practice | personal-injury |
| language | en |
| tags | ["litigation","analysis","research"] |
ICD-10 / CPT Code Normalization
Medical records are full of codes that mean nothing to attorneys without translation. This skill normalizes ICD-10-CM diagnosis codes, ICD-9 codes (in older records), and CPT procedure codes into a form the attorney can actually use.
When to use
Whenever a code appears in records being summarized:
- Diagnosis codes in encounter notes
- Procedure codes in operative reports and billing records
- Code lists in IME reports
- HCFA-1500 forms or itemized bills
Lookup tool
Use the configured ICD-10 / CPT lookup tool available in the environment. The tool name varies by deployment; check the available tools list for one that handles medical code lookup.
If no lookup tool is available, fall back to the inline reference below for common codes. For uncommon codes without a lookup tool, mark the code with [code description not verified] and surface in the methodology section.
ICD-10-CM normalization
Format
ICD-10-CM codes are alphanumeric, 3 to 7 characters, often with a decimal point after the third character: M54.5, S83.241A. Records sometimes drop the decimal (M545) or add spaces (M 54.5); normalize to the standard format with the decimal.
Expansion
For each code that appears, render it as:
[Code] - [Full narrative description from ICD-10-CM]
Example:
S83.241A - Other tear of medial meniscus, current injury, right knee, initial encounter
The seventh character (A, D, S, etc.) carries meaning and must be preserved:
- A: Initial encounter
- D: Subsequent encounter
- S: Sequela
A treating provider coding S83.241A (initial) on visit 1 and S83.241D (subsequent) on visit 5 is using the codes correctly. A provider still coding A after twelve visits may have a sloppy billing practice; flag for the attorney if this is a billing-relevant case.
Laterality
ICD-10 distinguishes left, right, and unspecified. Records sometimes code "unspecified" when laterality was actually documented in the narrative. Cross-check:
Encounter narrative: "Right knee pain, status post MVA"
Code billed: M25.50 (Pain in unspecified joint)
This is a coding inaccuracy. Surface in Strategic Analysis if billing is at issue. The accurate code would be M25.561 (Pain in right knee).
ICD-9 to ICD-10 cross-walk