By Sagar Shankaran, Founder of CallSphere
Step-by-step 2026 walkthrough to ship a Claude agent: scaffold the loop, write the prompt, wire MCP tools, add memory, and gate with evals.
Key takeaways
Plenty of articles describe agents in the abstract. This one is a build log. We are going to construct a working Claude agent from an empty directory to a production-ready service, and at each step I will tell you exactly what to create and why it exists. The example is a procurement assistant that looks up vendors, checks budgets, and drafts purchase requests, but the steps transfer to almost any internal agent you might build in 2026.
Start with the Claude Agent SDK rather than the bare API, because it hands you the agent loop, tool dispatch, and context handling out of the box. Your first file defines the agent: a system prompt, an empty tool list, and a model assignment. For the orchestrating brain, choose Claude Opus 4.8; for the high-frequency worker calls you will add later, plan to route to Sonnet 4.6. Configure a Haiku 4.5 fallback for trivial classification so you are not paying Opus rates to decide whether a message is a greeting.
Run the agent once with no tools and a simple prompt to confirm the loop turns over: input goes in, the model responds, the SDK closes the turn. This sounds trivial, but verifying the loop in isolation saves hours later when a tool misbehaves and you need to know the harness itself is sound.
The system prompt is your agent's job description. Keep it specific: state the agent's role, the boundaries of what it may do, the tone, and the format it should answer in. For our procurement assistant, the prompt declares that it helps employees raise purchase requests, that it must always check the remaining budget before drafting a request, and that it must never approve spending itself, only prepare it for a human.
Resist the urge to dump every edge case into the prompt. Long, rambling system prompts dilute the instructions that matter. State the rules that are non-negotiable, give one or two examples of correct behavior, and let tools and retrieval carry the situational detail. You will tune this prompt against evals in step 6, so treat the first version as a starting point, not gospel.
Now make the agent useful by giving it a tool. Stand up an MCP server that exposes a single function, look_up_vendor, with a typed input schema for the vendor name and a structured output for the vendor's details. Register that server with the agent. The flow below shows what happens when a user asks a question that needs this tool.
Hear it before you finish reading
Talk to a live CallSphere AI voice agent in your browser — 60 seconds, no signup.
flowchart TD
A["Employee: 'order 20 monitors from Acme'"] --> B["Claude reads system prompt + tools"]
B --> C{"Need vendor data?"}
C -->|Yes| D["Call look_up_vendor(name='Acme')"]
D --> E["MCP server queries vendor DB"]
E --> F["Structured vendor record returned"]
F --> G["Claude checks budget tool"]
G --> H["Draft purchase request for human"]
The first time you run this end to end, watch the tool call arguments in your logs. The model should populate the schema correctly from natural language. If it passes the wrong field or invents a vendor, that is a prompt or schema problem, and it is far easier to fix now with one tool than later with twelve.
With one tool proven, add the rest: check_budget, list_open_requests, and draft_request. Each gets its own typed schema. Crucially, put a policy gate in front of the tools that cause side effects. The draft_request tool should be allowed, but a hypothetical submit_request that actually commits spend should require that the caller is an approved budget owner. The gate runs before the MCP server executes, rejecting calls the user is not entitled to make.
This is also where you add idempotency. Give draft_request an idempotency key derived from the request contents so that if the agent loop replays after a crash, you do not create two identical draft purchase orders. These guardrails feel like overhead in a demo and feel essential the moment real money is involved.
So far the agent forgets everything between conversations. Add two memory stores. A short-term buffer keeps the current conversation, including tool results, so the model can reason across turns. A long-term store records durable facts, such as which cost center an employee belongs to and their typical vendors, and the context assembler injects the relevant slice on each new session.
Be deliberate about what graduates into long-term memory. Storing every message bloats retrieval and slows the agent. Store decisions and stable preferences, not raw chatter. A simple rule that works in practice: write to long-term memory only when a request is completed or a preference is explicitly stated.
Before this agent goes near production, build an eval suite. Collect twenty to fifty realistic requests with known correct outcomes: the right vendor looked up, the budget checked, the draft formatted properly, the unauthorized action refused. Run the agent against this suite and score it. Now any change, a new system prompt, a model upgrade, a tweaked tool, must pass the suite before it ships.
This is the discipline that turns a clever prototype into a reliable service. Without evals you are guessing whether yesterday's prompt edit made the agent better or quietly worse. With them, you have a number, and you can let the number decide. Wire the suite into CI so a regression blocks the deploy automatically.
Still reading? Stop comparing — try CallSphere live.
CallSphere ships complete AI voice agents per industry — 14 tools for healthcare, 10 agents for real estate, 4 specialists for salons. See how it actually handles a call before you book a demo.
Finally, instrument everything. Log each prompt sent, each tool call and its arguments, each result, and the final answer, all tied to a trace ID. Ship the agent behind a feature flag to a small group of real users, watch the traces, and expand only once the eval scores hold up against live traffic. When something goes wrong, and it will, the trace lets you replay the exact run and see where the loop went off the rails.
That is the whole build. Loop, prompt, one tool, more tools with a policy gate, memory, evals, observability, gradual rollout. Follow it in order and you reach production without the usual thrash of bolting safety on after the fact.
A single-tool agent on the Agent SDK can be running in an afternoon. The time goes into steps four through seven, policy gates, memory, evals, and observability, which is exactly the work that makes it safe for production.
For a learning exercise, yes, once. For production, no. The Claude Agent SDK already handles checkpointing, tool dispatch, and context management correctly, and rebuilding that yourself adds risk without adding value.
Introduce Sonnet 4.6 workers when a sub-task is high-volume and well-scoped, like summarizing a document or classifying a request. Keep Opus 4.8 for the orchestration turns where judgment and tool selection matter.
Begin with twenty to fifty cases that cover your happy paths plus the refusals and edge cases you most fear. Grow the suite from real production traces as they surface failures you did not anticipate.
CallSphere runs this exact build pattern for voice and chat: agents that answer every call, invoke tools mid-conversation, and book work 24/7, all gated by evals and observability. See it live at callsphere.ai.
Source & attribution: This is an independent, original explainer inspired by Anthropic's coverage on the Claude blog. Claude, Claude Code, Claude Cowork, Claude Opus, and the Model Context Protocol are products and trademarks of Anthropic. CallSphere is not affiliated with or endorsed by Anthropic.

