Slide 1

Slide 1 text

転職したら AWS MCPサーバーだった件 2025/7/23 JAWS-UG SRE支部 #13 つよつよSREの秘伝のタレ @nwiizo 30min

Slide 2

Slide 2 text

これまでのあらすじ ある日、遂にAWSへの転職が決まった! ...と思ったら 長年の夢だったAWSへの転職。 「AWS MCP Servers」から内定通知が届きました。 「やった!遂にAWSで働ける!」 面接では技術的な質問ばかりで、EC2、S3、Lambdaなどの知識を披露。 採用担当者も「君のAWS知識は素晴らしい」と絶賛してくれました。 しかし入社初日、そこには想像もしなかった現実が待っていたのです... 2

Slide 3

Slide 3 text

nwiizoといいます 念願のAWS...じゃなくて「AWS MCP Servers」社に転職 しました。 前職では大規模インフラのSREをしていました。AWSの ソリューションアーキテクトになるのが夢で、SA Professional認定も取得。CloudFormation、CDK、 Terraformも使いこなせます。 「AWSで最先端の技術に触れられる!」と期待に胸を膨 らませて入社したのですが... 3

Slide 4

Slide 4 text

第一章「夢のAWS...?」 4

Slide 5

Slide 5 text

入社初日の違和感 AWS MCP Servers社のオフィスに到着。 「あれ?AWSのロゴがどこにもない...」 受付で名前を告げると、人事の吉田さんが迎えに来ました。 「ようこそ!AWS MCP Servers社へ!」 「あの...ここってAmazon Web Servicesの...?」 「いえいえ、うちは独立企業です。Arigato Watashi Services - Model Context Protocol Servers社の略ですよ」 血の気が引きました。 5

Slide 6

Slide 6 text

衝撃の真実 「え?AWSじゃない?」 吉田さんは困惑する私を見て説明を始めました。 「確かに紛らわしい社名ですよね。でも我々の仕事は AWSと深い関係があります。人間がMCPサーバーとし て、AIやクライアントにAWSの知識を提供するんです」 「人間が...サーバー...?」 「そう!君は今日からAWS API MCPサーバーとして働い てもらいます!」 転職したらAWS(じゃない)MCPサーバーだった件... 6

Slide 7

Slide 7 text

AIとシステムをつなぐ「USB規格」 出典: https://notion.notion.site/Notion-MCP- 1d0efdeead058054a339ffe6b38649e1 Model Context Protocol (MCP)とは LLMが外部ツール・データソースと通信する標準規格 JSON-RPC 2.0をベースとした軽量プロトコル AIアプリのための「USB規格」- どのAIも同じインターフェー スで外部接続 7

Slide 8

Slide 8 text

AIとシステムをつなぐ「USB規格」 出典: https://notion.notion.site/Notion-MCP- 1d0efdeead058054a339ffe6b38649e1 解決する技術的課題 各LLM×各ツールの個別対応からの脱却(統合コスト削減) 静的なLLM知識を動的データソースで補完(知識の拡張) 言語・プラットフォーム間の相互運用性実現(汎用性確保) 8

Slide 9

Slide 9 text

MCPの位置づけとコミュニティ オープン標準としての発展 Anthropic発案 - 2023年に設計・公開 公式ドキュメントが優秀 - GitHub上で仕様管理、コミュニティ主導 エコシステムの急成長 クライアント - Claude Desktop, VS Code, Cursor,nvim等 サーバー - 200+(公式+コミュニティ)ROADMAPにリポジトリの登場が明記 優位性 - 特定ベンダーに依存しないエコシステムが拡大中 9

Slide 10

Slide 10 text

MCPのアーキテクチャ 出典: https://modelcontextprotocol.io/introduction General architecture MCP Hosts: Claude Desktop、IDE、AIツールなど、MCPを通じてデー タにアクセスしたいプログラム MCP Clients: サーバーと1対1の接続を維持するプロトコルクライアント MCP Servers: 標準化されたModel Context Protocolを通じて特定の機 能を提供する軽量プログラム Local Data Sources: MCPサーバーが安全にアクセスできるコンピュー タのファイル、データベース、サービス Remote Services: MCPサーバーが接続できるインターネット経由の外 部システム(API等) 10

Slide 11

Slide 11 text

