CostCtrl, closed loop

Goal seek, for the whole business.

CostCtrl is already a deterministic model of your business: every cost attributed to the activity, product and customer that consumed it. The MCP server, the open standard that lets AI tools call other software, adds a port. Plug in the AI you already pay for and it can drive the model: create a scenario, change prices, routes or product range, run the calculation, read the result, go again. Set a target and constraints, and it searches.

The agent never types a number into the P&L. It changes inputs. The engine computes the consequences, and every figure carries the rule that produced it.

  • EngineCostCtrl

    The deterministic operating model. Cost pools, drivers, attribution, every rule auditable.

  • Diagnostic portMCP server

    A standard socket. Scenarios, inputs, calculations and results, exposed as tools any AI can call.

  • Diagnostic computerThe AI you already use

    Claude, ChatGPT, Copilot or your own. It reads, proposes, changes inputs and asks the engine what happens.

A modern car has a diagnostic port. You plug in, read the codes, tune, road test, read again. An old car, you open up and guess.

The loop

Sense, model, decide, act. Then sense again.

Sense, model, decide, act, sense again. The engine sits in the middle and computes every step.

Control is what the Ctrl in CostCtrl was always pointing at. Four verbs run through the same port: Build, Diagnose, Tune and Audit. Tune is the one a CFO already trusts in Excel as Goal Seek, here applied to the whole business.

Tune

One brief from the CFO. Ten scenarios. Every one computed by the engine.

The demo manufacturer: $176.1M net revenue, 4.23% net margin, and 2,383 of 3,075 customers losing money. The CFO asks for 7% in the FY2027 plan, with three constraints: lose no more than 3% of revenue, no headcount reductions, no plant or hub closures. The agent searches for it through the port.

Scenario ledger
ScenarioNet marginResult
Baseline, FY2026 actuals4.23%Baseline
S1 Pre-Sale minimum order5.21%Kept
S2 Blanket price rise6.40%Rejected: revenue -5.9%
S3 Key Account repricing5.78%Kept
S4 Fortnightly cycles on low-density routes6.13%Kept
S5 Close Brisbane hub6.93%Rejected: 31 redundancies, 1 closure
S6 Brisbane third shift6.45%Kept
S7 Delist bottom-decile SKUs6.89%Kept
S8 Cap off-invoice discounts7.07%Kept
S9 FY2027 plan candidate (levers combined)6.98%Short: interaction -$0.17M
S10 Plan candidate, minimum order $4007.05%Target met
3%4%5%6%7%8%Target 7.00%BaseS1S2S3S4S5S6S7S8S9S10
Net margin by scenario. Hollow points were rejected by the constraints; the line runs through the scenarios that were kept.
  • 7.05%net margin
  • Revenue -1.6%limit 3%
  • 526 people in, 526 outno reductions
  • 10 scenarios2 rejected by constraints

Running totals are not a plan. The kept levers were run together as one scenario so the engine computed the overlap; it cost $0.17M and one more turn.

Illustrative. Figures are the demo manufacturer's, computed by the CostCtrl engine. The session is scripted to show the shape of the loop.

Watch the session play out, step by step

The rest of the loop

Tune is one turn. The port is open all year.

Build

From raw exports to a running model.

Three exports from the ERP and a time study. The agent proposes cost pools and drivers, loads the data, runs the first calculation and lists what it could not place with confidence.

OutcomeFirst calculation in an afternoon. Three open questions, listed, for the finance team.
Diagnose

A monthly routine, not a project.

Actuals land, the routine fires. Recalculate, compare to plan and to last month, report the drift, and book the re-tune. The model stays true to the business because it is checked every month.

OutcomePlug in every month, not once a project.
Audit

A second opinion on the model itself.

Before the plan goes to the board, the agent plays the sceptical auditor: driver rates against benchmarks, proxy drivers where a causal one exists, and a sensitivity test on what would move if they were fixed.

OutcomeA second opinion on the model, with the rule behind every number.

Why not just an LLM and a spreadsheet

A guess dressed as an answer is still a guess.

An LLM on its own has no engine to compute against. Ask it what a price rise or a route change would do to net margin and it will answer fluently, but the figure is invented, because nothing underneath it knows how cost actually moves through the business. Every what-if is a guess dressed as an answer, and nothing you would put in front of a board.

CostCtrl gives it an engine. The agent's job is to search: propose a change, check the constraints, ask what happens. The engine's job is to be right: every consequence computed by the same deterministic rules, every figure traceable to its source. The team's job is to make sure the model is worth searching. AI removes the friction. The methodology and the team deliver the result.

See the loop close, scenario by scenario.

The full session plays out in the demo, on the manufacturing model, with the engine's result on every turn. Or book a call and we will talk through what the port could do on your model.

Illustrative figures, computed by the engineScripted to show the shape of the loop, not a customer's data