CLAUDE ACADEMY 公式レクチャー
Academy 唯一の「上級」コース
この講座で何を学べるかを、日本語で聴けます。約8分21秒。
受講を始める前に聴いておくと、公式サイトを見ながらの理解度が上がります。
ここまでが試聴です。AICU アカウントでログインすると、続きを最後まで聴けます。
話しているのは AICU のボイス「マーシャ・アランチャ」(合成音声)です。 内容は AICU が独自に書いた解説で、公式教材の音読ではありません。
入門の先にあるプロトコル仕様側のトピックを、解説とウォークスルーの2レッスン構成で扱う。sampling はサーバーが接続先クライアント経由でLLM呼び出しを依頼する仕組みで、AIのコストと複雑さをサーバーからクライアントへ移せる。notifications はコンテキストオブジェクトとログコールバック、長時間処理の進捗報告。roots は特定ディレクトリへのアクセスをセキュリティ境界付きでサーバーに与える仕組み。後半は仕様の中身で、request-result 対と notification の違い、STDIO トランスポートで必須となる初期化ハンドシェイク、SSE によるサーバーからクライアントへの通信とセッション管理・二重接続構成、設定フラグが機能に与える影響、そしてロードバランサ下で水平スケールさせるためにステートレスHTTPを選ぶ判断とそのトレードオフ。全12レッスン1.5時間。
日本語は AICU による要約です。Anthropic 公式の翻訳ではありません。
このレッスンでは、MCP の Sampling 機能が解決する課題と実際の動作フローを学べます。サーバー側とクライアント側でどのコードを用意すればよいか(サンプリング要求の送受信やコールバック実装)を実践的に理解し、費用負担や認証の扱いがどう変わるかを把握できます。公開サーバーでの活用場面や導入すべきタイミングも明確になります。
このレッスンでは、MCP のサンプリング機能を実装レベルで理解し、実際にモデル応答のサンプル生成がどのように行われるかを把握できます。サンプリングの流れや重要な概念、エッジケースを通して、サンプラーの振る舞いを制御・デバッグする方法が学べます。開発者が CLAUDE.md と連携して正確な出力を得るための実践的な知見が得られます。
MCP のツール実行中にクライアント側へリアルタイムでログや進捗を返す仕組みとその活用方法が分かります。Context 経由でログ(info)や進捗(report_progress)を送る実装例、クライアントでのコールバック登録方法、CLI/Web/デスクトップそれぞれに適した通知表示の選択肢まで学べます。長時間処理の可視化でユーザー体験を改善する実践的な指針が得られます。
このレッスンでは MCP の通知機能がどのように設計され、実装されるかを実例で学べます。通知の種類とライフサイクル、サブエージェントやフックとの関係、トランスポート経由で通知を送受信する際の注意点を把握できます。実装上の典型的なパターンと落とし穴を理解して、自分のエージェントやサービスに通知を安全かつ効率的に組み込めるようになります。
このレッスンでは、MCP サーバーがローカルの特定フォルダやファイルに安全にアクセスする仕組み「Roots」を学びます。Roots の導入でユーザーはフルパスを入力する手間を省け、サーバーは指定された領域だけを探索して目的ファイルを見つけられるようになります。実装時の境界設定やアクセスチェック(is_path_allowed 等)の考え方、セキュリティ上の注意点と運用メリットについて理解できるようになります。
このレッスンでは、Roots の設計と実装フローを追いながら、MCP におけるルート管理の役割と動作を実践的に理解できます。Roots がどのように会話コンテキストを構成し、サブエージェントやフックと連携して情報の流れを制御するかが分かります。実装上の注意点やトラブルシュートの考え方、関連するトランスポート(STDIO や StreamableHTTP)との結合も学べます。これにより、複雑なマルチエージェント構成の設計とデバッグが容易になります。
MCP における JSON メッセージの役割と種類が把握できる回です。Request-Result の対になったやり取りと、応答不要の Notification を区別できるようになり、クライアント/サーバーのどちらがどのメッセージを送るかが理解できます。特に双方向通信としての設計意図や、StreamableHTTP などトランスポート選択が動作に与える影響点も学べます。これにより適切なトランスポート設計やデバッグがしやすくなります。
このレッスンでは、MCP クライアントとサーバー間の基本的な通信手段としての stdio トランスポートの仕組みと実践的な使い方が分かります。stdin/stdout を使ったプロセス間通信でどちらからでもメッセージを送受信できる点、接続時の三段階ハンドシェイク(Initialize Request → Initialize Result → Initialized Notification)やリクエスト/通知の違いを理解できます。開発・テストでの手軽さと、HTTP 等ほかのトランスポートとの設計上の違いも把握できます。
StreamableHTTP トランスポートがどのように HTTP の制約と折り合いを付けて MCP を遠隔ホスト可能にするかが分かる回です。stateless_http や json_response といった設定が何を壊すか(進捗通知、ログ、サーバー発信のリクエストなど)を具体的に理解し、どの場面で STDIO と使い分けるべきか設計判断できるようになります。必要なら妥協点や代替パターンの検討方法も学べます。
このレッスンでは、HTTPの制約を踏まえつつ、MCP 上でサーバー→クライアント通信を実現する仕組みを理解できます。初期化フローとセッションIDの役割、Server-Sent Events を使った長期接続の動き、ツール呼び出し時に発生する二つのSSE接続の使い分け(進捗はプライマリ、ログやツール結果はツール専用)を学べます。また、stateless_http や json_response のフラグがワークアラウンドを壊す影響も押さえ、デバッグや設計判断に活かせる知識が身につきます。
このレッスンでは、StreamableHTTP トランスポートでの状態管理とそれがサーバー設計に与える影響を学べます。stateless_http フラグが有効な場合の制約(SSEによるサーバー→クライアント通信の不可、サンプリング不可、サブスクリプション不可など)と利点(初期ハンドシェイク不要で水平スケールしやすい)を理解します。また json_response フラグによるレスポンスの非ストリーミング化がもたらす簡易化と制約、開発時に本番と同じトランスポートで検証すべき理由も把握できます。
MCP のコア概念を確認し、Sampling・Notifications・Roots・トランスポートの役割と相互関係を理解できるようになります。各機能の仕組みや実装上の注意点を押さえ、どの場面でどの機能を使うべきか判断できるようになります。特に StreamableHTTP と STDIO の違いや、ログや進捗通知の扱い方、コンテキスト管理(Roots)による動作への影響を学べます。
見出しは公式の構成にもとづく日本語の要約です。レッスン本文は公式サイト上でのみ提供されています。各行から公式ページへ移動します。
この講座で扱う概念です。意味が分からない語で止まったら、ここから辞典を引けます。数字は難易度(1が易しく5が難しい)。
本文中でも初めて出てきた箇所にリンクを張っています。
用語の解説は AICU term(AICU が独自に編集している用語辞典)。
原題: Model Context Protocol: Advanced Topics — https://academy.claude.com/courses/model-context-protocol-advanced-topics