AI agents for operations: do you need an agent, or just a workflow?
An agent is a model that decides which step to take next, in a loop, using tools you give it. A workflow is a path you decided in advance. Most operations problems are workflows with one model-shaped step in the middle, and building an agent for them buys unpredictability you then have to engineer back out. Here is how to tell which you have, and what an agent needs around it when you do need one.
By Saveez IrfanUpdated
In short
- Ask whether you can write the steps down. If you can, build a workflow and use a model for the single step that needs language or vision.
- Reach for an agent only when the path genuinely cannot be known in advance and an error is cheap or a person reviews the result before it matters.
- The model proposes and a person confirms anything that writes to the books, sends to a customer or cannot be undone. That one rule does most of the safety work.
- Agent cost per task is variable, because each step feeds back into the next. Measure it on real cases, look at the worst ones and cap the number of steps.
- An agent without a log of every tool call, scoped credentials and an evaluation set is not ready for production, however good the demo.
Three things people call an agent
The word covers three different designs, and the argument is easier once they are separated.
- A workflow. You decided the steps. Trigger, fetch, transform, write, notify. It runs the same way every time and fails in ways you can predict.
- A workflow with a model step. Same fixed path, but one step calls a model to extract fields from a document, classify a message or draft a reply. The model does one bounded job and the path around it is still yours.
- An agent. A model is given tools and a goal and decides which tool to call next, reads the result, and decides again until it stops. The path is not written in advance.
The second is what most useful operations AI actually is. The system we built for a trading business reads supplier invoices with a vision model, but the pipeline around it is fixed: capture, validation against a schema, a review screen, and a confirmation that writes. That is a workflow with a model in it. The model is a swappable component, and nothing about the design is agentic.
The test: can you write the steps down?
If you can describe the process as a sequence, including the exceptions and what to do with each, you have a workflow. The exceptions are the hard part, not the sequence. An agent is not a way to avoid enumerating them. It is a way to have a model improvise on cases you did not enumerate, which is only attractive when improvising is acceptable.
| The task | Build | Why |
|---|---|---|
| Move an order from a form to a board and notify an owner | Workflow | The path is fixed and a model adds nothing |
| Read a supplier invoice and propose line items | Workflow with a model step | One bounded extraction, then validation and review |
| Classify inbound messages and route them | Workflow with a model step | Classification is a model job, routing is rules |
| Draft a first reply for a person to edit | Workflow with a model step | A person reviews the result before it is sent |
| Investigate why a delivery is late by reading several systems and summarising | Agent, read-only | The path depends on what each lookup returns, and a person reads the answer |
| Decide and execute refunds or payments without review | Neither as described | Money moving needs rules, approval and a guarantee, not improvisation |
Human review: where the line goes
The design decision that makes AI acceptable inside a finance team is not accuracy. It is that the model never writes. On the invoice system, nothing happens when a photograph is taken. A proposal appears on screen, and stock levels, cost prices and the supplier balance move only when a person presses confirm.
The rule generalises. Models draft, extract, classify and suggest. People approve anything that writes to the books, sends to a customer, or cannot be undone. For an agent this means its tools should be split by consequence. Read tools are given freely. Write tools either do not exist, or they create a proposal that waits for approval. An agent that can call send or pay directly is a different risk class, and one to avoid until you have run it on read-only work for long enough to know how it behaves.
- Draft and review for anything customer-facing. Review is faster than writing from scratch, and slower than nothing, which is the right place to be.
- Default to read-only. Add a write tool only when you can state exactly what it can change and who approves it.
- Make the approval carry weight. A confirm button nobody reads is theatre. Show the proposal and the evidence side by side, as the invoice screen shows the source image beside the extracted lines.
- Escalate rather than guess. Give the agent an explicit way to hand a case to a person, and treat the handoff rate as a metric.
Cost: variable, so measure it
A workflow with a model step costs about the same each time: one call, roughly the same input. An agent does not. It loops, each step re-reads the growing history, and the number of steps depends on the case. The average hides the problem, because the cases that cost the most are often the ones that confuse it.
- 01Run it on a sample of real cases, including the awkward ones, with every call logged. Choose a sample large enough to include the awkward ones.
- 02Look at the distribution, not the mean. The expensive tail is what you budget for.
- 03Cap the number of steps and the spend per task, and define what happens at the cap: stop and hand to a person.
- 04Match the model to the job. Classification and routing rarely need a frontier model, and a hard extraction from a bad scan does. Where a small model does a step, use it.
- 05Price at your real volume, using the provider's current published rates. Model prices move, so treat any figure as stale the moment it is written. Keep the model a setting so changing it is cheap.
Also compare it with the alternative. A fixed workflow with a model at one step often does the job at lower and more predictable cost, and it is far easier to test.
Audit: be able to say what it did and why
When an agent has taken an action, someone will eventually ask what it did and on what basis. If the answer is that it decided, you have a problem the first time it matters. The design needs to produce an answer by construction.
- Log every tool call with its inputs, its outputs and a timestamp, and keep the log somewhere the agent cannot edit. On the trading system, the audit table is append-only: staff can insert and read, and there is no update or delete policy, so the trail cannot be rewritten through the API.
- Scope credentials to the task. An agent that holds an account-wide token inherits everything that token can see. Give it the narrowest access that works, ideally read-only, and keep the broad token in one server process.
- Make writes idempotent. Retried calls are normal, and an agent that retries must not create two records. Use a stable key and find-or-create semantics.
- Keep rules that matter in the database. A constraint holds no matter how the data is written, including by an agent. Application prompts do not.
- Build an evaluation set from real cases, bad ones included, with known-correct answers. Without it a prompt change or a model upgrade is a guess. With it, it is a measurement.
Failure needs a plan as well. Providers rate-limit and have outages, so the pipeline should rotate keys and fail over between providers, and it should say clearly when it is not configured rather than looking as if it found nothing.
Where Claude and the tool-use APIs come in
Claude, like other major models, can be given tools and will choose when to call them. That is the mechanism behind agents, and it is just as useful in a bounded workflow where you control the loop. For internal systems, an MCP server is one way to expose read tools over your own data with the scoping decided on your side. We build against both Claude and OpenAI and keep the model swappable, because the pipeline around it is where the engineering is.
A caution about our own track record. The AI work on this site is extraction and classification inside fixed pipelines with human confirmation, notably the trading ERP. None of our case studies is an autonomous agent acting on its own, and we would not describe one as proven in production. Treat that as a reason to start small. The controls above matter more than which model sits underneath.
Deciding
| If this is true | Then |
|---|---|
| You can list the steps and the exceptions | Workflow, with a model for the one step that needs it |
| The task is reading and summarising across systems for a person | A read-only agent is reasonable |
| The action cannot be undone, or moves money | Fixed rules, a person approving, and the model drafting at most |
| Volume is high and the path is the same each time | Workflow. An agent adds cost and variance |
| You must prove later exactly what happened | Workflow or an agent with an append-only log and scoped credentials |
| You cannot yet describe a good answer | Build the evaluation set first. You are not ready for either |
Common questions
Probably a workflow, with a model at the step that needs one. If you can write the steps and the exceptions down, you do not need a model deciding what to do next. Agents suit reading and summarising across systems for a human, where the path depends on what each lookup returns.
Safe enough only with controls: tools split by consequence, read-only by default, a person approving anything that writes to the books, sends to a customer or cannot be undone, and a log of every call that the agent cannot edit. Start read-only and widen access once you have evidence about how it behaves.
It varies by case, since the agent loops and each step feeds the next, so we will not quote a figure. Run it on real cases with every call logged, budget for the expensive tail rather than the average, cap steps and spend per task, and use the provider's current published rates, which change.
Yes. Claude supports tool use, and you can expose your systems to it directly or through an MCP server. Whichever model you use, keep it a setting and put the engineering into review, validation, scoped credentials and logging.
Log every tool call with its inputs, outputs and time in an append-only store the agent cannot modify. Scope its credentials, make writes idempotent, and keep rules that matter as database constraints so they hold however the data is written.
Sources
Statements about what a platform does are checked against the vendor’s own documentation as of 2026-10-04. Vendors change things, so check the current page before you rely on a limit or a price.
- Tool use with Claude · Anthropic
- What is the Model Context Protocol (MCP)? · Model Context Protocol
Drafted with AI assistance (Claude). Published under Saveez Irfan’s name, who is accountable for it. Editorial policy