Pre-Summer Sale Special - Limited Time 70% Discount Offer - Ends in 0d 00h 00m 00s - Coupon code: mxmas70

Home > Anthropic > Claude Certified Architect > CCAR-F

CCAR-F Claude Certified Architect – Foundations Question and Answers

Question # 4

You are using Claude Code to accelerate software development. Your team uses it for code generation, refactoring, debugging, and documentation. You need to integrate it into your development workflow with custom slash commands, CLAUDE.md configurations, and understand when to use plan mode vs direct execution.

You’re implementing a caching layer for API responses to speed up the /products endpoint. You have a rough idea—Redis with a 5-minute TTL—but you’re new to production caching and aren’t sure what other considerations a robust implementation requires.

What’s the most effective way to start your iterative workflow?

A.

Ask Claude to interview you about the caching requirements before implementing, surfacing considerations like invalidation strategies, cache layers, consistency guarantees, and failure modes.

B.

Use plan mode to analyze the current /products endpoint implementation, then provide your caching requirements once Claude explains how the existing code is structured.

C.

Start with a minimal request: “Add Redis caching to /products with 5-minute TTL.” Add features and fix issues through follow-up prompts as problems surface during testing.

D.

Write a specification with your known requirements and “TBD” markers for uncertain areas, having Claude propose solutions for each TBD as it implements.

Full Access
Question # 5

You are building developer productivity tools using the Claude Agent SDK. The agent helps engineers explore unfamiliar codebases, understand legacy systems, generate boilerplate code, and automate repetitive tasks. It uses the built-in tools (Read, Write, Bash, Grep, Glob) and integrates with Model Context Protocol (MCP) servers.

An engineer asks the agent to find all callers of a function before removing it. The function is defined in a core library but is also exposed through wrapper modules that rename the function for domain-specific use (e.g., calculateTax in the library becomes computeOrderTax in the orders module).

What exploration strategy will most reliably identify all callers?

A.

Use Grep to find all files that import from the library or wrapper modules, then read each file to check whether it uses the function.

B.

Use Grep to search for the function’s original name across the codebase.

C.

Read the library and wrapper modules to identify all exposed names for the function, then Grep for each name across the codebase.

D.

Search for the function name in project documentation to understand intended usage patterns and navigate to documented integration points.

Full Access
Question # 6

You are building a customer support resolution agent using the Claude Agent SDK. The agent handles high-ambiguity requests like returns, billing disputes, and account issues. It has access to your backend systems through custom Model Context Protocol (MCP) tools ( get_customer , lookup_order , process_refund , escalate_to_human ). Your target is 80%+ first-contact resolution while knowing when to escalate.

A customer contacts the agent about a warranty claim on a power drill. Resolving this requires multiple sequential tool calls: get_customer to look up their account, lookup_order to find the purchase details, and then either process_refund or escalate_to_human depending on warranty eligibility. You’re implementing the agentic loop that orchestrates these steps using the Claude API.

What is the primary mechanism your application uses to determine whether to continue the loop or stop?

A.

You check whether Claude’s response contains a text content block—if text is present, the agent has produced its final answer and the loop should exit.

B.

You manually set the tool_choice parameter to "none" after the final expected tool call to force Claude to stop requesting tools.

C.

You check the stop_reason field in each API response—the loop continues while it equals "tool_use" and exits when it changes to "end_turn" or another terminal value.

D.

You track the number of tool calls made and exit the loop once a preconfigured maximum is reached.

Full Access
Question # 7

You are building a structured data extraction system using Claude. The system extracts information from unstructured documents, validates the output using JavaScript Object Notation (JSON) schemas, and maintains high accuracy. It must handle edge cases gracefully and integrate with downstream systems.

Your extraction system implements automatic retries when validation fails. On each retry, the specific validation error is appended to the prompt. This retry-with-error-feedback approach resolves most failures within 2–3 attempts.

For which failure pattern would additional retries be LEAST effective?

A.

The model extracts keywords as a nested object organized by category when the schema requires a flat array of strings.

B.

The model extracts “et al.” for co-authors when the full list exists only in an external document not in the input.

C.

The model extracts citation counts as locale-formatted strings (“1,234”) when the schema requires integers.

D.

The model extracts dates as ISO 8601 datetime strings (“2023-03-15T00:00:00Z”) when the schema requires only the date portion (YYYY-MM-DD).

Full Access
Question # 8

You are building developer productivity tools using the Claude Agent SDK. The agent helps engineers explore unfamiliar codebases, understand legacy systems, generate boilerplate code, and automate repetitive tasks. It uses the built-in tools (Read, Write, Bash, Grep, Glob) and integrates with Model Context Protocol (MCP) servers.

You’ve configured your Claude agent with three MCP servers: one for git operations, one for Jira ticket management, and one for documentation search.

When a user asks the agent to “create a branch for JIRA-123 and add documentation links to the ticket,” how does the agent access tools across these servers?

A.

Tools from all configured MCP servers are discovered at connection time and available simultaneously to the agent.

