An MBS validator for Australian surgeons

From operative note to billing, in one paste.

Paste the operative note. Itemate suggests item numbers, shows which rule fired, and writes a new rule when you correct it. Next time the same procedure walks in, the right code is already at the top of the list.

In daily use at a paediatric orthopaedic practice in Brisbane since May 2026. The operative-note text dies with the HTTP request that produced it; it does not go anywhere we can lose it. Runs on Cloudflare Workers and the Anthropic Claude API.

How matching works

Claude reads the note. The matcher picks the codes.

Claude reads the operative note and returns a structured list of procedures it found. From there, everything is deterministic. The schedule is filtered by chapter and anatomical region before any keyword scoring runs, so a forearm report never ends up ranked against ENT codes.

matcher pipeline
extract
Anthropic Claude, de-identified text only
filter
chapter T8, region: upper limb, age band: paed
score
keyword overlap + scrub-nurse hint + doctor rule
flag
empty candidate pool → "please choose"
Corrections become rules

You correct it once. It remembers forever.

Correct a wrong suggestion and the correction is written to the database as a rule with a trigger phrase and an MBS item. The matcher reads every rule on every validate after that. The next case with the same procedure surfaces the right code without any retraining step. It is just a row.

doctor_rules · row #4f2
trigger
"osteoclasis of the radius and ulna"
items
47929, 47931
ageCondition
{ under: 16 }
createdBy
gtdonald@…
reasoning
two-bone correction, surgeon-confirmed mapping
Every row shows its working

You can always see why a code was suggested.

Click any row and you see the trigger: a doctor-trained rule, the bit of de-identified text it matched, or an honest "not sure, please pick one" flag. When the practice manager asks why an item was billed, that page is the answer.

audit · item 47929
source
doctor_rule:#4f2 (trained 2026-04-12)
confidence
high (1.00)
matchedAnchor
"osteoclasis of the radius and ulna"
reportHash
a3f1…d22e
persisted
no PHI, aggregate telemetry only
For surgeons

Skip the schedule PDF.

The matcher knows about multiple-operation discounting, the bilateral flag, the after-hours marker, and the Rule 7 aftercare window. You confirm the suggestions you agree with. If one is wrong, you correct it and the matcher writes a rule that catches the same case next time.

For practice managers

One audit per row.

Every billed item shows the rule that fired or the text it matched. The admin board tracks acceptance rate, doctor-rule hit rate, and an estimate of clinician minutes saved per case. The board never holds patient identifiers, because the validator never stores any.

Privacy posture

Why the report text isn't anywhere we can lose it.

  • The raw operative-note text lives in worker memory for one HTTP request and dies with the response. We never write it to D1, KV, or anywhere else.
  • Names, DOBs, Medicare numbers, MRN/UR, addresses and phone numbers are stripped server-side before anything reaches Claude. The model only ever sees the redacted version.
  • Extraction runs on Anthropic infrastructure in the US, which we declare under APP 8 in the privacy notice. The raw text never leaves the Cloudflare worker.
  • The admin dashboard only reads counts, dollar estimates and confidence-tier distributions. No procedure description is ever stored against a specific case.

The long version lives in the privacy notice and the terms of use.

Pricing

One practice, one tenant. Cancellable monthly.

A 30-day pilot at no cost, then $249 per clinician per month, billed through Stripe. If you're a group, send me an email and we'll work out a number that makes sense. Trained rules and audit history belong to your practice; you can export them when you leave.

Single practice

Practice

$249 per clinician, per month

A single-doctor practice doing real cases. The 30-day pilot is free and doesn't ask for a card up front.

  • Unlimited validations
  • Up to 3 clinician accounts
  • Web validator + Word add-in pilot
  • Doctor-trained rules persist across all clinicians in the practice
  • PHI-free admin telemetry dashboard
  • Priority email support, 4 business-hour response
  • Audit-trail export on cancellation
Start a 30-day pilot

Pilot converts to paid at day 31. Cancel anytime from the Stripe portal.

Multi-site / group

Group

Talk to us custom annual quote

A group of doctors, or a specialty practice that shares infrastructure across sub-practices. Rules can be scoped per doctor, tenants stay isolated, and you get a named contact you can actually email.

  • Everything in Practice
  • Up to 25 clinician accounts
  • Per-doctor rule scoping
  • Tenant isolation across sub-practices
  • Dedicated onboarding and rule-training session
  • SLA on response time; named point of contact
  • Invoiced quarterly or annually
Email for a quote

Average onboarding lead time: two weeks from agreement to live.

Billing, cancellation, and data-export detail on the full pricing page.

Common questions

Does Itemate replace my biller?

No. Itemate suggests MBS items from operative reports and applies the schedule's arithmetic rules. It does not bill, claim, or submit on anyone's behalf. The clinician confirms each line before anything is exported.

Is it a medical device?

No. Itemate is not a medical device as defined by the Therapeutic Goods Act 1989 (Cth) or the Therapeutic Goods (Medical Devices) Regulations 2002 (Cth). It does not provide clinical advice and is not used for diagnosis, prevention, monitoring, prediction, prognosis, treatment, or alleviation of any disease.

What happens to my data?

Pasted report text is de-identified server-side before any external API call, then held in memory for one HTTP request and discarded with the response. Nothing is persisted to a database except doctor-curated correction rules (procedure-name text, never patient identifiers) and PHI-free aggregate telemetry. Full detail on the privacy notice.

Which specialties does it support?

Right now it's tuned for paediatric orthopaedics, which is where the pilot practice lives. Adding a new specialty means tagging that specialty's slice of the MBS catalogue; the matcher itself doesn't need to change. ENT and adult orthopaedics are the next two I want to do.

Can I run it inside Word?

A sideloadable Word add-in is in pilot. It lets surgeons validate codes inline while dictating or editing the operative note, without leaving the document. Available to paid Practice and Group customers on request.

How do you handle MBS schedule updates?

The MBS schedule catalogue is ingested from mbsonline.gov.au under CC-BY 4.0 and re-tagged for ortho relevance. Schedule version metadata is tracked in the database; we apply updates additively and never mutate historical suggestions, so old audits stay accurate against the schedule version that produced them.