đź§  Your Agent Has All the Tools. Why Is It Still Making Bad Decisions?

AI MCP
On this page

You connected your agent to everything. Why is it still making bad decisions?

This question keeps coming up in conversations with teams building on MCP. They’ve wired up databases, APIs, file systems. The agent can do things. But it doesn’t know how to approach them.

The answer isn’t more tools. It’s a different primitive entirely.

The debate that missed the point

When Agent Skills started gaining traction, some corners of tech Twitter declared “Skills killed MCP.”

This framing is wrong.

MCP and Agent Skills operate at different layers. They solve different problems. Angie Jones from Block put it cleanly: “Skills describe the workflow. MCP provides the runner.”

You wouldn’t say GitHub Actions killed Bash. Actions changed how you express workflows. Bash still executes the commands.

Same relationship here.

The distinction: capabilities vs procedures

MCP is the capabilities layer. It defines what agents can do: tools they can call, data they can access, operations they can perform. MCP connects.

Agent Skills is the procedures layer. It defines how agents should approach things: workflows, steps, domain expertise, constraints. Skills teach.

Anthropic uses a hardware store analogy: “MCP is like having access to the aisles. Skills are like an employee’s expertise.”

Access to the plumbing aisle doesn’t mean you know how to fix a leak. The tools are necessary but not sufficient.

The full stack

Here’s how these primitives fit together:

LayerPrimitiveWhat it provides
CapabilitiesMCP ToolsOperations the agent can perform
DataMCP ResourcesContext the agent can read
TriggersMCP Prompts / CommandsExplicit user invocations
ConstraintsRulesInvariants that always apply
ProceduresAgent SkillsWorkflows, expertise, step-by-step guidance
ExecutionSubagentsParallel workstreams with isolated context

Note: This 6-layer model is synthesized from multiple sources. The core 2-layer distinction (Capabilities vs Procedures) is well-sourced from Anthropic and Block. The expansion helps show where each primitive fits.

Progressive disclosure: both can implement lazy loading

Both primitives can avoid dumping everything into context upfront. But right now, Skills have an edge here.

Agent Skills (per the spec):

  • Startup: 1024-character description per skill (roughly 100 tokens)
  • On activation: Full SKILL.md content loads (recommended under 5000 tokens)
  • On reference: Supporting files in scripts/, references/, assets/ load as needed

Progressive disclosure is baked into the spec. Almost every Skills implementation already works this way.

MCP:

MCP doesn’t mandate progressive disclosure at the protocol level. Some hosts have implemented it anyway. Claude Code’s Tool Search, for example, loads only tool names and short descriptions at startup, then fetches full schemas on demand (85-91% token reduction in some cases).

But many MCP hosts still load all tool schemas upfront. Expect this to change as context efficiency becomes a bigger concern.

Same pattern, different adoption curves. Skills got it right from the start. MCP hosts are catching up.

When to use each

ScenarioUse
Connect to an external systemMCP
Teach a workflow or methodologySkill
Expose data the user controlsMCP Resource
Define constraints that always applyRules
Explicit user-triggered actionCommand / MCP Prompt
Parallel isolated workSubagent

The heuristic is simple:

  • Need to connect to something? MCP.
  • Need to teach the agent how to approach something? Skill.

Patterns: MCP and Skills working together

These examples come from Anthropic’s guide on combining Skills and MCP.

Financial analysis

A “Comparable Company Analysis” Skill defines the methodology: which metrics to pull, compliance standards to follow, output format to use. MCP servers (S&P Capital IQ, Daloopa, Morningstar) provide access to the financial data.

The Skill orchestrates. The MCP servers fetch.

Meeting intelligence

A Notion Meeting Intelligence Skill defines which pages to search, how to structure meeting notes, what to extract. The Notion MCP server handles page retrieval and creation.

The Skill defines “what to do.” MCP handles CRUD.

Multi-server coordination

A Technical Competitive Analysis Skill coordinates across Google Drive (internal research), GitHub (competitor repos), and web search (market data). One Skill, multiple data sources via MCP.

Anthropic’s rule of thumb: “MCP instructions cover how to use the server and its tools correctly. Skill instructions cover how to use them for a given process or in a multiserver workflow.”

Three things to remember

  1. They’re complementary, not competing. MCP provides the runner. Skills describe the workflow. One connects. The other teaches.

  2. Use the right primitive for the job. Connect with MCP. Teach with Skills. Both implement progressive disclosure. Both respect context limits.

  3. Consider shipping them together. If you’re building an MCP server, a companion Skill can teach agents how to use it effectively. The server provides capabilities. The Skill provides expertise.


Further reading


Are you combining MCP and Skills in your agent stack? I’d love to hear what patterns are working for you. Reach out on LinkedIn.