Decision under pressure

Should an AI capability be an Agent Skill, an MCP server, or both?

Default to a Skill for reusable procedure and bundled context. Add MCP for live or dynamic tools and resources; combine them when the Skill should orchestrate an MCP-backed capability.
4claims
5evidence
5sources
2tensions
1unknown
Current position

Current position

Choose by capability boundary, not by format popularity.

Reasoning · decision to evidence
supports

Use a Skill → Current position

Use an Agent Skill for reusable instructions, examples, references, assets, and scripts that should load only when a workflow is relevant.

Reusable procedure and bundled context fit the Skill boundary.

supports

Use MCP → Current position

Use MCP when a host must discover and call live tools, read dynamic resources, or use prompts across a local or remote client-server boundary.

Live data and actions fit a protocol boundary.

supports

Use both → Current position

Pair them when a portable Skill should teach the workflow while MCP supplies live data or actions.

The formats compose when a workflow needs both procedural knowledge and runtime capability.

missing

Missing evidence → Current position

No committed cross-client benchmark yet measures whether one non-trivial Skill and one MCP integration behave consistently across major coding agents.

A shared behavioral suite is needed before claiming equivalent portability in practice.

supports

Filesystem contract → Use a Skill

The Agent Skills specification defines a SKILL.md package with optional scripts, references, assets, and progressive disclosure.

The package format directly represents reusable procedure and on-demand supporting material.

Agent Skills · Section: Directory structure · verified
A skill is a directory containing, at minimum, a SKILL.md file:
Open source region ↗
supports

Client adoption → Use a Skill

GitHub documents the open Agent Skills standard across Copilot cloud agent, code review, CLI, app, and agent modes in multiple IDEs.

A documented open format has a credible portability path beyond one chat session.

GitHub Docs · Section: About agent skills · verified
Agent skills are folders of instructions, scripts, and resources that Copilot can load when relevant to improve its performance in specialized tasks.
Open source region ↗
contradicts

Distribution still moving → Use a Skill

The current well-known discovery proposal is still a draft because there is no standard way to ask what skills a domain publishes.

Portable authoring is further along than stable remote discovery and distribution.

Cloudflare · Section: Problem · verified
There is no standard way to answer: "What skills does example.com publish?"
Open source region ↗
supports

Protocol boundary → Use MCP

The current MCP architecture lets servers expose tools, resources, and prompts to clients.

MCP's primitives and transports are designed for live capability exchange.

Model Context Protocol · Section: Data layer · verified
Enables servers to provide core functionality including tools for AI actions, resources for context data, and prompts for interaction templates from and to the client
Open source region ↗
supports

Protocol boundary → Use both

The current MCP architecture lets servers expose tools, resources, and prompts to clients.

A Skill can describe when and how to use tools that an MCP server exposes.

Model Context Protocol · Section: Data layer · verified
Enables servers to provide core functionality including tools for AI actions, resources for context data, and prompts for interaction templates from and to the client
Open source region ↗
contradicts

Runtime counterpressure → Use MCP

MCP's official security guidance covers authorization-specific attack classes and mitigations that a remote capability must operate correctly.

A live remote integration adds authorization and operational risk, so MCP should not be the default for static guidance.

Model Context Protocol · Section: Token Passthrough → Risks · verified
Token passthrough is explicitly forbidden in the authorization specification as it introduces a number of security risks, that include:
Open source region ↗
qualifies

Qualification → Use a Skill

A Skill is not automatically static or safe: it may include executable scripts, and support for pre-approved tools varies by agent implementation.

Choosing a Skill changes the packaging boundary; it does not remove the need to review code and permissions.