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
1.5k
AWS上でMCPを安全に使いたい ~Mastraを添えて~
Har1101
April 21, 2025
Tweet
Share
More Decks by Har1101
See All by Har1101
Ambient Agent on AWS!
har1101
3
370
Bedrockエージェントにおける MCP利用ケースについて考えてみる
har1101
4
310
Bedrock×MCPで社内ブログ執筆文化を育てたい!
har1101
7
1.8k
Amazon Bedrock Agentsのマルチエージェント機能で競馬予想アプリ作ってみた!
har1101
5
890
re:Inventのアップデートを使ってRAGアプリ開発とRAGOpsに入門してみた!
har1101
1
310
BedrockのナレッジベースとLlamaIndexでGraphRAGを作って精度比較してみた!
har1101
3
470
Amazon Bedrock Agentsを用いてアプリ開発してみた!
har1101
0
790
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
520
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
GraphQLとの向き合い方2022年版
quramy
46
14k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Adopting Sorbet at Scale
ufuk
76
9.4k
Site-Speed That Sticks
csswizardry
6
580
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
For a Future-Friendly Web
brad_frost
178
9.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
610
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なエージェントを作成できる!?