Summer Sale Limited Time Flat 70% Discount offer - Ends in 0d 00h 00m 00s - Coupon code: 70spcl

Anthropic CCAR-F Claude Certified Architect – Foundations Exam Practice Test

Page: 1 / 6
Total 60 questions

Claude Certified Architect – Foundations Questions and Answers

Question 1

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.

Monitoring shows 12% of extractions fail Pydantic validation with specific errors like “expected float for quantity, got ‘2 to 3’”. Retrying these requests without modification produces identical failures.

What’s the most effective approach to recover from these validation failures?

Options:

A.

Send a follow-up request including the validation error, asking the model to correct its output.

B.

Set temperature to 0 to eliminate output variability and ensure consistent formatting.

C.

Pre-process source documents to standardize problematic formats before sending them for extraction.

D.

Implement a secondary pipeline using a larger model tier to reprocess documents that fail validation.

Question 2

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 infrastructure-as-code repository includes Terraform modules ( /terraform/ ), Kubernetes manifests ( /kubernetes/ ), and CI/CD pipeline scripts ( /pipelines/ ). Each requires different conventions, but your single root CLAUDE.md has grown to 500+ lines. When developers work on Kubernetes files, Terraform-specific rules load into context unnecessarily, consuming tokens.

What is the best approach to reorganize so only relevant guidance loads when editing specific file types?

Options:

A.

Create files in .claude/rules/ with YAML frontmatter path-scoping (e.g., paths: ["terraform/**/*.tf"] ), loading rules only when editing matching files.

B.

Restructure the root CLAUDE.md into clearly labeled sections with headers (e.g., “## Terraform Conventions”), improving organization and readability.

C.

Split content into subdirectory CLAUDE.md files ( /terraform/CLAUDE.md , /kubernetes/CLAUDE.md ), so Claude loads directory-specific guidance.

D.

Keep the root CLAUDE.md and use @path/to/import syntax to modularly include tool-specific guidance files from separate documents.

Question 3

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?

Options:

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.

Question 4

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.

The system needs to extract candidate information (name, contact details, skills, work experience, education) from uploaded resumes. The extracted data must strictly conform to a predefined JSON schema, as missing required fields or incorrect data types will cause downstream validation failures.

What is the most reliable approach to ensure Claude’s output consistently matches the schema?

Options:

A.

Parse Claude’s text response with regex patterns to extract JSON objects, using retry logic for malformed responses.

B.

Include detailed JSON formatting instructions and a template example in the system prompt, asking Claude to output only valid JSON.

C.

Make two separate API calls—first extracting information as text, then asking Claude to format that text as JSON.

D.

Define a tool with an input schema matching your required JSON structure and extract the data from Claude’s tool_use response.

Question 5

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 system has been running for 3 weeks and human reviewers have corrected 847 extractions. Analysis reveals a recurring pattern: when recipes use informal measurements like “a handful” or “a splash,” the model either invents specific amounts or leaves fields empty—accounting for 23% of all corrections.

How should you use this feedback to improve extraction accuracy?

Options:

A.

Fine-tune the model on the 847 corrected extractions.

B.

Add few-shot examples to your prompt demonstrating correct handling of informal measurements—extracting them verbatim rather than converting or omitting them.

C.

Implement a post-processing layer that uses pattern matching to detect informal measurement phrases in source text and automatically populate values when the extraction is empty.

D.

Update your JSON schema to add a “measurement_type” enum field (precise/informal).

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.

Compliance requires that refunds exceeding $500 must automatically escalate to a human agent—this rule cannot be left to model discretion. Despite clear system prompt instructions, production logs show the agent occasionally processes high-value refunds directly (3% failure rate).

How should you achieve guaranteed compliance?

Options:

A.

Add few-shot examples to the prompt showing correct escalation behavior at various refund amounts ($400, $500, $600).

B.

Strengthen the system prompt with emphatic language: “CRITICAL POLICY: Refunds over $500 MUST trigger human escalation. NEVER process these directly.”

C.

Modify the refund tool to return an error with message “Amount exceeds policy limit—please escalate” when the threshold is exceeded.

D.

Implement a hook to intercept tool calls, when the refund process amount exceeds $500, block it and invoke human escalation.

Question 7

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?

Options:

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.

Question 8

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?

Options:

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).

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 system extracts event metadata (date, location, organizer, attendee_count) from news articles using a JSON schema with all nullable fields. During evaluation, you observe the model frequently generates plausible but incorrect values for fields not mentioned in the article—for example, outputting “500” for attendee_count when the source contains no attendance information.

What’s the most effective way to reduce these false extractions?

Options:

A.

Upgrade to a more capable model tier with improved instruction-following to reduce hallucination tendencies.

B.

Make all schema fields required (non-nullable) with strict validation rules to ensure the model only outputs verifiable data.

C.

Add prompt instructions to return null for any field where information is not directly stated in the source.

D.

Add a post-processing step using a second LLM call to verify each extracted value exists in the source document.

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.

Production logs show that when the agent handles complex billing disputes requiring 6+ tool calls, it sometimes exhausts its max_turns limit after gathering data but before completing resolution or escalating. The team’s goal is to guarantee that every customer interaction ends with either a completed resolution or a human handoff, regardless of how the agent loop terminates.

Which approach achieves this guarantee?

Options:

A.