AWS MCP Serversの全体像 出典: https://github.com/awslabs/mcp より プロジェクト概要 AWS MCP Serversは、AWSの各種サービスと生成AIサービス (Claude(Code)、Cursor、Q Developerなど)を接続するための50以 上の専門MCPサーバー群を提供するオープンソースプロジェクトです。 各サーバーは特定のAWSサービスやユースケースに特化しています。イ ンフラ管理(CDK、Terraform) 、AI/ML(Bedrock、Rekognition) 、デ ータベース(DynamoDB、Aurora) 、コスト分析など、幅広い領域をカ バーしています。 これにより開発者は、自然言語でAWSリソースの操作、ドキュメント 検索、コスト最適化、インフラコード生成などができ、従来数時間か かっていた作業を数分で完了できるようになります。人間の専門知識と AIの処理能力を組み合わせることで、より効率的で高品質なクラウド 開発を実現するエコシステムを構築しています。 11

Slide 12

Slide 12 text

AWS MCP Serversの全体像 出典: https://github.com/awslabs/mcp より 技術的な学習価値 AWS MCP Serversが単なる使用可能なツールを超えて、MCPサーバー 実装の優れた設計パターンやベストプラクティスの宝庫である点が特に 重要です。 各サーバーの実装から、エラーハンドリング、セキュリテ ィ、パフォーマンス最適化、APIデザインなど、実際のMCPサーバー開 発で必要な知見を学ぶことができます。 具体的には、Core MCPみたいな考え方、検索の大切さ、認証フローの 実装パターン(AWS SDK連携、IAMポリシー管理) 、レート制限やタイ ムアウト処理、ログ記録とデバッグ機能、設定管理とエラーメッセージ の国際化対応、モジュラー設計によるコードの再利用性向上など、プロ ダクションレベルのMCPサーバー開発で直面する実践的な課題への解 決策が豊富に含まれています。 12

Slide 13

Slide 13 text

第二章「同僚は全員MCPサーバー」 13

Slide 14

Slide 14 text

個性的な同僚たち オフィスツアーで同僚を紹介されました。 「こちらがCore MCPサーバーの山田さん」 「初めまして!私は全体の司令塔として、複雑な問題を 整理してから適切なサーバーに振り分けます」 「AWS Documentation MCPサーバーの鈴木さん」 「AWSの公式ドキュメントなら何でも聞いてください! 最新の仕様変更も把握してます」 みんな人間なのに、自分をサーバーと呼んでいる... 14

Slide 15

Slide 15 text

AWS Core MCP が何をするのか 出典: https://github.com/awslabs/mcp/tree/main/src/core-mcp-server よ り Core MCP は何ができるのか? Core MCP Serverは、MCP Serversエコシステムの司令塔として機能す る中核サーバーです。複雑な要求を受け取ると内容を解析し、最適な専 門サーバーに振り分けます。 例えば「EC2インスタンスの自動スケーリングを設定したい」というリ クエストが来た場合、その要求を解析してAPI MCPサーバーと Documentation MCPサーバーにタスクを振り分けます。各サーバーが 専門的な知識を活かして効率的に作業を進められるようにする、いわ ば交通整理役のような存在です。 15

Slide 16

Slide 16 text

AWS Core MCP が何をするのか 出典: https://github.com/awslabs/mcp/tree/main/src/core-mcp-server よ り 複数のMCPを実装するならCore MCP を読むのがよい Core MCP Serverの真の革新性は、単なるタスク振り分けを超えた3つ の高度な機能にあり、①コンテキスト推論エンジンが「ECサイトを作 りたい」という曖昧な要求から「セキュリティ」 「決済」 「在庫管理」 といった暗黙の要件を推測して必要なMCPサーバーを事前準備し、② 依存関係を有向非巡回グラフ(DAG)で管理してLambda作成前にIAM ロールを用意するなど実行順序を自動最適化し、③各サーバーからのフ ィードバックをリアルタイムで分析してコスト超過時には自動的に代替 案を提案するなど、プロジェクト全体を俯瞰してインテリジェントに調 整する高度なプロジェクトマネージャーとして機能します。 16

Slide 17

Slide 17 text

