Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS上でMCPを安全に使いたい ~Mastraを添えて~
Search
Har1101
April 21, 2025
7
2k
AWS上でMCPを安全に使いたい ~Mastraを添えて~
Har1101
April 21, 2025
Tweet
Share
More Decks by Har1101
See All by Har1101
Jr.Championsもいいけど、Community Buildersもね!
har1101
2
210
AgentCoreで始めるAmbient Agent
har1101
3
130
AgentCore×非同期実行で広がる、Ambient Agentの可能性
har1101
2
64
「OutputOps」なエージェントを作りたかった…~エージェント開発Tipsを添えて~
har1101
3
130
Strands Agents SDKのAgent Graphへ入門してみよう!
har1101
5
360
まだ間に合う!Strands Agents SDKの入門からちょっと応用気味なところまで
har1101
2
260
Bedrock AgentCoreを使って簡単なチャットアプリを作ってみた!
har1101
8
1.2k
私たちはなぜAWS Summitに参加するのか?
har1101
1
480
Bedrockのプロンプト管理どうしてる?
har1101
7
1.2k
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Facilitating Awesome Meetings
lara
57
6.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
680
GitHub's CSS Performance
jonrohan
1032
470k
Automating Front-end Workflow
addyosmani
1371
200k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The Invisible Side of Design
smashingmag
302
51k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Transcript
AWS上でMCPを安全に使いたい ~Mastraを添えて~ 2025/04/21 (月) JAWS-UG AI/ML #25 Generative AI/ML LT大会
福地開
Who am I ? 福地 開 (ふくち はるき) @har1101mony 所属:NECソリューションイノベータ株式会社
年次:3年目 業務:インフラエンジニア(AWS) 活動:ITなんでも勉強会「つながりテック」 運営 表彰:AWS Community Builders(AI Engineering)
MCP、使ってますか?
MCPとは? ◆MCP: Model Context Protocol ◆LLMアプリと外部サービスを連携しやすくするもの →「こうやって接続してね、よそのサービスも同じ感じだよ」な 感じの統一されたインターフェース
MCPの課題 ◆ステートフルアーキテクチャ • MCPクライアントとMCPサーバーの間で、永続的な接続を前提 • つまり、コンテナや仮想マシンなどが必要 • サーバーレス構成(AWS Lambdaなど)で使いづらい (Streamable
HTTP対応で解消される?) ◆セキュリティ • MCPクライアントにMCPサーバーの設定を入れれば 誰でも利用可能 • 今のところローカルでの利用がメインだが、 認証認可の仕組みが発展途上
AWSで、よりMCPをセキュアに使う
Lambda MCP サーバー ◆AWS公式が提供しているMCPサーバー • MCPクライアントとAWS Lambda関数間のブリッジとして機能し、 生成AIモデルがLambda関数をツールとしてアクセスして実行できるようになる • パブリックに公開することなく、モデルがツールを利用できる
• Bedrock Agentのアクショングループと同じ感じで使えるものという理解をしている 参考:https://github.com/awslabs/mcp/blob/main/src/lambda-mcp-server/README.md
Lambda MCP サーバーのセキュリティ ◆MCPサーバーとツール(Lambda関数)を分離する • MCPクライアントにはツールを呼び出すためのAWS認証情報のみ付与する →クライアントからの他AWSサービスの操作・ネットワークへのアクセスを根本的に防止 →クライアント単位での権限制御により、きめ細やかなセキュリティ分離を実現 • ツールは関数ロールを使用して、リソース操作を行う
→ツール側に認証情報などを持たせることで、さらにセキュリティ向上が見込める
◆AWS上で完結するMCP搭載アプリケーション • Mastra×Lambda Web AdapterをMCPクライアントとする • Lambda MCPサーバーを使う • それぞれのLambdaで関数ロールを設定し、権限制御
• これで完璧なMastra×MCPエージェントの完成! 今回やってみたかったこと
◆AWS上で完結するMCP搭載アプリケーション • Mastra×Lambda Web AdapterをMCPクライアントとする • Lambda MCPサーバーを使う • それぞれのLambdaで関数ロールを設定し、権限制御
• これで完璧なMastra×MCPエージェントの完成! 今回やってみたかったこと 上手くいきませんでした…すみませんmm
できたこと
◆ECSでも、Lambda Web Adapterでも、お好みで ◆ストリーミングレスポンス対応、MCPももちろん使える! Mastra × Next.jsのデプロイ
◆Lambda Web Adapterの良いところ: 非Lambda用のWebアプリをそのままLambda上で動かせる ◆必要なもの:以下1行 Mastra × Next.jsのデプロイ 参考:https://speakerdeck.com/tmokmss/aws-lambda-web-adapterwohuo-yong-suruxin-siisabaresunoshi-zhuang-patan
Mastra上でMCPの設定 この辺は定型文 (場合によってはuvxのパスを指定する) 環境変数を指定 FUNCTION_LISTのところで関数名を 指定しておくと、ツールとして自動で 登録される(便利!!)
できなかったこと
◆Claude Desktopからはうまくいく Mastra上からツールにクエリが上手くいかない…
◆Mastra上だと上手くいかない… Mastra上からツールにクエリが上手くいかない…
◆ドキュメントに存在しない… ◆Lambdaは独自のインターフェースがあるので、 それをどう実装するか…? Mastra単体でLambda上にデプロイする方法が不明
AWS×MCPの可能性(もとい、妄想)
◆Ambientエージェント: ユーザーからの入力等がなくても、より自律的に動くAI ◆今作りたいのはこんな感じ…乞うご期待! AWSでAmbientなエージェントを作成できる!?