Implement a pre-tool-use hook that counts tool invocations and terminates the loop with an automatic escalation once the agent reaches 80% of its max_turns limit.

B.

Split the workflow into two sequential agent invocations—a first agent gathers information via get_customer and lookup_order, then a second agent receives that data and handles process_refund or escalate_to_human, each with separate turn budgets.

C.

Add orchestration-layer code that checks the agent’s outcome after each loop termination—if the loop ended without a completed resolution or escalation, programmatically call escalate_to_human with the accumulated conversation context and tool results.

D.

Add system prompt instructions telling the agent to call escalate_to_human with a summary of its findings whenever it determines it cannot complete resolution within its remaining actions.

Question 11

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.

Production logs reveal inconsistent error handling: when lookup_order fails, the agent sometimes retries 5+ times (wasteful when the order ID doesn’t exist), sometimes escalates immediately (premature for temporary network issues), and sometimes asks users for clarification (inappropriate when the issue is a backend permission error). Investigation shows your MCP tool returns uniform error responses: {"isError": true, "content": [{"type": "text", "text": "Operation failed"}]} . The agent cannot distinguish between error types.

What’s the most effective improvement?

Options:

A.

Enhance error responses with structured metadata—include error_category (transient/validation/permission), isRetryable boolean, and a description of what caused the failure.

B.

Implement retry logic with exponential backoff in your MCP server for all errors, returning to the agent only after retries are exhausted.

C.

Create an analyze_error MCP tool the agent calls after any failure to determine the error category and recommended action.

D.

Add few-shot examples to the system prompt demonstrating how to interpret error message patterns and select appropriate responses for each.

Question 12

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.

Your process_refund tool returns two types of errors: technical errors (“503 Service Unavailable”, “Connection timeout”) that are transient (~5% of calls), and business errors (“Order exceeds 30-day return window”, “Item already refunded”) that are permanent (~12% of calls). Monitoring shows the agent wastes 3–4 turns retrying business errors that can never succeed. Currently, both error types return only a plain text message to Claude.

What’s the most effective way to reduce wasted retries while improving customer-facing response quality?

Options:

A.

Implement automatic retry logic at the tool layer for technical errors only, passing business errors to Claude without retries.

B.

Add few-shot examples showing how to distinguish retriable from non-retriable errors by parsing error message text.

C.

Add a check_refund_eligibility tool that must be called before process_refund to prevent business rule violations.

D.

Return structured error responses with "retriable": false for business errors and a customer-friendly explanation for Claude to use.

Question 13

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 system must extract event details from calendar invitations and output JSON that strictly conforms to a schema with fields for title, date, time, location, and attendees. Downstream systems reject any malformed or non-conformant JSON.

What approach provides the most reliable schema compliance?

Options:

A.

Pre-fill Claude’s response with an opening brace to force JSON output, then complete and parse the response.

B.

Append instructions like “Output only valid JSON matching the schema exactly” and implement retry logic to re-prompt when JSON parsing fails.

C.

Define a tool with your target schema as input parameters and have Claude call it with the extracted data.

D.

Include detailed JSON formatting instructions and the target schema in your prompt, then parse Claude’s text response as JSON.

Question 14

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’ve asked Claude to write a data migration script, but the initial output doesn’t correctly handle records with null values in required fields.

What’s the most effective way to iterate toward a working solution?

Options:

A.

Add “think harder about edge cases” to your prompt and request a complete rewrite of the migration logic.

B.

Manually edit the generated code to fix the null handling, then continue working with Claude on other parts.

C.

Describe the null value problem in detail and ask Claude to regenerate the entire script with improved edge case handling.

D.

Provide a test case with example input containing null values and the expected output, then ask Claude to fix it.

Question 15

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.

Testing reveals that when source documents are missing certain specifications, the model fabricates plausible-sounding values to satisfy your schema’s required fields. For example, a document mentioning only dimensions receives a fabricated “weight: 2.3 kg” in the extraction output.

What schema design change most effectively addresses this hallucination behavior?

Options:

A.

Add explicit instructions to the prompt stating “only extract information explicitly stated in the document; use placeholder text for missing values.”

B.

Change fields that may not exist in source documents from required to optional, allowing the model to omit them.

C.

Add a “confidence” field alongside each specification where the model self-reports its certainty, then filter out low-confidence extractions.

D.

Implement semantic validation that verifies each extracted value appears in or can be inferred from the source document text.

Question 16

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 new payment processing module that must follow your project’s established patterns for database transactions, error handling, and audit logging. You’ve identified three existing modules that exemplify these patterns: db_utils.py , error_handlers.py , and audit_logger.py . This is a one-off integration task—these patterns are well-documented in your team wiki and don’t need additional project-level documentation.

What’s the most effective approach?

Options:

A.

Use @ references to include the three modules directly in your prompt, giving Claude concrete code examples of the patterns to follow.

B.

Add documentation of each pattern to your CLAUDE.md file, establishing them as project conventions that Claude will apply automatically.

C.

Describe the patterns from the three modules in natural language in your prompt, explaining the transaction handling approach, error format, and logging conventions Claude should follow.

D.

Ask Claude to explore your codebase to find and understand the transaction, error handling, and logging patterns before generating the new module.

Question 17

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?

Options:

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.

Question 18

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?

Options:

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.

Page: 1 / 6
Total 60 questions