B.

The agent queries each server sequentially to determine which handles each tool, routing calls based on tool name prefixes.

C.

The agent automatically selects the most relevant server based on the request and loads only that server’s tools.

D.

You must specify which MCP server to use for each turn, and the agent can only access one server’s tools at a time.

Full Access
Question # 9

You are building a structured data extraction system using Claude. The system extracts information from unstructured documents, validates the output using JavaScript Object Notation (JSON) schemas, and maintains high accuracy. It must handle edge cases gracefully and integrate with downstream systems.

Your extraction pipeline processes invoices and extracts line items, subtotals, tax amounts, and grand totals. During evaluation, you discover that in 18% of extractions, the sum of extracted line item amounts doesn’t match the extracted grand total—sometimes due to OCR errors in the source document, sometimes due to extraction mistakes by the model. Downstream accounting systems reject records with mismatched totals.

What’s the most effective approach to improve extraction reliability?

A.

Add few-shot examples demonstrating invoices where extracted line items sum correctly to the stated total, encouraging the model to produce mathematically consistent extractions.

B.

Extract line items and totals independently, then use a separate validation model to reconcile discrepancies by determining which extracted values are most likely correct.

C.

Implement post-processing that automatically adjusts line item amounts proportionally when their sum doesn’t match the stated total.

D.

Add a “calculated_total” field where the model sums extracted line items alongside a “stated_total” field. Flag records for human review when values differ.

Full Access
Question # 10

You are building a customer support resolution agent using the Claude Agent SDK. The agent handles high-ambiguity requests like returns, billing disputes, and account issues. It has access to your backend systems through custom Model Context Protocol (MCP) tools (get_customer, lookup_order, process_refund, escalate_to_human). Your target is 80%+ first-contact resolution while knowing when to escalate.

A customer returns 4 hours after their initial session about the same billing dispute. The previous 32-turn session contains lookup_order results showing “Status: PENDING, Expected resolution: 24–48 hours.” In testing, you observe that when resuming sessions with stale tool results, the agent often references the outdated data in responses (e.g., “I see your refund is still being processed”) even after subsequent fresh tool calls return different information.

What approach most reliably handles returning customers?

A.

Resume with full history and configure the agent to automatically re-call all previously used tools at session start to ensure data freshness.

B.

Resume with full history and add a system prompt instruction telling the agent to always prefer the most recent tool results when multiple calls to the same tool exist in context.

C.

Resume with full history but filter out previous tool_result messages before resuming, keeping only the human/assistant turns so the agent must re-fetch needed data.

D.

Start a new session, inject a structured summary of the previous interaction (issue type, actions taken, resolution status), then make fresh tool calls before engaging.

Full Access
Question # 11

You are building a structured data extraction system using Claude. The system extracts information from unstructured documents, validates the output using JavaScript Object Notation (JSON) schemas, and maintains high accuracy. It must handle edge cases gracefully and integrate with downstream systems.

Your extraction pipeline validates outputs against JSON schemas, but you need to implement human review given limited reviewer capacity (they can handle approximately 5% of total extraction volume).

What’s the most effective basis for selecting which extractions to route for human review?

A.

Route extractions where the model indicates low confidence or where source documents contain ambiguous or contradictory information.

B.

Route extractions containing specific high-priority entity types (e.g., financial figures, dates) for human review, regardless of extraction confidence.

C.

Route extractions for review only when downstream systems report data quality issues or processing failures.

D.

Randomly sample 5% of extractions for review.

Full Access
Question # 12

You are building developer productivity tools using the Claude Agent SDK. The agent helps engineers explore unfamiliar codebases, understand legacy systems, generate boilerplate code, and automate repetitive tasks. It uses the built-in tools (Read, Write, Bash, Grep, Glob) and integrates with Model Context Protocol (MCP) servers.

Your codebase exploration tool stores session IDs to allow engineers to continue investigations across work sessions. An engineer spent an hour yesterday analyzing a legacy authentication module, building context about its architecture and dependencies. They want to continue today. The session ID is valid, but version control shows 3 of the 12 files the agent previously read were modified overnight by a teammate’s merge.

What approach best balances efficiency and accuracy?

A.

Start a fresh session to ensure the agent works with current codebase state without stale assumptions

B.

Resume the session and inform the agent which specific files changed for targeted re-analysis

C.

Resume the session and immediately have the agent re-read all 12 previously analyzed files

D.

Resume the session without informing the agent about the changed files

Full Access
Question # 13

You are building developer productivity tools using the Claude Agent SDK. The agent helps engineers explore unfamiliar codebases, understand legacy systems, generate boilerplate code, and automate repetitive tasks. It uses the built-in tools (Read, Write, Bash, Grep, Glob) and integrates with Model Context Protocol (MCP) servers.

An engineer asks your agent to add comprehensive tests to a legacy codebase with 200 files and minimal existing test coverage. The engineer hasn’t specified which modules to prioritize.

How should the agent decompose this open-ended task?

A.