Written by
Sagar Shankaran· Founder, CallSphere
LinkedInSagar Shankaran is the founder of CallSphere, where he builds production AI voice and chat agents deployed across healthcare, hospitality, real estate, and home services. He writes about agentic AI, LLM engineering, and shipping voice agents that handle real calls in production.
See how AI voice agents work for your industry. Live demo available -- no signup required.
One reschedule text hits your scheduler, package balance, tutor shift and invoice. Here is what MCP changed for tutoring and test-prep center owners in 2026.
Anthropic's Claude Fable 5 and Mythos 5 explained: pricing, availability, frontier benchmarks, the dual-model safeguard architecture, and what they mean for AI agents.
Where Claude Code, MCP, and multi-agent systems are taking GTM engineering next, and how to prepare your team now for standing and multi-agent workflows.
Where Claude Cowork and the Claude agent ecosystem are heading next — standing agents, MCP, skills as a moat — and the concrete moves to prepare your team now.
The metrics, leading signals, and anti-metrics that prove Claude Cowork is working — acceptance rate, time-to-outcome, and why usage counts mislead.
Shipping an agentic GTM workflow is easy; proving it works is hard. The metrics, signals, and eval loops that show a Claude Code rebuild is paying off.
© 2026 CallSphere Inc. All rights reserved.
Made within San Francisco
Watch how CallSphere handles real customer calls, schedules appointments, and processes payments — live.
Try Live DemoBook a DemoCalculate Your ROI