Anthropic · CCAR-F
Validates foundational knowledge and skills for designing and operating production-grade agentic AI systems using Claude, including the Claude API, Agent SDK, Claude Code, and Model Context Protocol (MCP). Targeted at software engineers, solutions architects, and AI developers building real-world Claude-powered applications.
Practice Questions
314
≈ 4 practice exams
Duration
120 minutes
Passing Score
720/1000
Difficulty
FoundationalLast Updated
Sep 2026
Use this CCAR-F practice exam to prepare for Claude Certified Architect – Foundations (CCAR-F) with realistic questions, detailed explanations, and focused study modes. The practice bank includes 314 questions for Anthropic CCAR-F, so you can review the exam steadily instead of relying on one long cram session.
As you practice, pay extra attention to recurring topics such as Agentic Architecture & Orchestration, Claude Code Configuration & Workflows, Tool Design & MCP Integration, Prompt Engineering, and Context Management. Start with short sessions to identify weak areas, then move into timed quizzes once your accuracy is consistent.
The explanations are written for candidates preparing for Anthropic certification questions and reviewing how the concepts apply in practice. Use the free preview first, then unlock the full question bank when you are ready to build a complete study routine.
5 sample questions with answers and explanations. The full bank has 314 questions, enough for 4 full-length practice exams.
Preview — answers shown1. You are configuring a hook in the Agent SDK. You want the hook to match all tools from an MCP server named 'memory'. Which matcher string should you use? (Select one!)
Explanation
Matchers that contain only letters, digits, underscores, or pipes are treated as exact strings with '|' as alternation. 'mcp__memory' contains only letters and underscores, so it is an exact string and matches no tool (since tool names include the method suffix). To match all tools from that server, use a regex pattern like 'mcp__memory__.*'. The wildcard '*memory*' is not a valid matcher syntax, and '^mcp__memory' would match only the server prefix, not the full tool names.
2. A developer wants to run Claude Code in a mode where no prompts are shown, and any tool not explicitly pre-approved is automatically denied. Which permission mode should they use? (Select one!)
Explanation
The `dontAsk` mode is designed to never prompt the user. In this mode, any tool that is not explicitly pre-approved by `allowed_tools` or permission rules is automatically denied, and the `canUseTool` callback step is skipped entirely. Tools that require user interaction are also denied instead of prompting. By contrast, the `default` mode has no auto-approvals and triggers the `canUseTool` callback for unmatched tools, meaning it will prompt the user.
3. You are defining a custom tool for an agent. You want to ensure the tool's name is valid according to the API requirements. Which of the following tool names is valid? (Select one!)
Explanation
Tool names must match the regex ^[a-zA-Z0-9_-]{1,64}$. The name 'get-customer-data' uses only letters, digits, hyphens, and underscores, and is within the 64-character limit. The name with an exclamation mark contains an invalid character. The name with spaces is invalid because spaces are not allowed. The name with periods is invalid because periods are not in the allowed character set.
4. You are configuring a hook in the Agent SDK. You want the hook to match all tools from an MCP server named 'memory'. You write a matcher. Which matcher correctly matches all tools from that server? (Select one!)
Explanation
Matcher semantics: a matcher containing only letters, digits, underscore, or pipe is treated as an exact string, with pipe as alternation. 'mcp__memory' contains only letters and underscores, so it is an exact string and matches no tool. To match all tools from a server, you need a regex pattern like 'mcp__memory__.*', which matches any tool name starting with that prefix. 'memory' would not match the full tool names, and '*memory*' is not a valid regex for this purpose.
5. You are defining a custom tool for an agent. You want to ensure the tool's name is valid according to the API requirements. Which regex pattern must the tool name match? (Select one!)
Explanation
The official requirement for tool names is that they must match the regex ^[a-zA-Z0-9_-]{1,64}$. This allows letters, digits, underscores, and hyphens, with a maximum length of 64 characters. The other options either omit hyphens, allow a longer length, or omit underscores, which do not match the official pattern. Therefore, the correct regex is ^[a-zA-Z0-9_-]{1,64}$.
$17.99
One-time access to this exam