staffing-math
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
Staffing Math answers staffing questions with exact arithmetic from the Operating Model Simulator engine. Use these tools for any FTE, hiring or queue staffing number instead of calculating it yourself, and quote their numbers as returned. Every result lists its inputs as given or assumed. Tell the user which inputs were assumed and offer to rerun with their own numbers. Show the arithmetic steps when the user asks how a number was reached.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| required_fteA | How many people a steady workload needs. Give weekly volume and minutes per case; shrinkage, target occupancy and hours per week fall back to stated defaults. Returns FTE, people to staff (rounded up), every input marked given or assumed, and the arithmetic with numbers filled in. Use hiring_plan when volume changes over time or the question is about hiring, and erlang_staffing for live queues with an answer-time target. |
| hiring_planA | Month-by-month hiring plan: how many requisitions to open each month so FTE on hand keeps up with FTE needed, after attrition, time to hire and ramp. Give weekly_volume with monthly_growth (0.05 means 5% a month, compounding), or weekly_volume_by_month. Unknown inputs fall back to stated defaults: current headcount defaults to what month 1 needs, attrition to 0, time to hire to 2 months, ramp to 0. When attrition is assumed, the result also gives the plan at 15% and 30%. Give hires_in_flight for people already hired or in the pipeline. Returns the plan table, totals, the arithmetic, and which inputs were assumed. A hire counts as zero capacity until fully ramped. |
| erlang_staffingA | Agents needed on a live queue (phone, chat) to answer a target share of contacts within a target time, using Erlang C. Give contacts per hour for the interval being staffed (usually the busiest hour) and handle time in seconds. Returns agents needed, the service level at that number and at one fewer, chance of waiting, occupancy, and people to schedule after shrinkage. Use required_fte for case or ticket work with no answer-time target. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Hiring plan view | Chart of FTE needed against FTE on hand by month, with requisitions to open and controls that rerun the plan. |
TDQS
Scored across 3 tools
Each tool has a clearly separate use case: required_fte for steady-state headcount, hiring_plan for time-varying hiring and attrition, and erlang_staffing for live queues with answer-time targets. Descriptions explicitly cross-reference the alternatives, so an agent can select reliably.
All three names use snake_case and descriptive staffing-domain nouns, giving a predictable pattern even though they are not verb_noun. There are no mixed conventions or vague labels.
Three tools is tightly scoped to staffing math, and each covers a distinct calculation. None feels redundant or conspicuously missing at the set level.
The set covers steady FTE, growth/attrition hiring, and Erlang queue staffing, with defaults and assumptions surfaced. Some adjacent needs such as cost/budget modeling or roster generation are absent, but core staffing-math workflows are covered.