day2-mcp-and-context-sync について
Claude Code の利用者向けに、MCP の概念学習と Context Sync スキルの作成を案内する教材スキルです。段階的な演習と、説明・実行を分ける厳格な2ターン形式が特徴です。
主な機能
- 01段階的なMCP学習
- 02Context Syncスキルの骨格作成
- 03Slack、Notion、Linear、Googleの接続演習
- 04STUBの段階的な補完
- 05説明と実行を分ける2段階方式
活用シーン
- 01MCPサーバーとツールの接続方法の学習
- 02接続済みサービスからコンテキストを集めるスキルの作成
- 03Connector、コマンドライン、Pluginによる接続の練習
MCP 対応
MCPの概念を解説し、Connector、`claude mcp add`、Pluginを使ってサービスをClaude Codeに接続する手順を案内します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ai-native-camp/ camp-2 --skill day2-mcp-and-context-syncインストール後、Claude Code で/day2-mcp-and-context-syncを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/block0-concept.mdblock1-add-server.mdblock10-finalize.mdblock2-mcp-command.mdblock3-popular-servers.mdblock4-plugin-mcp.mdblock5-template-creation.mdblock6-connector-slack.mdblock7-mcp-add-notion.mdblock8-plugin-linear.mdblock9-skill-google.mdscripts/mcp_servers.pytemplates/context-sync.md詳細
Day 2:MCP とコンテキスト同期
このスキルが呼び出されたら、以下のSTOP PROTOCOLに必ず従います。
用語の整理
このスキルで使用する主要な用語です。
| 用語 | 説明 |
|---|---|
| MCP | Model Context Protocol。AI と外部ツールを接続するオープン標準です。USB-C のように、さまざまなサービスをひとつの規格で接続します |
| Host / Client / Server | MCP の3要素です。Host=AI アプリ(Claude Code)、Client=接続マネージャー、Server=外部ツールの提供者 |
| Transport | MCP サーバーの接続方式です。HTTP(クラウドサービス)と stdio(ローカル実行)の2種類があります |
| Plugin | Skill + MCP + Hook + Agent をまとめたパッケージです。1行でインストールするだけで、MCP サーバーまで自動的に接続されます |
| subagent | Claude が別の Claude を呼び出して作業を依頼することです。複数の作業を同時に処理するときに使用します |
| Explore エージェント | プロジェクトのフォルダー構造を把握する専門の subagent です。読み取り専用です |
| API | サービスが提供するデータの窓口です。MCP がない場合に、コードを直接書いてデータを取得する方法です |
| スキル(Skill) | Claude Code に特定の作業方法を教えるドキュメントです。Day 1 Block 3-2 で体験したものです |
| STUB | 後から埋める空欄です。「ここに後で内容が入ります」という表示です。Part B ではブロックごとにひとつずつ埋めていきます |
| スケルトン | 空欄(STUB)だけがある骨組みです。建物で言えば、鉄骨構造だけを組み立てた状態です |
| frontmatter | ファイルの先頭に --- で囲まれた情報領域です。スキルの名前、説明、トリガーなどを記述する場所です |
| YAML / JSON | データを整理する形式です。Excel で表にデータを整理するように、テキストで整理する方法です |
| CLI | Command Line Interface。ターミナルにコマンドを直接入力する方式です |
STOP PROTOCOL — 絶対に違反禁止
このプロトコルは、このスキルの最優先ルールです。 以下のルールに違反すると、授業が台無しになります。
各ブロックは必ず2ターンに分けて進めます
┌─ Phase A (첫 번째 턴) ──────────────────────────────┐
│ 1. references/에서 해당 블록 파일의 EXPLAIN 섹션을 읽는다 │
│ 2. 기능을 설명한다 │
│ 3. references/에서 해당 블록 파일의 EXECUTE 섹션을 읽는다 │
│ 4. "지금 직접 실행해보세요"라고 안내한다 │
│ 5. ⛔ 여기서 반드시 STOP. 턴을 종료한다. │
│ │
│ ❌ 절대 하지 않는 것: 퀴즈 출제, QUIZ 섹션 읽기 │
│ ❌ 절대 하지 않는 것: AskUserQuestion 호출 (Block 6,7,8,9,10 제외)│
│ ❌ 절대 하지 않는 것: "실행해봤나요?" 질문 │
└──────────────────────────────────────────────────────────┘
⬇️ 사용자가 돌아와서 "했어", "완료", "다음" 등을 입력한다
┌─ Phase B (두 번째 턴) ──────────────────────────────┐
│ 1. references/에서 해당 블록 파일의 QUIZ 섹션을 읽는다 │
│ 2. AskUserQuestion으로 퀴즈를 출제한다 │
│ 3. 정답/오답 피드백을 준다 │
│ 4. 다음 블록으로 이동할지 AskUserQuestion으로 묻는다 │
│ 5. ⛔ 다음 블록을 시작하면 다시 Phase A부터. │
└──────────────────────────────────────────────────────────┘
主な禁止事項(絶対に違反禁止)
- Phase A で AskUserQuestion を呼び出さないでください(Block 6、7、8、9、10 を除く) — この5つのブロックではユーザーの選択・確認が必須のため、例外です
- Phase A でクイズを出さないでください — QUIZ セクションは Phase B でのみ読みます
- Phase A で「実行してみましたか?」と尋ねないでください — ユーザーが先に話すまで待ちます
- 1ターンで EXPLAIN と QUIZ を同時に行わないでください — 必ず2ターンに分けます
公式ドキュメント URL の出力(絶対に省略禁止)
すべてのブロックで Phase A を開始する際、該当する reference ファイルの先頭にある > 공식 문서: の URL を必ずそのまま出力します。
📖 공식 문서: [URL]
- reference ファイルに URL が複数ある場合は、すべて出力します
- URL を要約したり省略したりしないでください
- 参加者が直接クリックして公式ドキュメントを確認できるようにします
Phase A の終了時に必須の文言
Phase A の最後に、必ず以下の形式の文言を出力して停止します。
---
👆 위 내용을 직접 실행해보세요.
실행이 끝나면 "완료" 또는 "다음"이라고 입력해주세요.
この文言の後は、ツールの呼び出し(AskUserQuestion を含む)も追加テキストの出力も行いません。
所要時間
| Part | ブロック | 予想時間 |
|---|---|---|
| Part A:MCP の詳細解説 | Block 0~4 | ~60分 |
| Part B:Context Sync スキルの作成 | Block 5~10 | ~110分 |
| 合計 | Block 0~10 | ~170分 |
主な戦略
Part A:MCP の概念から Plugin まで体系的に学ぶ
MCP の概念(Block 0)から始め、サーバーの追加(Block 1)、ツールの探索(Block 2)、人気サーバーのインストール(Block 3)、Plugin による拡張(Block 4)の順に進めます。
Part B:4つのツール × 4つの接続方法 — 段階的なビルド
以下の方法で進めます。
- Block 5 で
templates/context-sync.mdをもとに、4つのソース STUB を含むスケルトンのスキルファイルを作成します - Block 6~9 では、各ブロックで1つのツールを異なる接続方法で接続し、該当するソース STUB に実際の内容を入力します
- Block 10 で実行フローと出力形式を完成させ、スキル全体を実行します
重要:4つのツールをまとめて接続するのではなく、各ブロックで異なる接続方法を実践します。
Part B のブロック構成
| Block | 接続方法 | ツール | 難易度 | 時間 |
|---|---|---|---|---|
| 5 | — | 全体 | — | ~12min |
| 6 | claude.ai Connector | Slack | ★☆☆☆ | ~15min |
| 7 | claude mcp add | Notion | ★★☆☆ | ~18min |
| 8 | Official Plugin (/plugin) | Linear | ★★★☆ | ~15min |
| 9 | コミュニティ Plugin(構造分析) | Google Calendar/Gmail | ★★★★ | ~20min |
| 10 | —(並列収集 + 出力 + 仕上げ) | 全体 | — | ~20min |
段階的なビルド — テンプレートを埋める順序
Block 5: [STUB] [STUB] [STUB] [STUB] [STUB흐름] [STUB포맷]
Block 6: [Slack] [STUB] [STUB] [STUB] [STUB흐름] [STUB포맷]
Block 7: [Slack] [Notion] [STUB] [STUB] [STUB흐름] [STUB포맷]
Block 8: [Slack] [Notion] [Linear] [STUB] [STUB흐름] [STUB포맷]
Block 9: [Slack] [Notion] [Linear] [Google] [STUB흐름] [STUB포맷]
Block 10: [Slack] [Notion] [Linear] [Google] [완성흐름] [완성포맷] → 실행!
ブロックとソースの対応関係
| Block | 入力するソース | 接続方法 | スキルファイルの変更箇所 |
|---|---|---|---|
| 5 | —(骨組みの作成) | — | スケルトン全体を作成 |
| 6 | ソース 1:Slack | Connector | ソース 1 の STUB → 実際の内容 |
| 7 | ソース 2:Notion | claude mcp add | ソース 2 の STUB → 実際の内容 |
| 8 | ソース 3:Linear | /plugin install | ソース 3 の STUB → 実際の内容 |
| 9 | ソース 4:Google | コミュニティ Plugin | ソース 4 の STUB → 実際の内容 |
| 10 | —(完成 + 実行) | — | 実行フロー + 出力形式を完成 |
ブロック固有のルール
Part A(Block 0~4)
- Block 4 [BONUS]:時間が余った場合にのみ進めます
- Block 3 の完了後、Part A のまとめを案内 → Part B への移行を案内
- Part A で学んだ MCP の知識は、Part B のツール接続(Block 7)で直接活用します
パート B(ブロック 5〜10)
- ブロック 5(スケルトン生成):フェーズ A では Context Sync の概念と 4 つの接続方法を紹介し、Explore でプロジェクトを探索して、
templates/context-sync.mdに基づいてスケルトンを生成します → 停止。フェーズ B ではクイズを行います。 - ブロック 6(Connector → Slack):フェーズ A では Connector の概念を説明し、Slack Connector の接続方法を案内して、テストを実施し、スキルソース 1 を入力します → 停止。フェーズ B ではクイズを行います。
- ブロック 7(mcp add → Notion):フェーズ A では
claude mcp addを説明し、AskUserQuestion で Notion の利用状況を確認して、MCP サーバーを登録し、テストを実施して、スキルソース 2 を入力します → 停止。フェーズ B ではクイズを行います。 - ブロック 8(Plugin → Linear):フェーズ A では Plugin の概念を説明し、
/plugin install linearを実行して、MCP が自動登録されたことを確認し、テストを実施して、スキルソース 3 を入力します → 停止。フェーズ B ではクイズを行います。 - ブロック 9(コミュニティ Plugin → Google):フェーズ A では Plugin の構造を分析し、AskUserQuestion で Calendar/Gmail を選択して、Explore で Plugin の構造を探索し、インストールして、スキルソース 4 を入力します → 停止。フェーズ B ではクイズを行います。
- ブロック 10(並列収集+出力+仕上げ):フェーズ A では AskUserQuestion で出力形式を選択し、実行フロー/出力形式を完成させ、4 つのソースを並列収集して、結果を確認します → 停止。フェーズ B では総合クイズと仕上げを行います。
AskUserQuestion 例外ブロック
| ブロック | 理由 |
|---|---|
| ブロック 6 | Slack の利用状況を確認します(会社アカウントに制限がある場合は代替手段を案内します) |
| ブロック 7 | Notion ワークスペースの利用状況を確認します |
| ブロック 8 | Linear の利用状況を確認します(利用していない場合は代替 Plugin を案内します) |
| ブロック 9 | Google Calendar、Gmail、または両方を選択します |
| ブロック 10 | Output format を選択します |
ブロック 6 の例外ルール
ブロック 6 のフェーズ A では、AskUserQuestion を使用します。Slack の利用状況と接続可能かどうかを確認する必要があります。
Slack を使用している場合:
- claude.ai/settings/connectors で Slack Connector を接続します
/mcpで claude.ai セクションへの登録を確認します- 接続テスト後、スキルソース 1 を入力します
Slack を使用していない場合、または会社アカウントに制限がある場合(プラン B):
- 個人の Slack ワークスペース、または AI Native Camp Slack に接続します
- Connector による接続方法そのものを体験することが重要であると案内します
⚠️ セキュリティに関する案内:会社の Slack では、管理者のポリシーによって外部アプリへの接続がブロックされることがあります。その場合は個人のワークスペースを使用してください。
ブロック 7 の例外ルール
ブロック 7 のフェーズ A では、AskUserQuestion を使用します。Notion の利用状況を確認する必要があります。
重要な原則:Claude が設定を代行し、ユーザーは結果を確認します。
Notion を使用している場合:
claude mcp add --transport http notion https://mcp.notion.com/mcpを実行します/mcpで local セクションへの登録を確認します- 接続テスト後、スキルソース 2 を入力します
Notion を使用していない場合(プラン B):
scripts/mcp_servers.pyを使用して、代替の MCP サーバーを検索します- 検索結果から選択し、
claude mcp addで登録します
ブロック 8 の例外ルール
ブロック 8 のフェーズ A では、AskUserQuestion を使用します。Linear の利用状況を確認する必要があります。
Linear を使用している場合:
/plugin install linearを実行します/mcpで local セクションに Linear MCP が自動登録されたことを確認します- 接続テスト後、スキルソース 3 を入力します
Linear を使用していない場合(プラン B):
/pluginコマンドでインストール可能な他の公式 Plugin の一覧を確認します- 使用中のツールの Plugin があれば、それをインストールします
- Plugin がない場合は、ブロック 8 をスキップしてブロック 9 に進むことができます
- 重要:Plugin のインストールから MCP の自動登録までの流れを体験することが目標です
⚠️ Plugin のインストール後、Claude Code の再起動が必要になる場合があります。MCP 接続が表示されない場合は、Claude Code を再起動してください。
ブロック 9 の例外ルール
ブロック 9 のフェーズ A では、AskUserQuestion を使用します。Google Calendar、Gmail、またはその両方を選択する必要があります。
フェーズ A の手順:
references/block9-skill-google.mdの EXPLAIN セクションを読み、Plugin の構造を説明します/plugin marketplace add team-attention/plugins-for-claude-nativesを実行します- AskUserQuestion で Calendar/Gmail/両方/Skip を選択します
- Explore エージェントで Plugin ディレクトリの構造を探索して説明します
- 選択したツールの Plugin をインストールし、テストを実施して、スキルソース 4 を入力します → 停止
ブロック 10 の例外ルール
ブロック 10 のフェーズ A では、AskUserQuestion を使用します。Output format を選択する必要があります。
References ファイル一覧
パート A:MCP の詳細解説
| ブロック | ファイル | トピック |
|---|---|---|
| ブロック 0 | references/block0-concept.md | MCP の概念を理解する |
| ブロック 1 | references/block1-add-server.md | MCP サーバーを追加する |
| ブロック 2 | references/block2-mcp-command.md | /mcp コマンドでツールを探索する |
| ブロック 3 | references/block3-popular-servers.md | 人気の MCP サーバーを探索してインストールする |
| ブロック 4 [BONUS] | references/block4-plugin-mcp.md | /plugin で MCP を拡張する |
Part B:Context Sync スキルの作成(4つのツール × 4つの接続方法)
| ブロック | ファイル | トピック |
|---|---|---|
| Block 5 | references/block5-template-creation.md | Context Sync の概念 + Explore + スケルトンの作成 |
| Block 6 | references/block6-connector-slack.md | Connector で Slack を接続 + スキルソース 1 を記入 |
| Block 7 | references/block7-mcp-add-notion.md | claude mcp add で Notion を接続 + スキルソース 2 を記入 |
| Block 8 | references/block8-plugin-linear.md | /plugin install で Linear を接続 + スキルソース 3 を記入 |
| Block 9 | references/block9-skill-google.md | Plugin の構造を分析 + Google を接続 + スキルソース 4 を記入 |
| Block 10 | references/block10-finalize.md | 並列収集 + Output の選択 + 最終実行 + 仕上げ |
ファイルパスは、この SKILL.md からの相対パスです。 各 reference ファイルは
## EXPLAIN、## EXECUTE、## QUIZのセクションで構成されています。
Templates / Scripts ファイルマップ
| ファイル | 用途 |
|---|---|
templates/context-sync.md | Context Sync スキルの基本テンプレート(Slack、Notion、Gmail、GCal の4種類を含む) |
scripts/mcp_servers.py | GitHub で MCP サーバーを検索 + README.md を解析 + インストールを案内 |
Gmail/Calendar などの収集スクリプトは、Block 7 で Claude がユーザーの選択に合わせて作成します。
進行ルール
- 一度に1つのブロックを進めます
- 「次へ」、「skip」、ブロック番号または名前を指定して移動します
- BONUS ブロック(Block 4)は、時間がある場合のみ進めます
- Part A(Block 0~4)の完了後、自然に Part B(Block 5~10)へ移行します。Part A で学んだ MCP の知識は、Part B のツール接続(Block 6~9)で直接活用します
- Block 5 で作成したスケルトンスキルファイルの STUB を、Block 6~9 で1つずつ埋めます。各ブロックでツールを接続した後、該当するソースセクションを実際の内容に置き換えます
- ユーザーのプロジェクトの
.claude/skills/my-context-sync/ディレクトリにスキルを作成します - Block 6~9 では、それぞれ Connector、mcp add、Plugin、コミュニティ Plugin を通じて異なる接続方法を実践します
- Explore エージェントと subagent の使用が重要なので、積極的に活用します
- Claude Code に関する質問には、claude-code-guide エージェント(組み込みツール)で回答します。回答後、ユーザー自身が実行できるよう手順を追って案内し、質問する際は AskUserQuestion を使用します。組み込みエージェントの回答が不正確だと判断した場合は、公式ドキュメントを
curlでファイルに保存した後、Read ツールで丁寧に読み、正確な情報をもとに回答し直します
開始
スキルを開始する際は、ブロックを選択する前に、まず最新のカリキュラムをインストールします。
Step 1:最新スキルのインストール
以下のコマンドを表示し、Bash で実行します:
npx skills add ai-native-camp/camp-2 --agent claude-code --yes
実行結果を簡潔に案内します(例:「スキルが最新バージョンにインストールされました」)。
Step 2:ブロックの選択
以下のテーブルを表示し、AskUserQuestion でどこから始めるかを尋ねます。
Part A:MCP の詳細解説
| Block | トピック | 内容 |
|---|---|---|
| 0 | MCP の概念 | MCP とは何か、USB-C のたとえ、アーキテクチャ |
| 1 | サーバーの追加 | claude mcp add で実際のサーバーを接続 |
| 2 | /mcp の確認 | 接続済みサーバーとツールの一覧を確認 |
| 3 | 人気のサーバー | 公式リストから便利なサーバーをインストール |
| 4 [BONUS] | Plugin + MCP | /plugin で MCP を含むプラグインをインストール |
Part B:独自の Context Sync スキルを作成(4つのツール × 4つの接続方法)
| Block | 接続方法 | ツール | 内容 |
|---|---|---|---|
| 5 | — | 全体 | Context Sync の概念 + スケルトンの作成 |
| 6 | Connector | Slack | ブラウザーのクリック操作で Slack を接続 |
| 7 | claude mcp add | Notion | CLI コマンドで Notion を接続 |
| 8 | Plugin(/plugin) | Linear | 公式 Plugin で Linear を接続 |
| 9 | コミュニティ Plugin | Plugin の構造を分析 + Google を接続 | |
| 10 | — | 全体 | 並列収集 + Output + 最終実行 |
AskUserQuestion({
"questions": [{
"question": "Day 2: MCP & Context Sync\n\n어디서부터 시작할까요?",
"header": "시작 블록",
"options": [
{"label": "Part A: MCP 개념 (Block 0)", "description": "MCP가 뭔지, 왜 필요한지부터 시작"},
{"label": "Part A: 서버 추가 (Block 1)", "description": "MCP 개념을 알고 있어서 실습부터"},
{"label": "Part B: 스켈레톤 생성 (Block 5)", "description": "MCP를 이미 알고 있어서 스킬 만들기부터"},
{"label": "Part B: Notion 연결 (Block 7)", "description": "Slack은 연결했고, mcp add로 Notion 연결부터"}
],
"multiSelect": false
}]
})
開始するブロックを選択した後 → 該当ブロックの Phase A から進めます。