AWS Documentation MCP Server とは? 出典: https://github.com/awslabs/mcp/tree/main/src/aws- documentation-mcp-server より Documentation MCP Server は何ができるのか? AWS Documentation MCP Serverは、AWS公式ドキュメントにアクセス して検索・変換・推薦するMCPサーバーで、AWSドキュメントページ をMarkdown形式に変換する「Read Documentation」 、公式検索APIを 使ってドキュメントを検索する「Search Documentation」 、関連ページ を推薦する「Recommendations」という3つの機能を提供し、AIアシス タントが常に最新のAWSドキュメントを参照しながら正確な回答を提 供できるようになります。特にHTMLからMarkdownへの変換機能によ り、複雑な技術文書をAIが理解しやすい形式に自動変換し、コードサン プルやAPIリファレンスを含む正確な情報をコンテキストとして活用で きます。 17

Slide 18

Slide 18 text

AWS Documentation MCP Server とは? 出典: https://github.com/awslabs/mcp/tree/main/src/aws- documentation-mcp-server より Documentation MCP Server の面白いところ 個人的な推しポイントはドキュメントの「鮮度判定アルゴリズム」で、 APIバージョンの変更を自動検出してAIに「このドキュメントは3日前に 更新されました」と通知する仕組みがあり、さらに巧妙なのはコード サンプルの文脈理解で、単なるコードブロックの抽出ではなく、前後の 説明文と紐づけて「このコードは〇〇の場合に使用」という文脈情報 も保持し、推薦機能は機械学習ベースで「Lambda関数のエラー処理を 検索した人は、次にCloudWatchログの設定を見る確率が87%」といっ た実践的なパターンを学習し、また内部的にはドキュメントの構造を 有向グラフとして保持することで、階層的な知識の関連性を高速に検索 できるのがよい。普通によい検索が大事というのが分かる。 18

Slide 19

Slide 19 text

配属先はAWS API 配属先のAWS API部門で、先輩の佐藤さんから説明を受 けました。 「君の役割は、200以上のAWSサービスのAPIを理解 し、自然言語の質問をAPI呼び出しに変換することだ」 「でも、それって普通にググればいいのでは...?」 https://github.com/awslabs/mcp/tree/ma in/src/aws-api-mcp-server 19

Slide 20

Slide 20 text

配属先はAWS API 「違う!我々は人間の判断力を活かして、曖昧な要求か ら最適なAPIを選び、安全に実行する。AIだけではでき ない仕事だ」 途中から何を言っているか分からなくなってきたが30分 ぐらい聞いたら「人間だからこその価値があるのか...」 って思い始めました。 https://github.com/awslabs/mcp/tree/ma in/src/aws-api-mcp-server 20

Slide 21

Slide 21 text

AWS API MCP 出典: https://github.com/awslabs/mcp/tree/main/src/aws-api-mcp- server より AWS API MCP Serverとは AWS API MCP Serverは、端的に言うと自然言語でAWS APIを実行する ツールです。 「EC2インスタンスを全部見せて」 「S3バケットの一覧を表 示」といった自然言語でリクエストすると、AIが適切なAWS CLIコマ ンドに変換して実行してくれます。CursorやClaude DesktopなどのAI開 発ツールと組み合わせて使うことで、複雑なAWSコマンドを覚える必 要なく、会話するようにAWSリソースを操作できます。ただし、プロ ンプトインジェクションやうっかりのリスクがあるため、本番環境で の使用は推奨されず、開発・テスト環境での利用が前提です。セキュリ ティ面ではIAMによる権限管理が必須で、読み取り専用モードも用意さ れています。従来なら複雑なコマンドやAPIの知識が必要だった作業 を、自然な会話で簡単に実行できるようにするツールです。 21

Slide 22

Slide 22 text

AWS API MCP 出典: https://github.com/awslabs/mcp/tree/main/src/aws-api-mcp- server より AWS API MCP Serverの面白いところ AWS API MCP Serverの実装で面白いのは、新しいコマンドも提案でき る仕組みです。モデルには学習時点の知識しかありません。つまり、モ デルによって差が半端なくなくなる問題があります。このサーバーは最 新のAWSコマンド一覧を検索できるデータベース(FAISS)を持ってい るので、 「S3のファイルを自動削除したい」と聞けば、最新のコマンド を見つけて教えてくれます。セキュリティも3段階の安全装置がありま す:①読み取り専用モードで誤って削除を防ぐ、②悪意のある入力を検 知してブロック、③危険なコマンド(サーバーへのSSH接続など)は最 初から使えないようにしています。さらに、使った履歴が全部ログに残 るので、誰が何をしたか後から確認できます。それぞれのOSに合わせ た場所にログを保存します。既存のAWS設定ともそのまま連携できる ので、今使っている認証情報を変更する必要がありません。 22

