CCAR-F scenarios › Customer Support Resolution Agent · Question 4 of 60

Scenario 1 · Customer Support Resolution Agent

You're building a support agent with the Claude Agent SDK that resolves ambiguous customer requests such as returns, billing disputes, and account problems. It reaches your backend through custom MCP tools: get_customer, lookup_order, process_refund, and escalate_to_human. The goal is to resolve at least 80% of contacts on first touch while recognizing the cases a human should take over.

Tool Design & MCP Integration

When a customer asks for a refund on an order that is outside the 30-day return window, process_refund returns {"isError": true, "content": "Operation failed"}. The agent retries the call three times and then tells the customer "our refund system is having technical difficulties." What is the best fix?

Show answer and explanation

Answer: C — Return structured error metadata such as errorCategory "business", isRetryable false, and a customer-friendly explanation that the order is past the 30-day window, so the agent can explain the policy.

A uniform "Operation failed" hides the kind of failure, so the agent can't tell a policy violation from an outage and wastes retries on an error that will never succeed (task 2.2). Structured metadata (category, isRetryable false, a readable reason) lets it stop retrying and explain the policy correctly. A blanket retry rule (a) still leaves the agent misdescribing the failure and escalates cases it could close itself. A pre-check tool (b) adds a step but leaves every other failure just as opaque. Reporting failure as success with an empty result (d) suppresses the error, and the agent will misread it as a refund that went through or a missing order.