What Is CCA-F?
The Claude Certified Architect – Foundations (CCA-F) is Anthropic's professional certification for solution architects who design and build production systems with Claude APIs, the Agent SDK, Claude Code, and the Model Context Protocol (MCP). It validates your ability to architect reliable, maintainable, and scalable AI-powered applications — from single-turn API calls to complex multi-agent orchestration systems.
Unlike vendor certifications that test rote memorisation of service catalogues, CCA-F is scenario-driven. You face 4 randomly selected real-world scenarios (from a bank of 6) and must demonstrate architectural reasoning across agentic loops, tool design, prompt engineering, and context management. The exam targets practitioners with 6+ months of hands-on experience building with Claude in production or advanced prototyping environments.
Earning the CCA-F badge signals to employers and clients that you can independently design Claude-powered architectures that are reliable under edge cases, cost-efficient at scale, and maintainable by engineering teams. The credential is shareable on LinkedIn and verifiable through Anthropic's Skilljar platform.
- Questions: 60 MCQ (scenario-based)
- Duration: 120 minutes
- Pass Score: 720 / 1000 (scaled)
- Cost: $99 USD
- Scenarios: 4 of 6 randomly selected
- Proctored: Yes — single session
- Experience: 6+ months building with Claude
- Language: English only
- Results: Within 2 business days
- Badge: CCA-F (LinkedIn shareable)
- Platform: Anthropic Skilljar
- Focus Areas: Agent SDK, MCP, Claude Code, API
Key Facts
- Exam code: CCA-F (Claude Certified Architect – Foundations)
- Questions: 60 multiple-choice, scenario-based
- Duration: 120 minutes (2 hours)
- Passing score: 720 out of 1000 (scaled scoring)
- Cost: $99 USD per attempt
- Scenario format: 4 of 6 scenarios randomly assigned per exam sitting
- Questions per scenario: ~15 questions each
- Proctored: Yes — single continuous session, no pausing
- Results: Within 2 business days with section-level breakdowns
- Prerequisites: None required (6+ months Claude experience recommended)
- Target audience: Solution architects building with Claude APIs, Agent SDK, Claude Code, MCP
- Badge: CCA-F digital badge — shareable on LinkedIn profiles
- Domains: 5 domains across agentic architecture, tools, code, prompting, context
- Language: English only
Exam Format & Structure
CCA-F uses a scenario-based assessment model. Rather than isolated knowledge questions, you receive 4 randomly selected scenarios from a bank of 6. Each scenario presents a realistic business problem requiring Claude-powered architecture decisions. You answer approximately 15 questions per scenario, testing your ability to apply multiple domains simultaneously within a coherent design context.
flowchart LR
A["Register on
Skilljar"] --> B["Prepare
5 Domains"]
B --> C["Exam Day
120 min"]
C --> D["4 Scenarios
~15 Qs each"]
D --> E{"Score
≥ 720?"}
E -->|Yes| F["CCA-F Badge
LinkedIn"]
E -->|No| G["Retake
Section Feedback"]
style A fill:#3B9797,color:#fff
style B fill:#16476A,color:#fff
style C fill:#132440,color:#fff
style D fill:#16476A,color:#fff
style E fill:#BF092F,color:#fff
style F fill:#3B9797,color:#fff
style G fill:#132440,color:#fff
Domain Breakdown
| Domain | Weight | Task Statements |
|---|---|---|
| 1. Agentic Architecture & Orchestration | 27% | 7 |
| 2. Tool Design & MCP Integration | 18% | 5 |
| 3. Claude Code Configuration & Workflows | 20% | 6 |
| 4. Prompt Engineering & Structured Output | 20% | 6 |
| 5. Context Management & Reliability | 15% | 6 |
allowedTools configuration ensures the billing subagent cannot access customer PII while still resolving refund requests?" The challenge is applying multiple concepts simultaneously under realistic constraints.
Domain 1: Agentic Architecture & Orchestration (27%)
The heaviest domain — tests your ability to design agentic loops, multi-agent systems, and workflow patterns.
- Agentic loop lifecycle:
stop_reasonvalues ("tool_use"vs"end_turn"), tool result injection, termination conditions - Multi-agent orchestration: coordinator-subagent patterns, hub-spoke topology, isolated subagent context
- Task tool configuration:
allowedToolsscoping, context passing strategies, parallel vs sequential execution - Agent SDK hooks:
PostToolUsefor data normalisation, tool call interception for policy enforcement - Workflow handoff patterns: escalation criteria, enforcement gates, graceful degradation
- Task decomposition: prompt chaining, adaptive decomposition, when to use single vs multi-agent
- Session management:
--resume,fork_session, state persistence across interactions
Domain 2: Tool Design & MCP Integration (18%)
Tests your ability to design clean tool interfaces, integrate MCP servers, and handle tool errors gracefully.
- Tool interface design: descriptive naming, input/output boundaries, disambiguation strategies
- Structured error responses:
isErrorflag,errorCategory, retryable vs fatal classification - Tool distribution: scoped access across agents,
tool_choicemodes ("auto","any", forced) - MCP server configuration:
.mcp.json(project-level),~/.claude.json(user-level), environment variable expansion - Built-in tools: Read, Write, Edit, Bash, Grep, Glob — when to use vs custom MCP tools
Domain 3: Claude Code Configuration & Workflows (20%)
Tests your mastery of Claude Code as a development tool — configuration, customisation, and CI/CD integration.
CLAUDE.mdhierarchy: user-level, project-level, directory-level,@importdirectives- Custom slash commands:
.claude/commands/directory,$ARGUMENTSinterpolation - Skills:
.claude/skills/withcontext: forkfor isolated execution - Path-specific rules:
.claude/rules/with YAML frontmatter globs, file-type enforcement - Plan mode vs direct execution: complexity assessment, when to engage planning
- CI/CD integration:
-p/--printflag for non-interactive mode,--output-format json,--json-schemafor structured CI outputs
Domain 4: Prompt Engineering & Structured Output (20%)
Tests your ability to craft precise prompts, extract structured data, and leverage the API for production workloads.
- Explicit criteria: reducing false positives via precise language, avoiding sentiment-based triggers
- Few-shot prompting: handling ambiguous cases, ensuring format consistency across outputs
- Structured output via
tool_use: JSON schema definitions,tool_choiceforcing, schema validation - Validation and retry loops: error feedback injection, self-correction patterns, max retry limits
- Message Batches API: 50% cost reduction, 24-hour processing window,
custom_idcorrelation - Multi-instance review: separate model calls for generation vs evaluation, self-review limitations
Domain 5: Context Management & Reliability (15%)
Tests your strategies for managing context windows, ensuring reliability, and building human-in-the-loop systems.
- Context preservation: protecting case facts during trimming, "lost in the middle" phenomenon
- Escalation design: explicit criteria over sentiment analysis, honouring customer preference for human agents
- Error propagation: structured error context in multi-agent chains, preventing cascade failures
- Large codebase strategies: scratchpad files,
/compactcommand, delegating to subagents for exploration - Human review integration: confidence calibration, stratified sampling for quality assurance
- Information provenance: claim-source mappings, uncertainty signalling, citation accuracy
Exam Scenarios
Each exam sitting draws 4 of the following 6 scenarios. You cannot predict which 4 you'll receive, so you must prepare for all 6.
| # | Scenario | Primary Domains | Key Concepts |
|---|---|---|---|
| 1 | Customer Support Resolution Agent | Domains 1, 2, 5 | Agent SDK, MCP tools, escalation criteria, context preservation |
| 2 | Code Generation with Claude Code | Domains 3, 4 | CLAUDE.md configuration, slash commands, plan mode, iterative refinement |
| 3 | Multi-Agent Research System | Domains 1, 2, 5 | Coordinator-subagent pattern, parallel execution, information synthesis |
| 4 | Developer Productivity with Claude | Domains 2, 3 | Built-in tools, MCP integration, skill configuration, codebase exploration |
| 5 | Claude Code for Continuous Integration | Domains 3, 4 | -p flag, PR reviews, --output-format json, automated quality gates |
| 6 | Structured Data Extraction | Domains 4, 5 | JSON schemas, tool_use forcing, Batch API, validation loops |
Task Statements at a Glance
The CCA-F exam tests 30 task statements across 5 domains. Each task statement defines specific Knowledge of and Skills in requirements. The table below summarises all 30 tasks — for the full knowledge/skills breakdown with article cross-references, see the comprehensive CCA Study Guide.
Domain 1: Agentic Architecture & Orchestration (27% — 7 Tasks)
| Task | Title | Key Concepts | Study |
|---|---|---|---|
| 1.1 | Design and implement agentic loops | stop_reason, tool result injection, termination control | Part 3 |
| 1.2 | Orchestrate multi-agent systems | Hub-spoke coordinator, isolated subagent context, result aggregation | Part 4 |
| 1.3 | Configure subagent invocation & spawning | Task tool, allowedTools, fork_session, context passing | Part 4 |
| 1.4 | Implement multi-step workflows | Programmatic gates, structured handoffs, escalation protocols | Part 4 |
| 1.5 | Apply Agent SDK hooks | PostToolUse, tool call interception, data normalisation | Part 5 |
| 1.6 | Design task decomposition strategies | Prompt chaining, adaptive decomposition, pattern selection | Part 3 |
| 1.7 | Manage session state & resumption | --resume, fork_session, fresh starts vs stale context | Part 5 |
Domain 2: Tool Design & MCP Integration (18% — 5 Tasks)
| Task | Title | Key Concepts | Study |
|---|---|---|---|
| 2.1 | Design effective tool interfaces | Description engineering, disambiguation, input/output boundaries | Part 6 |
| 2.2 | Implement structured error responses | isError flag, error categories, retryable metadata | Part 6 |
| 2.3 | Distribute tools & configure tool choice | Scoped access, tool_choice modes, agent specialisation | Part 17 |
| 2.4 | Integrate MCP servers | .mcp.json, ~/.claude.json, env var expansion, resources | Part 7 |
| 2.5 | Apply built-in tools effectively | Read, Write, Edit, Bash, Grep, Glob — selection criteria | Part 22 |
Domain 3: Claude Code Configuration & Workflows (20% — 6 Tasks)
| Task | Title | Key Concepts | Study |
|---|---|---|---|
| 3.1 | Configure CLAUDE.md hierarchy | User/project/directory levels, @import, .claude/rules/ | Part 8 |
| 3.2 | Create custom commands & skills | .claude/commands/, skills with context: fork, allowed-tools | Part 8 |
| 3.3 | Apply path-specific rules | YAML frontmatter globs, conditional convention loading | Part 8 |
| 3.4 | Plan mode vs direct execution | Complexity assessment, Explore subagent, safe exploration | Part 9 |
| 3.5 | Apply iterative refinement techniques | I/O examples, test-driven iteration, interview pattern | Part 9 |
| 3.6 | Integrate Claude Code into CI/CD | -p flag, --output-format json, session isolation | Part 9 |
Domain 4: Prompt Engineering & Structured Output (20% — 6 Tasks)
| Task | Title | Key Concepts | Study |
|---|---|---|---|
| 4.1 | Design prompts with explicit criteria | Precision over vagueness, false positive reduction, categorical criteria | Part 10 |
| 4.2 | Apply few-shot prompting | Ambiguous-case handling, format consistency, generalisation | Part 10 |
| 4.3 | Enforce structured output via tool use | JSON schemas, tool_choice forcing, schema design patterns | Part 11 |
| 4.4 | Implement validation & retry loops | Error feedback injection, semantic vs syntax errors, self-correction | Part 11 |
| 4.5 | Design batch processing strategies | Message Batches API, 50% savings, custom_id, 24h window | Part 11 |
| 4.6 | Design multi-pass review architectures | Self-review limitations, separate generation vs evaluation calls | Part 11 |
Domain 5: Context Management & Reliability (15% — 6 Tasks)
| Task | Title | Key Concepts | Study |
|---|---|---|---|
| 5.1 | Manage context windows effectively | Progressive summarisation, "lost in the middle", token budgets | Part 12 |
| 5.2 | Design escalation & human handoff | Explicit criteria, customer preference, structured handoff summaries | Part 13 |
| 5.3 | Implement error propagation | Structured error context, cascade prevention, partial-result handling | Part 13 |
| 5.4 | Apply large codebase strategies | Scratchpad files, /compact, subagent delegation, checkpointing | Part 12 |
| 5.5 | Design human review & confidence calibration | Stratified sampling, field-level confidence, accuracy by document type | Part 13 |
| 5.6 | Preserve information provenance | Claim-source mappings, conflict annotation, citation accuracy | Part 20 |
Sample Exam Questions
The following 4 questions illustrate the format and difficulty of the CCA-F exam. Each is scenario-anchored and tests integrated reasoning across domains. For the complete 12-question practice set with explanations, see the full study guide.
Q: Production data shows that in 12% of cases, your agent skips get_customer entirely and calls lookup_order using only the customer's stated name, occasionally leading to misidentified accounts and incorrect refunds. What change would most effectively address this reliability issue?
A) Add a programmatic prerequisite that blocks lookup_order and process_refund calls until get_customer has returned a verified customer ID.
B) Enhance the system prompt to state that customer verification via get_customer is mandatory before any order operations.
C) Add few-shot examples showing the agent always calling get_customer first.
D) Implement a routing classifier that pre-selects appropriate tools based on detected keywords.
Answer: A — When a specific tool sequence is required for critical business logic, programmatic enforcement provides deterministic guarantees that prompt-based approaches cannot.
Q: Production logs show the agent frequently calls get_customer when users ask about orders (e.g., "check my order #12345"), instead of calling lookup_order. Both tools have minimal descriptions. What's the most effective first step?
A) Add few-shot examples demonstrating correct tool selection patterns.
B) Expand each tool's description to include input formats, example queries, edge cases, and boundaries explaining when to use it versus similar tools.
C) Implement a routing layer that parses user input and pre-selects the appropriate tool.
D) Consolidate both tools into a single lookup_entity tool.
Answer: B — Tool descriptions are the primary mechanism LLMs use for tool selection. When descriptions are minimal, models lack the context to differentiate between similar tools.
Q: Your codebase has distinct areas with different coding conventions: React components use functional style with hooks, API handlers use async/await with specific error handling, and test files are spread throughout. You want all tests to follow the same conventions regardless of location. What's the most maintainable approach?
A) Create rule files in .claude/rules/ with YAML frontmatter specifying glob patterns to conditionally apply conventions based on file paths.
B) Consolidate all conventions in the root CLAUDE.md under headers for each area.
C) Create skills in .claude/skills/ for each code type with conventions in their SKILL.md files.
D) Place a separate CLAUDE.md file in each subdirectory containing area-specific rules.
Answer: A — Path-specific rules in .claude/rules/ with YAML frontmatter globs (e.g., **/*.test.tsx) are the correct mechanism for cross-directory file-type conventions.
Q: Your agent achieves 55% first-contact resolution, well below the 80% target. Logs show it escalates straightforward cases (standard damage replacements with photo evidence) while attempting complex situations requiring policy exceptions. What's the most effective improvement?
A) Add explicit escalation criteria to your system prompt with few-shot examples demonstrating when to escalate versus resolve autonomously.
B) Have the agent self-report a confidence score and automatically route below-threshold requests to humans.
C) Deploy a separate classifier model trained on historical tickets to predict escalation needs.
D) Implement sentiment analysis to detect customer frustration and automatically escalate.
Answer: A — Adding explicit escalation criteria with few-shot examples directly addresses unclear decision boundaries. This is the proportionate first response before adding infrastructure.
Preparation Strategy
- Building with the Claude API — API fundamentals, messages endpoint, tool_use, streaming
- Introduction to Model Context Protocol — MCP architecture, server/client model, resource types
- Claude Code in Action — CLAUDE.md, commands, skills, CI/CD integration
- Claude 101 — Foundational prompting, model capabilities, safety principles
Hands-On Exercises
The CCA-F rewards practical experience over theory. Prioritise these hands-on activities:
- Build a multi-agent system with Agent SDK — coordinator + 2 subagents with scoped
allowedTools - Configure a Claude Code project with CLAUDE.md, custom commands, and path-specific rules
- Create a custom MCP server with proper error handling (
isError, structured categories) - Implement structured extraction using
tool_usewith JSON schemas and validation retries - Set up a CI pipeline using
claude -pwith--output-format jsonfor automated PR reviews - Design an escalation flow with explicit criteria (not sentiment-based) and customer preference honouring
Key Tradeoffs to Understand
- Single agent vs multi-agent: When does orchestration complexity justify the reliability/cost overhead?
- tool_use for structured output vs raw JSON: Schema enforcement guarantees vs flexibility and cost
- Progressive summarisation vs full context: Token savings vs information loss risks ("lost in the middle")
- Forced tool_choice vs auto: Deterministic output vs natural conversation flow
- Hooks for enforcement vs prompt instructions: Hard policy gates vs flexible guidance
- Batch API vs real-time: 50% cost savings with 24h SLA vs immediate response needs
- Explicit escalation criteria vs sentiment detection: Precision and auditability vs broader coverage
Tips & Resources
Study Resources
| Resource | Type | Covers |
|---|---|---|
| Anthropic Documentation | Official docs | API reference, tool_use, Messages API, Batch API |
| Agent SDK Documentation | Official docs | Agent loops, multi-agent, hooks, Task tool |
| Claude Code Documentation | Official docs | CLAUDE.md, commands, skills, CI/CD, MCP config |
| MCP Specification | Protocol spec | Server/client model, tools, resources, prompts |
| Anthropic Skilljar Courses | Online courses | All 4 prerequisite courses + practice exams |
| Anthropic Cookbook | Code examples | Practical patterns for API, agents, tool_use |
| CCA Exam Study Guide | Study guide | 30 task statements, 12 sample questions, 4 exercises, appendix |
| AI App Dev Series (Parts 1–23) | Article series | Deep coverage of all 5 domains with code examples |
Common Pitfalls
- Confusing stop_reason values:
"tool_use"means the model wants to call a tool (you must execute it and return results)."end_turn"means the model is done. Mixing these up breaks agentic loops. - Over-engineering with multi-agent when single-agent suffices: Not every problem needs a coordinator + subagents. The exam tests your judgment on when orchestration complexity is warranted.
- Using sentiment analysis for escalation: The exam strongly favours explicit, auditable escalation criteria (e.g., "customer says 'talk to a human'") over fuzzy sentiment detection. Always honour stated customer preference.
- Ignoring isError in MCP responses: When an MCP tool returns
isError: true, the agent must handle it gracefully — not retry blindly or surface raw errors to users. - Forgetting Batch API constraints: Message Batches save 50% cost but have a 24-hour processing window. Don't recommend Batch for real-time use cases.
- Progressive summarisation without safeguards: Summarising context to save tokens can lose critical case facts. The exam tests awareness of "lost in the middle" and when to preserve full context.
- Confusing .mcp.json scope:
.mcp.jsonin project root is project-level (shared via git).~/.claude.jsonis user-level (personal). Environment variable expansion uses${VAR}syntax.
Syllabus Progress Tracker
CCA-F Syllabus Progress Tracker
Track your preparation topic-by-topic. Select your status for each topic — your progress is auto-saved and can be exported as Word, Excel, or PDF.