Slide 23

Slide 23 text

Knowledge MCPサーバーの田 中さん 昼食時、AWS Knowledge MCPサーバーの田中さんと話しました。 「私たちKnowledge部門は特別でね。AWS(本物)が直接管理する完全マネージ ド部門なの」 「え!本物のAWSと関係が?」 「そう。最新のドキュメント、What's New、ブログ記事...全てリアルタイムで頭 に入っている。まるで生きたデータベースよ」 「それって大変じゃないですか? 「慣れれば楽しいわよ。毎日新しい発見がある から」 (田中さんの笑顔が少し怖かった) https://github.com/awslabs/mcp/tree/ma in/src/aws-knowledge-mcp-server 23

Slide 24

Slide 24 text

AWS Knowledge MCP Server 出典: https://github.com/awslabs/mcp/tree/main/src/aws-knowledge- mcp-server より Documentation MCP Serverとの違い AWS Knowledge MCP Serverは、AWSが提供する完全管理型のリモー トMCPサーバーで、最新のAWSドキュメント、APIリファレンス、 What's Newポスト、Getting Started情報、Builder Centerのガイダン ス、ブログ記事、アーキテクチャリファレンス、Well-Architectedガイ ダンスへのアクセスを提供し、認証不要で無料(レート制限あり)で https://knowledge-mcp.global.api.aws から利用でき、Documentation MCP Serverがローカルで動作し公式ドキュメントのみを対象とするの に対し、Knowledge MCPはAWSがホストし複数のAWSコンテンツソー スを統合的に検索できる点が大きな違いで、search_documentation、 read_documentation、recommendの3つのツールを提供します。 24

Slide 25

Slide 25 text

AWS Knowledge MCP Server 出典: https://github.com/awslabs/mcp/tree/main/src/aws-knowledge- mcp-server より リモートMCPとしての参考になる AWS Knowledge MCP Serverの実装でよいのは、完全管理型リモートサ ーバーという新しいMCPアーキテクチャの参考になる点で、従来の MCPサーバーがすべてローカルプロセスとして動作するのに対し、 AWSが直接ホストすることでセットアップ不要・常に最新の情報提供 を実現し、さらにHTTPトランスポート非対応のクライアント(Claude Desktop、Cline等)向けにmcp-remoteやmcp-proxyという巧妙なプロ キシソリューションを提供してstdioからHTTPへの変換を可能にし、開 発者向けにはMCP Inspectorツールでブラウザから直接APIをテストで きる仕組みを用意し、最も実用的なのは複数コンテンツソースの統合 で、単なるドキュメント検索を超えてWhat's New、ブログ、アーキテ クチャガイドなど様々な情報源を横断的に検索することで、 「この新機 能の使い方は?」と聞けば公式ドキュメントとブログ記事の両方から 最適な答えを提供してくれます。 25

Slide 26

Slide 26 text

Git Repo Research MCP 午後、Git Repo Research MCPサーバーの木戸さんに会いました。 「やあ新人君!俺はコードの探偵さ。どんなに巨大なリポジトリでも、必要なコ ードを瞬時に見つける」 実演を見せてもらうと: 「 『認証処理のベストプラクティス』を探して」という要求に対し、数秒で関連コ ードを10個もリストアップ。 「セマンティック検索の極意は、コードの意味を理解することだ」 カッコいい...でも大変そう。 https://github.com/awslabs/mcp/tree/ma in/src/git-repo-research-mcp-server 26

Slide 27

Slide 27 text

