Claude の拡張機能として「Agent Skills」と「MCP(Model Context Protocol)」の両方が存在します。名前から用途を想像しにくいですが、解決する問題が根本的に異なります。
MCP とは:ツール接続
MCP は外部サービスやAPIに Claude を接続するためのプロトコルです。MCPコネクタを使うと、Messages API から直接リモートMCPサーバーに接続できます。
response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=1000,
messages=[{"role": "user", "content": "利用可能なツールを教えて"}],
mcp_servers=[{
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse",
"name": "example-mcp",
"authorization_token": "YOUR_TOKEN",
}],
tools=[{"type": "mcp_toolset", "mcp_server_name": "example-mcp"}],
betas=["mcp-client-2025-11-20"],
)
MCP が解決するのは「Claude に外部の何かにアクセスさせる」問題です。サーバーは HTTP 経由で公開されている必要があり(ローカルの STDIO サーバーは不可)、現在はツール呼び出しのみサポートされています。特定のツールだけを使わせたい場合は default_config: {"enabled": false} で全ツールを無効化してから、必要なものだけ configs で有効化する許可リスト方式が使えます。
Agent Skills とは:知識・ワークフローの付与
Skills はファイルシステムベースの「モジュール型専門知識パック」です。MCP のようにリアルタイムにデータを取得するのではなく、「このタスクをどう進めるか」という手順・ベストプラクティス・参照資料を Claude に提供します。
Skills は3階層の progressive disclosure 設計になっています。
| レベル | タイミング | 内容 |
|---|---|---|
| メタデータ(YAML フロントマター) | 常にロード(約100トークン) | Skill の名前と説明 |
| SKILL.md 本文 | トリガー時にロード(5,000トークン未満) | 手順・ベストプラクティス |
| 追加ファイル・スクリプト | 必要な時だけロード | 参照資料・実行スクリプト |
Claude は起動時にメタデータだけを読み込み、リクエストが該当 Skill の説明と一致するときだけ SKILL.md を読み込みます。コンテキストウィンドウを無駄に消費しない設計です。
カスタム Skills の構造
カスタム Skill は SKILL.md ファイルを中心とするディレクトリです。最低限の構成は次のとおりです。
my-skill/
├── SKILL.md # メイン指示(トリガー時にロード)
├── REFERENCE.md # 詳細リファレンス(参照時にロード)
└── scripts/
└── helper.py # ユーティリティスクリプト(実行時に bash 経由で呼ばれる)
SKILL.md の先頭には YAML フロントマターが必要です。
---
name: my-workflow
description: 〇〇タスクを実行する。ユーザーが〇〇を依頼した場合に使用する。
---
name は小文字・数字・ハイフンのみ(最大64文字)、description はいつ使うべきかも含めて記述します。Claude はこの description を元に「この Skill を使うかどうか」を判断するため、トリガー条件を明確に書くことが重要です。
事前構築済み Skills とカスタム Skills
Anthropic が提供する事前構築済み Skillsとして PowerPoint(pptx)・Excel(xlsx)・Word(docx)・PDF(pdf)があります。API から使う場合は container パラメータに skill_id を指定し、ベータヘッダー code-execution-2025-08-25 と skills-2025-10-02 を設定します。
カスタム Skills は独自のドメイン知識や組織固有のワークフローをパッケージ化できます。API 経由でアップロードしたカスタム Skills はワークスペース全体で共有されます。Claude Code の場合はファイルシステムに配置するだけで自動検出されます。
Claude はリクエストの内容から「この Skill を使うべきか」を自己判断します。明示的に指定しなくても自動で適用されます。
2つの使い分け
| 目的 | 使うもの |
|---|---|
| 外部 API・データベース・サービスへのアクセス | MCP |
| 特定ドメインの知識・手順の注入 | Agent Skills |
| 社内の独自ワークフローを Claude に覚えさせる | カスタム Agent Skills |
| リアルタイムのデータ取得 | MCP(または web_search などのサーバーツール) |
| ドキュメント生成(PPTX・XLSX など)の専門知識 | 事前構築済み Agent Skills |
まとめ
- MCP:外部サービスへのツール接続。リアルタイムデータアクセスが目的
- Skills:知識・ワークフロー・手順の付与。一度作れば自動適用される
- Skills の progressive disclosure 設計により、多数の Skill をインストールしてもコンテキストへの影響が最小限に抑えられる
- カスタム Skill の
descriptionに「いつ使うか」を明記することが自動発見の鍵 - Claude が「いつ使うか」を自己判断する点が Skills の大きな特徴