MCP (Model Context Protocol), CLAUDE.md, and Skills are the customization and extension mechanisms of Claude Code. These are very practical exam topics — you're often asked "how to do X" concretely.
Objective: understand the 3 primitives of the Model Context Protocol and what they allow to expose to Claude.
Actions Claude can execute (API calls, functions)
Data Claude can read (files, DB, feeds)
Reusable templates the user can invoke
Deepen the 3 primitives with concrete examples:
Explore the MCP config in real conditions:
.claude/settings.json or ~/.claude/settings.json. Structure: {"mcpServers": {"name": {"command": "...", "args": [...]}}}.
"MCP is a proprietary Anthropic protocol" → FALSE. MCP (Model Context Protocol) is an open protocol, not proprietary. It allows any external server to expose capabilities to Claude in a standardized way.
Objective: create an effective CLAUDE.md and understand its scope. CLAUDE.md is automatically injected into every conversation — it is the most important configuration file in Claude Code.
Ask Claude to inspect existing CLAUDE.md files and explain the hierarchy:
~/.claude/CLAUDE.md (global, all sessions), project/CLAUDE.md (this project), project/src/CLAUDE.md (this subdirectory). All loaded and concatenated — no replacement.
Create a CLAUDE.md for the training project:
Project context, code conventions, commit rules, what to avoid (anti-patterns), tools to use. Do NOT put in CLAUDE.md: code patterns derivable from the code itself, git history, temporary debug solutions.
Objective: create a Skill, understand its structure, and invoke it with /skill-name. Skills are packaged instructions invocable via a slash command.
Start by understanding the structure of a skill:
.claude/agents/ (.md files). Frontmatter with name, description. Invoked with /skill-name. Difference: CLAUDE.md = always active, Skill = activated on demand via /.
Create a simple skill:
/code-review, it loads the skill instructions and runs a structured code review on the project. The slash command triggers the skill.
Distinguish a standard Skill from a subagent Skill:
"A Skill replaces the CLAUDE.md instructions when invoked" → FALSE. CLAUDE.md instructions remain permanently active. The Skill is added to the existing context — it does not replace it.
Objective: consolidate the 3 configuration mechanisms and know how to choose the right tool for the need.
Decision exercise:
MCP = access to external systems (tools/resources Claude doesn't have natively). CLAUDE.md = context/rules always active in this project. Skills = packaged procedures invocable on demand via /.