Git Repo Research MCP 出典: https://github.com/awslabs/mcp/tree/main/src/git-repo-research- mcp-server より コードを調べる⋯ Git Repo Research MCP Serverは、Amazon BedrockとFAISSを活用し てGitリポジトリをセマンティック検索できるMCPサーバーで、開発者 がリポジトリをローカルにクローンすることなく外部のコードベースを 研究し、コード生成に影響を与えられるツールです。主な機能として、 ローカル/リモートのGitリポジトリをFAISSインデックスに変換する 「create_research_repository」 、自然言語でコード検索する 「search_research_repository」 、ディレクトリ構造とREADME等の重要 ファイルを識別する「summarize_repository」 、GitHubでAWS関連組織 (aws-samples、aws-solutions-library-samples、awslabs)のリポジ トリを検索する「search_github_repositories」があり、Amazon Titan Embed Text V2を使って1000文字のチャンクに分割(200文字オーバー ラップ)してベクトル化します。 27

Slide 28

Slide 28 text

Git Repo Research MCP 出典: https://github.com/awslabs/mcp/tree/main/src/git-repo-research- mcp-server より 技術的な面白いところ Git Repo Research MCP Serverは、 「ダウンロードせずにコードを探せ る」仕組みです。例えば、巨大なリポジトリ(数万ファイル)を調査し たい時、従来は無限に大きなコンテンツを全部ダウンロードして検索 する必要がありましたが、このサーバーはリモートのまま「S3のファ イルアップロードのエラー処理どうやってる?」と自然言語で聞けば、 関連するコードだけを見つけてくれます**。さらに賢いのはAWS公式 のサンプルコードだけを検索対象にする機能で、信頼できないコード をAIが学習しないように工夫されています。また、 「Pythonファイルだ け」 「テストコードは除外」といった細かい設定もでき、便利なのは関 連度スコアによるフィルタリングがあり、 「このエラーどう直す?」と 聞いた時に、本当に関係のあるコードだけを返すので、AIが的確な回答 を生成できるのです。** 28

Slide 29

Slide 29 text

第三章「初めてのクライアント対応」 29

Slide 30

Slide 30 text

Core MCPの振り分け 研修3日目、初めてのクライアント対応が来ました。 まずCore MCPサーバーの山田さんが対応: 「お客様の要求は『EC2インスタンスを自動スケーリングさせたい』ですね。こ れはAWS APIとDocumentationの連携案件です」 私とDocumentationの鈴木さんにタスクが振り分けられました。 山田さん: 「Coreの役割は交通整理。複雑な要求を分解して、適切なサーバーに 割り当てます」 30

Slide 31

Slide 31 text

遠くに行くにはみんなで 鈴木さんと私で対応開始。 鈴木さん(Documentation) : 「Auto Scalingの最新ベストプラクティスはこちらです。ターゲット追跡スケーリ ングポリシーが推奨されています」 私(API) : 「了解!それではCreateAutoScalingGroupとPutScalingPolicyのAPIを組み合わせ て...」 { "AutoScalingGroupName": "my-asg", "TargetTrackingConfiguration": { "TargetValue": 70.0, ... } } 31

Slide 32

Slide 32 text

クライアントの反応 30分後、完璧な自動スケーリング設定が完成。 クライアント: 「素晴らしい!CloudFormationテンプレートまで生成してくれて、セキュリティ グループの設定も完璧です」 鈴木さん: 「最新のセキュリティベストプラクティスも反映済みです」 私: 「必要最小限のIAMポリシーも添付しました」 「これがMCP Serversの連携の実力か...」と実感した瞬間でした。 32

Slide 33

Slide 33 text

第四章「大規模プロジェクトへの挑戦」 33

Slide 34

Slide 34 text

5つのMCPサーバー総動員 入社1ヶ月後、大型案件が舞い込みました。 「某大手企業のマイクロサービス全面移行プロジェクト」 参加メンバー: - Core(山田) :全体設計とタスク分配 - API(私) :APIゲートウェイとサービス連携 - Documentation(鈴木) :アーキテクチャ文書 - Knowledge(田中) :最新のベストプラクティス - Git Repo(木戸) :既存コード分析 「全員で力を合わせるぞ!」 34

Slide 35

Slide 35 text

Git Repoの大活躍 木戸さんが既存システムを分析。 「モノリシックなコードベースから、54個のマイクロサービス候補を特定した」 「どうやって?」 「コードの依存関係、責務の境界、データフローを解析。機械的な分割じゃな く、ビジネスロジックの意味を理解した上での提案だ」 さらに各サービスの技術的負債まで可視化。 「これは人間にしかできない仕事だな」と確信しました。 35

