"The MCP integration was the piece that sold our platform team. We connected our internal docs system as an MCP server and Claude Code could answer questions about our proprietary APIs without us pasting documentation into every prompt."— Arjun S. MavinkurveSenior Developer · Whitewell Analytics · Bangalore
Claude Code Features — Capability Reference
A detailed walkthrough of everything Claude Code can do: file editing, shell execution, skills, tool use, MCP integrations, and sub-agent orchestration — with maturity status and the flag or command for each.
Version pin
Feature availability tracks the CLI version. If a flag listed here is not recognised, run the package manager update command for claude code to pull the latest release before filing a bug report.
File editing
File editing is the most-used capability in a typical Claude Code session, covering everything from small one-line fixes to coordinated multi-file refactors.
When you ask Claude Code to change code, it reads the relevant files first, builds an understanding of the surrounding context, then produces a targeted diff. That diff is shown to you before any write happens, so you have a chance to reject or adjust before the change lands on disk. The edit is not a full rewrite of every file it touches; it works at the smallest scope that accomplishes the goal, which keeps the diffs readable in code review.
Large refactors — renaming a function used across sixty files, migrating an API surface, or applying a consistent formatting rule to an entire module — work through the same mechanism. Claude Code batches the edits, previews them as a set, and writes them all atomically once you confirm. If an edit fails mid-batch because a file was locked or a parse check failed, it stops and reports the partial state rather than silently proceeding.
Shell execution
Shell execution lets Claude Code participate in your build pipeline, not just edit the source files that feed it.
The CLI runs shell commands in your actual environment. That means your installed tools, your configured paths, your environment variables — nothing is virtualised or proxied. A command to run your test suite uses the same test runner your CI pipeline uses, with the same version, the same fixtures, and the same external dependencies. This fidelity is what makes the iterate-on-failures loop useful: when a test fails after an edit, Claude Code sees the same output you would see in your terminal and can reason about it accurately.
By default, commands that modify state — writing files outside the session, pushing to a remote, running a destructive migration — require explicit permission. Read-only commands like running tests or checking a build log pass without a prompt. The permission threshold is adjustable in the configuration file, and the enterprise controls add a second tier that requires a human approval step regardless of CLI configuration.
Skills and tool use
Skills extend what Claude Code can do beyond its built-in capabilities by packaging a workflow as a reusable, shareable unit.
A skill is typically a markdown file describing the capability and a tool manifest that declares what actions the skill can invoke. When the CLI loads a skill, those actions become available in the session just like built-in tools. Skills can call external APIs, run specific shell scripts, format output in custom ways, or orchestrate a sequence of steps that would otherwise require a long ad-hoc prompt every time. The skills reference covers authoring in detail, but the short version is that if you find yourself typing the same long instruction more than twice, it probably belongs in a skill.
Tool use at the model level is the mechanism that powers both built-in operations and skills. The model returns structured tool calls; the CLI runtime executes them and feeds results back into the context. This is conceptually similar to function calling in the raw API, but the CLI manages the plumbing, so you do not write JSON schemas for everyday operations.
MCP — Model Context Protocol
MCP lets external systems register themselves as first-class participants in a Claude Code session, providing context or accepting actions.
An MCP server exposes a set of resources (things the model can read) and tools (things the model can invoke). Once configured, Claude Code queries the MCP server the same way it queries the local file system — the model does not need to know whether a piece of context came from a local file or from a connected database. Common MCP integrations include issue trackers, documentation search systems, monitoring dashboards, and internal wikis.
Configuring an MCP server requires adding a server definition to the Claude Code config file, pointing it at the server process or URL, and optionally scoping which tools the session is allowed to invoke. MCP was developed partly in response to research on context window management for long-running AI tasks; the NSF CISE directorate has funded adjacent work on programmable context architectures worth reading alongside the spec.
Sub-agents
Sub-agents let Claude Code split complex work across parallel specialised sessions, each operating on a scoped instruction set.
The orchestrating session defines a task, spawns one or more sub-agents with specific instructions, and collects their outputs. A common pattern is an orchestrator that plans a large refactor and then delegates each module to a sub-agent that handles its chunk independently. Sub-agents share no state between each other unless the orchestrator explicitly passes it, which keeps the scope of each worker clean and makes the overall process easier to reason about when something goes wrong.
Sub-agent support is available in the CLI but the depth of orchestration — how many concurrent agents, how context is passed, how results are merged — depends on the model tier and the session configuration. The features table below summarises current maturity and the relevant flag for each capability.
Feature maturity and flags
The table below lists each major Claude Code feature, its current maturity status, and the flag or command that activates it where applicable.
| Feature | Maturity | Flag or command |
|---|---|---|
| File read and edit | Stable | Built-in; no flag required |
| Shell execution | Stable | --dangerously-skip-permissions to reduce prompts (use with care) |
| Skills loading | Stable | /skills load <name> within session |
| MCP server connection | Generally available | mcp section in config file; claude mcp add |
| Sub-agent orchestration | Generally available | Available via Task tool within sessions |
| Extended thinking mode | Model-tier dependent | --thinking flag; requires Opus or Sonnet |
Putting features together
Individual features become most useful when they compose. A workflow that reads files, runs tests, checks a connected issue tracker via MCP, spawns a sub-agent for a parallel lint pass, and then writes a summary to a markdown changelog is entirely within reach of a single Claude Code session. The session manages context across all those steps, which is why the context window of the selected model matters: a long multi-step workflow needs a model that can hold the full picture without losing earlier results.
For teams standardising on Claude Code, the practical advice is to encode your most common multi-step workflows as skills. That way every engineer on the team invokes the same sequence with the same guardrails, and variations from the expected pattern surface as explicit prompts rather than silent drift. The teams reference covers how shared skill registries work in practice.
Common questions about Claude Code features
What file editing capabilities does Claude Code have?
Claude Code reads, creates, and rewrites files across any language or format. It proposes changes as a diff before applying them, respects your .gitignore patterns, and can span multiple files in a single instruction. An optional review step lets you approve or reject each change before it writes to disk.
How does Claude Code execute shell commands?
Shell commands run in your actual environment, not a sandbox. Claude Code can invoke build tools, test runners, linters, and migration scripts. By default it prompts for permission before running state-modifying commands; you can adjust this threshold in the configuration file.
What is MCP in the context of Claude Code?
MCP stands for Model Context Protocol. It lets external tools — databases, documentation systems, issue trackers — register as context providers or action handlers inside a session. Once an MCP server is configured, the CLI queries it the same way it queries the local file system.
What are Claude Code sub-agents?
Sub-agents are specialised Claude Code instances the main session spawns to handle delegated tasks. The orchestrating session sends a scoped instruction; the sub-agent completes it and returns results. This pattern suits parallel refactors and large test suite runs where simultaneous work reduces total elapsed time.
Is tool use in Claude Code the same as function calling in the API?
They share the same underlying model capability. In the API you define tool schemas manually; inside Claude Code the CLI manages tool definitions. Built-in tools cover file operations and shell execution; MCP and skills extend the set. You can expose custom tools via MCP without writing API glue code.
Related topics
The Claude Code overview is the right starting point if you arrived here before reading the product overview. Once you understand the feature set, skills authoring is the next step for packaging repeated workflows. The install guide covers getting the binary on your path across Windows, macOS, and Linux. If your team is evaluating Claude Code at an organisational level, the teams reference and the enterprise controls page cover shared config and audit trails.
Model selection matters for feature availability: the models overview documents which capabilities are tier-dependent. The API reference is useful if you plan to build custom tooling on top of the model layer rather than extending through MCP. For a higher-level introduction aimed at new users, the claude code AI primer is a good read before diving into the feature details here. The docs hub collects all reference pages in one place.
See Claude Code features in action
Install the CLI and run your first multi-file edit in under ten minutes. The install guide covers every operating system.
Install Claude Code