PostCallMD

The basic solver

What the basic solver does, and where Custom starts.

The free plan includes the basic solver. It drafts one month of call at a time. You set up your practice, press Generate, and get a draft. You review it, change what you want, and publish it. This page lists every rule it keeps, every setting you control, and what it leaves to Custom.

How it works

First you set up the practice: your sites, your shift types, who can work what, and approved time off. Then you press Generate. The basic solver fills every empty cell of the month and shows you a draft. Nothing goes live until you publish it. The solver never publishes on its own.

It fills empty cells only. Every entry you already put on the calendar stays exactly as you entered it. That is also your escape hatch. If your group handles a day in its own way, such as a holiday or a special weekend, paint that day first. The solver fills the rest of the month around it.

A draft takes seconds. It fills call shifts.

Rules it always keeps

These are hard rules. The draft never breaks one of them.

Coverage comes first, but never at the cost of a hard rule. If the solver cannot fill a slot, it leaves the slot open. It names the day, the shift, and who was unavailable and why. Then you decide what to do with it.

Rules it follows when it can

These are soft rules. The solver keeps them when the month allows. When it cannot, the draft tells you which one it broke.

Settings you control

Every rule above reads from settings you can see and change.

Per shift type
Whether it gives the next day off, whether it is a weekend block, whether it is closed to post-call, and its headcount by default, by weekday, or by date.
Per person
Which shifts they work, FTE, yearly calls, yearly weekend calls, a yearly offset for admin duties, a monthly call cap (Max calls per month), consent to back-to-back weekends, PRN contract days, and start and end dates.
Per practice
The switch for back-to-back weekends.

What the draft tells you

The solver reports twice: once before the draft and once after it.

Before you press Generate
Days that cannot be fully staffed, and why. Setup gaps, such as a shift with no headcount, a shift nobody is set up for, or a PRN clinician with no days.
After you press Generate
Open slots and the reason for each. Soft rules the draft broke. Each person’s calls and weekend calls this month, beside their expected count.

Where Custom starts

The basic solver does not do these things:

On Custom, we write your group’s rules down in a rule book and build a solver from it. It is code written for your group alone, so it handles the rules the basic solver leaves out. The app generates the draft from that solver, and your group still edits and publishes. A person tunes the solver for your group every month. Custom is a setup fee plus a monthly fee, quoted after one conversation, and your group approves the first live schedule before you pay. Talk about Custom, or read the pricing page.

How to run it

In the app, do these steps. Each one is a screen you already use.

  1. Set up your practice: sites, shift types, who works which shifts, and approved time off.
  2. Open the month you want to schedule.
  3. Correct each setup gap the app shows.
  4. Press Generate.
  5. Review the draft.
  6. Change the assignments you do not want.
  7. Press Publish.

You can also use an AI agent. Your practice can connect its own agent, such as Claude Code, Codex, or another MCP client, to PostCallMD. The agent sets up the practice from a photo or spreadsheet of an old schedule. It records your written rules. Then it runs the same basic solver when you say “make my first schedule”. The agent never assigns call by hand, and it never publishes. Read the walkthrough for each step.

Limits

A practice can have up to 200 clinicians and 60 shift types. Each draft covers one month.