k-ibaraki/streamable-http-mcp-server-lambda-sample
3.2
If you are the rightful owner of streamable-http-mcp-server-lambda-sample and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This project demonstrates how to deploy an MCP server as a Docker container on AWS Lambda, making it accessible via HTTP.
Tools
mcp-server-time
A tool to retrieve the current time.
Streamable HTTP MCP Server Lambda Sample
AWS LambdaでMCPサーバーをHTTP経由で公開するサンプルプロジェクト。
概要
このプロジェクトは、MCPサーバーをDockerコンテナとしてAWS Lambdaにデプロイし、Lambda Function URLを通じてHTTPアクセス可能にします。
- MCPサーバー:
mcp-server-time
(現在時刻を取得するツールを提供) - プロキシ:
mcp-proxy
でMCPプロトコルをHTTPに変換 - デプロイ: AWS CDKを使用してLambdaとしてデプロイ
前提条件
- Node.js 22
- AWS CLI設定済み
- Docker
- AWS CDK CLI
セットアップ
- 依存関係のインストール:
npm install
- CDKのブートストラップ (初回のみ):
npx cdk bootstrap
デプロイ
npx cdk deploy
デプロイ完了後、Function URLが出力されます。
使用方法
デプロイされたFunction URLに対してHTTPリクエストを送信することで、MCPサーバーの機能を利用できます。
構成
- アーキテクチャ: ARM64 (Graviton2)
- メモリ: 256MB
- タイムアウト: 15秒
- 認証: なし (Function URLは公開)
ファイル構成
mcp-server-lambda-sample.ts
: CDKスタック定義container/Dockerfile
: MCPサーバーのコンテナ定義cdk.json
: CDK設定
CDKコマンド
npm run build
- TypeScriptをJSにコンパイルnpm run watch
- 変更を監視してコンパイルnpm run test
- Jestユニットテストを実行npx cdk deploy
- スタックをAWSにデプロイnpx cdk diff
- デプロイされたスタックと現在の状態を比較npx cdk synth
- CloudFormationテンプレートを生成npx cdk destroy
- スタックを削除