Most “agent” projects should be workflows. The rest need engineering discipline
An AI agent is a model that chooses its own next step: which tool to call, what to look up, when it is done. That flexibility helps when the path through a task really does vary. It is also why agents are harder to test, cost more per task and fail in stranger ways than a fixed workflow. In June 2025 Gartner predicted that over 40% of agentic AI projects will be cancelled by the end of 2027, citing rising costs, unclear business value and weak risk controls.
As an AI agent development company we try to talk you out of an agent first. If the steps are known, a workflow is cheaper and more reliable (see AI automation). If the job is answering questions from your documents, that is retrieval, covered under generative AI and RAG applications. When an agent is the right answer, we build it with evals, tracing, scoped permissions and a human approval step for anything that matters.
We build and run agents ourselves. Our Clinic Answering Service is a tool-using voice agent that books appointments and checks insurance eligibility while the caller is on the line, and the AI inbox and agent in our Appointment Reminder App run on the Claude API.
Custom AI agent development services
Five kinds of agentic AI development services we offer. Each starts with a written list of tools, permissions and the cases where the agent must stop and ask a person.
Customer-facing agents
The problem
Customers want to change a booking, track an order or check a policy outside office hours, and a FAQ bot cannot actually do any of it.
How we build it
We give the agent a small set of scoped tools (find booking, offer slots, confirm change), have it confirm every write with the customer, and hand over to staff with a summary when it is unsure. It can sit behind web chat, WhatsApp or a phone line.
What you get
- Tool definitions with input validation
- Customer confirmation before every write
- Handover with a conversation summary
- Transcript and trace for each session
Back-office operations agents
The problem
Ops staff spend hours collecting information from five systems before they can make a routine decision.
How we build it
The agent gathers the facts, applies your written policy and prepares the action (a refund, a credit note, a ticket) for a person to approve in one click. Policy limits are enforced in code, so a persuasive prompt cannot talk the agent past them.
What you get
- Read-only tools by default
- Draft-and-approve pattern for writes
- Policy limits enforced in code
- Audit log of every decision
MCP servers & tool layers
The problem
Every agent project rebuilds the same integrations, each with its own credentials and no shared limits or logging.
How we build it
We wrap your systems as MCP servers or plain tool APIs with per-tool scopes, rate limits and logging, so several agents and assistants can share them safely. Credentials stay on the server side, never in a prompt.
What you get
- MCP server or tool API per system
- Per-tool scopes and rate limits
- Secrets kept out of prompts
- Usage and error logging
Evals, tracing & guardrails
The problem
You have a prototype that demos well, but nobody can say how often it gets things wrong or what a task costs.
How we build it
We build an eval set from real cases, score the agent with code checks and model-graded rubrics, trace every step, and cap steps, spend and tool calls per task. Then we fix the failure patterns the evals expose, one at a time.
What you get
- Eval set built from real tasks
- Automated scoring on every change
- Step-level traces with token counts
- Budget and loop limits
Prototype rescue & hardening
The problem
An agent built in a hurry works in demos, then loops or stalls in production and costs more each month than anyone planned.
How we build it
We trace real runs, find where it wastes steps or picks the wrong tool, and simplify, often by replacing parts of the agent with fixed workflow steps. Then we add the tests and limits it was missing.
What you get
- Trace review of real runs
- Simpler design, often part workflow
- Cost per task before and after
- Regression evals in CI
Agent frameworks and tools we use
We choose the thinnest layer that does the job. Versions as of October 2026; these libraries move quickly, so we pin them per project.
LangGraph
Version 1.2.x in Python as of October 2026, MIT-licensed. Explicit state graphs, checkpoints and interrupt points for human approval make it our usual pick for long-running, multi-step agents.
OpenAI Agents SDK
A small Python and TypeScript SDK, still pre-1.0 as of October 2026, with handoffs, guardrails and built-in tracing. A good fit for simpler agents, especially on OpenAI models.
Claude Agent SDK
Anthropic’s SDK for the agent loop behind Claude Code, with tool use, MCP support and permission controls. Pre-1.0 and released often as of October 2026.
n8n AI Agent node
An agent step inside an n8n workflow. Useful when most of the job is fixed steps and only one decision needs a model.
Model Context Protocol (MCP)
An open standard for connecting models to tools and data. Created by Anthropic and donated to the Linux Foundation’s Agentic AI Foundation in December 2025.
Plain code
A loop, a tool registry and good logging. For many production agents this is easier to test and debug than any framework.
Tools and services we use alongside it
- LangGraph
- OpenAI Agents SDK
- Claude Agent SDK
- MCP
- n8n
- Python
- TypeScript
- Node.js
- PostgreSQL
- pgvector
- Redis
- OpenTelemetry
- Langfuse
- Docker
Versions and vendor details checked October 2026. We pin versions per project and upgrade on a schedule you approve.
Workflow or agent? A decision table
Answer these honestly for the task you have in mind. Mostly left-hand answers mean a workflow. A mix usually means a workflow with one agentic step, which is the most common design we ship.
| Signal | Build a workflow when… | Consider an agent when… |
|---|---|---|
| Path through the task | The same steps run every time | The next step depends on what the last one found |
| Inputs | Structured, or easy to extract into fields | Open-ended requests in natural language |
| Cost of a wrong action | High and hard to undo | Low, or every action is reviewed before it lands |
| Volume and unit cost | High volume, tight cost per item | Lower volume, high value per task |
| Explaining decisions | Auditors need a fixed, written rule | A trace and a summary are enough |
| Tools needed | One or two, always in the same order | Several, chosen case by case |
Why so many agent projects get cancelled
On 25 June 2025 Gartner predicted that over 40% of agentic AI projects will be cancelled by the end of 2027 because of escalating costs, unclear business value or inadequate risk controls. It also warned about “agent washing”, estimating that only about 130 of the thousands of vendors claiming agentic AI actually offer it. In our experience the causes are predictable: no clearly defined task, no eval set, no cost model and far too many permissions. Each has a fix you can put in place before the first line of agent code.
Estimating cost per task
We never quote model prices on this page because they change every few months. Use your provider’s current price list in this formula:
cost per task ≈ Σ over steps (input tokens × input price + output tokens × output price) + tool and infrastructure costs
For a first estimate, steps × average tokens per step × price is close enough. Four things make the real figure higher than the estimate:
- Context grows with each step. Most agents resend the conversation and tool results on every call, so later steps cost more than early ones. Prompt caching cuts the repeated part.
- Retries and dead ends. Failed tool calls, abandoned runs and loops all bill.
- The long tail. Measure the 95th percentile on your eval set, not just the median. A few runaway tasks can double the bill.
- People. Review time for approvals is a cost too.
Monthly cost is then tasks per month × cost per task + hosting + review hours × hourly cost. Routing simple steps to a smaller model, trimming tool output before it goes back into context, and hard caps on steps and spend per task are the usual levers.
What drives the cost of building one
Running cost is only half of it. The build is usually dominated by the parts around the model, not the model itself:
- Integrations. Each system the agent touches needs a scoped, tested tool. Old APIs, missing sandboxes and slow partner approvals add more time than prompt work.
- Permission and approval design. Approval screens, audit logs and role checks are ordinary software, and they are what makes an agent safe to switch on.
- The eval set. Collecting and labelling real cases takes effort from your team as well as ours. Skimping here is the most expensive saving you can make.
- Channels. Voice adds telephony and latency work; WhatsApp adds templates and consent rules.
- Compliance. Health, finance and children’s data bring BAAs, data-processing agreements, retention rules and reviews.
A narrow agent with two or three read-mostly tools is a small project. One that writes into several systems of record, in a regulated sector, is a much larger one, whoever builds it.
Evals and tracing
An agent without evals is a demo. We build an eval set from real cases: typical ones, awkward ones and the ones that went wrong. Each case has an expected outcome, checked three ways:
- Code checks: did it call the right tool, with valid arguments, in a sensible order?
- Outcome checks: is the booking actually in the database, with the right patient and time?
- Rubric checks: a model grades tone and completeness against written criteria, spot-checked by a person.
The suite runs on every change to prompts, models or tools, so a model upgrade becomes a measured decision instead of a hopeful one. Tracing records every step in production (input, output, tool call, latency and tokens) through OpenTelemetry or a tool such as Langfuse, with personal data redacted. When a customer complains, you can replay exactly what the agent saw and did.
Least-privilege tools and MCP
Most agent incidents are permission problems. Our rules:
- Separate read tools from write tools, and start with read-only.
- Scope every tool to the current user or tenant on the server side. Never trust an ID the model supplies.
- No raw SQL, shell or “call any URL” tools in production agents.
- Validate arguments in the tool, not in the prompt, and rate-limit each tool.
- Treat tool output as untrusted. An email or web page can contain instructions aimed at your agent, so content from outside never grants new permissions.
- Keep credentials server-side. Our MCP server development work exposes your systems through scoped, logged MCP servers that several agents can share.
Human-in-the-loop design
Decide, per action, how much the agent may do on its own:
| Action level | Examples | What the agent may do |
|---|---|---|
| Read | Look up an order, check a calendar | Run automatically; logged |
| Reversible write | Hold a slot, draft an email, open a ticket | Run automatically; staff notified |
| Customer-visible or financial | Send a message, issue a small refund | Only after customer confirmation or staff approval |
| High impact or irreversible | Delete records, change prices, large refunds | Not available as a tool at all |
Approval screens show what the agent wants to do and why, in one view. Escalations carry a summary so staff do not start from scratch, and every pending approval has a timeout and a fallback.
Common mistakes
- Starting with a multi-agent architecture before one agent works.
- Judging quality from demos instead of an eval set.
- Giving the agent an admin API key “for now”.
- Putting business rules and arithmetic in the prompt instead of in code.
- No step or spend caps, so one confused task runs for an hour.
- No plan for model deprecations, which force re-testing whether you want it or not.
How to choose an AI agent development partner
- Will they tell you when a workflow or a RAG app is enough?
- Can they show traces and eval results from an agent they run in production?
- Do they estimate cost per task before building, and measure it after?
- Can they show you the tool list and the permission model, in writing?
- Do you own the code, prompts, eval sets and traces?
- How do they handle model changes and provider outages?
- Will they sign the data-processing terms (and, for US health data, a BAA) your use case needs?
The same questions apply whether you are comparing an AI agent development company in India with one in the US or Europe. Working-hours overlap, data-residency terms and who will actually write the code matter more than the address on the proposal.
If you would rather hire AI agent developers into your own team, our staff augmentation service places senior engineers who work in your repositories and processes.
Agents we build and run ourselves
Both products below use tool-calling AI in production with real users, which is where our views on evals, limits and handoff come from.
Clinic Answering Service
HIPAA-compliant AI receptionist for US practices, 24/7 A tool-using voice agent for US practices that books real appointments and checks insurance eligibility while the patient is still on the call. Visit clinicansweringservice.com
Appointment Reminder App
WhatsApp & SMS reminders that grow into an AI inbox Its AI inbox and AI agent, built on the Claude API, work on the inbound replies to WhatsApp and SMS reminders. Visit appointmentreminderapp.comA typical first engagement: one agent, one task, measured
A fixed-scope project of about six to seven weeks that ends with a supervised agent in production and evidence of how well it works.
Task definition
We pick one task and write down the tools, permissions, stop conditions and what success means. We also check honestly whether a workflow would do.
Eval set & baseline
We collect real examples, write expected outcomes and measure how people handle the task today, in time and errors.
Build with traces
We build the agent and its tools, run the evals daily and fix failure patterns. Cost per task is measured, not guessed.
Supervised pilot
The agent runs with approval on every action, then only on high-impact actions once the evals and pilot data support it.
Guides and related pages
Guides
Questions about AI agent projects
We price each project after a short discovery and do not publish rates. Build cost depends mainly on the number of tools and systems, how strict the permissions and approvals must be, and how large the eval set needs to be. Running cost is model usage per task (steps times tokens times price) plus hosting and the time people spend on approvals. You get both estimates in writing before any build starts.
A chatbot answers. An agent acts: it calls tools to look things up and make changes, and decides which step comes next. A RAG application sits in between, answering from your documents without taking actions. Many projects that start as agent ideas turn out to be RAG or a workflow.
It depends on the job. LangGraph for long-running, stateful agents with approval points, the OpenAI Agents SDK or Claude Agent SDK for simpler agents, the n8n AI Agent node when most of the job is a fixed workflow, and often plain code. We keep tools behind our own interfaces or MCP servers so you can change framework or model later.
Claude, GPT and open-weight models, chosen per step on the basis of eval results and cost. Switching models is a measured decision: we rerun the eval suite before any change goes live.
Least-privilege tools scoped on the server, argument validation in code, customer or staff approval for customer-visible and financial actions, no tools at all for irreversible ones, step and spend caps, treating outside content as untrusted, and an audit log of every action.
Yes. Through our staff augmentation service, senior engineers join your team, work in your repositories and follow your processes. You can also combine the two: a fixed-scope project to build the first agent, then an engineer who stays on to extend it.
Have a task you think an agent should do?
Describe it, the systems it touches and what a mistake would cost. We will tell you whether it needs an agent, a workflow or neither.






Compliance-first delivery