Create a fixed testing schedule upfront based on directory structure, allocating equal effort to each top-level directory regardless of code complexity or business importance.

B.

Use Glob and Grep to map codebase structure, identify heavily-coupled modules, create a prioritized plan for high-impact areas, and revise as dependencies are discovered.

C.

Systematically read all 200 files to create a complete function inventory before writing any tests, ensuring the testing plan accounts for every function before beginning.

D.

Start writing tests for the first module alphabetically, using test failures and imports to discover related files organically.

Full Access
Question # 14

You are building a customer support resolution agent using the Claude Agent SDK. The agent handles high-ambiguity requests like returns, billing disputes, and account issues. It has access to your backend systems through custom Model Context Protocol (MCP) tools ( get_customer , lookup_order , process_refund , escalate_to_human ). Your target is 80%+ first-contact resolution while knowing when to escalate.

A customer raises three separate issues during one session: a refund inquiry (turns 1–15), a subscription question (turns 16–30), and a payment method update (turns 31–45). At turn 48, the customer asks “What happened with my refund?” The conversation is approaching context limits.

What strategy best maintains the agent’s ability to address all issues throughout the session?

A.

Summarize earlier turns into a narrative description, preserving full message history only for the active issue.

B.

Implement sliding window context that retains the most recent 30 turns.

C.

Rely on MCP tools to re-fetch relevant information on demand when the customer references earlier issues.

D.

Extract and persist structured issue data (order IDs, amounts, statuses) into a separate context layer.

Full Access
Question # 15

You are building a customer support resolution agent using the Claude Agent SDK. The agent handles high-ambiguity requests like returns, billing disputes, and account issues. It has access to your backend systems through custom Model Context Protocol (MCP) tools ( get_customer , lookup_order , process_refund , escalate_to_human ). Your target is 80%+ first-contact resolution while knowing when to escalate.

During testing, you find that when a customer says “I need a refund for my recent purchase,” the agent calls process_refund immediately—but populates the required order_id parameter with a plausible-looking but fabricated value instead of first calling lookup_order to retrieve the actual order ID. The refund call fails because the fabricated ID doesn’t exist.

Which change directly addresses the root cause of the agent fabricating the order_id value?

A.

Update the process_refund tool description to explicitly state that order_id must be obtained from a prior lookup_order call and must never be assumed or invented.

B.

Switch tool_choice from "auto" to "any" to force the agent to make a tool call on every turn.

C.

Add server-side validation that checks whether the order_id exists in your database before executing the refund, returning an error to the agent if not found.

D.

Pre-parse incoming customer messages to extract any order IDs mentioned, and inject them into the conversation context before passing to Claude.

Full Access
Question # 16

You are building a customer support resolution agent using the Claude Agent SDK. The agent handles high-ambiguity requests like returns, billing disputes, and account issues. It has access to your backend systems through custom Model Context Protocol (MCP) tools ( get_customer , lookup_order , process_refund , escalate_to_human ). Your target is 80%+ first-contact resolution while knowing when to escalate.

When the agent calls lookup_order and receives order details showing the item was purchased 45 days ago, how does the agentic loop determine whether to call process_refund or escalate_to_human next?

A.

The order details are added to the conversation and the model reasons about which action to take.

B.

The orchestration layer automatically routes to the next tool based on the order’s status field.

C.

The agent follows a pre-configured decision tree mapping order attributes to specific tool calls.

D.

The agent executes the remaining steps in a tool sequence planned at the start of the request.

Full Access
Question # 17

You are using Claude Code to accelerate software development. Your team uses it for code generation, refactoring, debugging, and documentation. You need to integrate it into your development workflow with custom slash commands, CLAUDE.md configurations, and understand when to use plan mode vs direct execution.

Your team is configuring MCP servers in Claude Code. You want to add a shared venue lookup server that all team members should have access to, and you personally want to add an experimental music playlist server that only you are testing.

Which configuration approach correctly applies MCP server scopes?

A.

Add both servers to your local ~/.claude.json .

B.

Add the venue server to .mcp.json and the playlist server to ~/.claude.json .

C.

Add the venue server to ~/.claude.json and the playlist server to .mcp.json .

D.

Add both servers to the project-level .mcp.json file.

Full Access
Question # 18

You are using Claude Code to accelerate software development. Your team uses it for code generation, refactoring, debugging, and documentation. You need to integrate it into your development workflow with custom slash commands, CLAUDE.md configurations, and understand when to use plan mode vs direct execution.

You’re tasked with adding real-time updates to the application. This could be implemented using WebSockets, Server-Sent Events, or polling, each with different complexity, browser support, and infrastructure requirements.

What’s the most effective way to begin this task?

A.

Use direct execution to implement polling first, then evaluate whether to upgrade to WebSockets later.

B.

Use direct execution with a prompt asking Claude to analyze all approaches and implement the one it determines is best.

C.

Enter plan mode to explore the architecture, evaluate trade-offs, and present options for team approval before implementing.

D.

Start direct execution with WebSockets, then refactor if infrastructure issues arise.

Full Access