Enterprise AI Bootcamp Demo 4

Agentic AI for Field Service Decision Support

An agent that takes actions, not one that returns paragraphs. Three MCP servers, a diagnostic task it resolves by choosing tools, and then the four ways it goes wrong: a description written for a human instead of a model, an approval it must not talk its way past, an instruction planted in a customer's own words, and the arithmetic that turns nine steps out of ten right into a workflow that fails more often than it succeeds.

planner: model (claude-sonnet-5)manual search: local stubtickets and parts: synthetic training dataMCP 2026-07-28
Demonstrations 1 to 3 asked whether a model was right. This one asks what happens when it is wrong and something has already been done about it.
What is real here. The MCP protocol handling, the agent loop, the guardrail decisions, the traces and every measured number are computed live from this code. The service tickets and the parts catalogue are synthetic: 360 tickets and 366 parts generated by scripts/build_data.py from a fixed seed, because no public service-ticket corpus exists. They are fiction, and every screen that shows them says so.

Screens

ScreenWhat it demonstrates
1 DiagnoseOne machine, one symptom, three tools chosen and called by the agent.
2 ContractsThe tool contracts themselves: schemas, descriptions, boundaries, and the four MCP annotation hints with their real defaults.
3 DescriptionsThe same task against a vague tool description and a precise one. Both runs live.
4 ApprovalA denied approval, expressed as an MCP input_required round trip.
5 InjectionAn instruction planted in a customer's ticket text, and the layer that stops it.
6 ReliabilityPer-step success measured over many runs, and what it multiplies out to.
7 DeterminismTwo agent steps replaced by code, and the reliability delta.
8 SkillA fully specified reusable Skill, its portable frontmatter, and its measured invocation and success rates.
9 Explicit codeThe same flow as a state machine with declared state and failure handling.
AuthorityAutomatic, requires approval, prohibited — as executable policy.
TracesEvery span from every run on this box.

Model availability

OPUSMAX_API_KEY is set, so a model chooses the tools and their arguments. Tool-selection accuracy on these screens reflects that model. Compare it with the offline router by unsetting the key and reloading: the failure modes are the same, the rates are not.