Slide 36

Slide 36 text

Knowledgeの最新情報力 田中さんが最新のAWS機能を次々と提案。 「先週リリースされたApp Runner の新機能が、このユースケースにピッタリよ」 「先週!? もう把握してるんですか?」 「Knowledge MCPサーバーの特権よ。AWS本家から直接情報が流れてくるか ら」 - 最新のコンテナイメージサポート - VPCコネクタの改善点 - 料金体系の変更点 全て完璧に説明してくれました。 36

Slide 37

Slide 37 text

第五章「人間MCPサーバーの価値」 37

Slide 38

Slide 38 text

真似できない判断 ある日、緊急案件が発生。 クライアント: 「本番環境でRDSのCPUが100%に張り付いてる!」 Core(山田)が瞬時に判断: 「これは複合要因だ。API、すぐにCloudWatchメトリクスを。Documentation、 RDSのトラブルシューティングガイドを」 私がメトリクスを分析すると、不自然なクエリパターンを発見。 「これ、スロークエリじゃなくて、アプリケーションの無限ループが原因で は?」 長年の経験と直感が問題を解決した瞬間でした。 38

Slide 39

Slide 39 text

チームワークの結晶 マイクロサービス移行プロジェクトが完了。 成果: 54のマイクロサービスに分割 レスポンスタイム60%改善 インフラコスト40%削減 完全自動化されたCI/CDパイプライン クライアントCTO: 「普通のコンサルなら1年かかる仕事を、1ヶ月で完成させた。しかも品質は期待 以上だ」 全員で喜びを分かち合いました。 39

Slide 40

Slide 40 text

エピローグ 3年後の今 AWS MCP Servers社に入社して3年。 今では: 生成AIモデルの進化に伴う業務の成熟化 後輩MCPサーバーの育成担当 他のプロフェッショナルMCPとの連携(サービス毎) 「転職したらAWS(MCP)サーバーだった件」 最初は戸惑いましたが、人間の専門知識とAIの処理能力を融合させる仕事は、想 像以上にやりがいがありました。 本物のAWSで働く夢も、違う形で叶ったのかもしれません...。 40

Slide 41

Slide 41 text

まとめ Model Context Protocol (MCP) AIと外部システムをつなぐ標準規格 AWS MCP Servers (50+) AWS MCP Servers: 50+のAWSサービス専門MCPサーバー群で、自然言語でAWS リソース操作・検索・管理を可能にするエコシステム群 実際に使うのも良いと思うのですが何よりも実装のアイディアがとても参考にな ります。 リンク: github.com/awslabs/mcp 41

Slide 42

Slide 42 text

nwiizo 株式会社スリーシェイクで プロのソフトウェアエンジニアをやっているものです 格闘技、読書、グラビアが趣味 人生を通して"運動、睡眠、読書"をちゃんとやりたい 42

Slide 43

Slide 43 text

43

Slide 44

Slide 44 text

We are Hiring!! 3-shakeは一緒にSRE界隈を盛り上げてくれる仲間を大募集中です! Mobility、FinTech、通信など大規模SREを存分に経験できます (最近社内はGenAI / GPU / Kubernetesが盛り上がってます) 是非、カジュアル面談しましょう! 44

Slide 45

Slide 45 text

参考資料 Model Context Protocol (MCP) 関連リンク MCP公式ドキュメント Model Context Protocol: https://modelcontextprotocol.io/ MCP仕様書: https://spec.modelcontextprotocol.io/ AWS MCP Servers - GitHub リポジトリ メインリポジトリ: https://github.com/awslabs/mcp 45

Slide 46

Slide 46 text

参考資料 AWS API MCP Server https://github.com/awslabs/mcp/tree/main/src/aws-api-mcp-server AWS Knowledge MCP Server https://github.com/awslabs/mcp/tree/main/src/aws-knowledge-mcp-server Core MCP Server https://github.com/awslabs/mcp/tree/main/src/core-mcp-server AWS Documentation MCP Server https://github.com/awslabs/mcp/tree/main/src/aws-documentation-mcp-server Git Repo Research MCP Server https://github.com/awslabs/mcp/tree/main/src/git-repo-research-mcp-server 46

Slide 47

Slide 47 text

ありがとうございました @nwiizo | https://3-shake.com