-
Notifications
You must be signed in to change notification settings - Fork 389
Description
Describe the bug
When attempting to deploy the provided Azure MCP Server Docker image to AWS Bedrock AgentCore runtime, we encountered two blocking issues:
-
Wrong Architecture: The Dockerfile builds for AMD64 by default, but AWS Bedrock AgentCore only supports ARM64. The build completes but the runtime fails to start on AgentCore.
-
Hardcoded Endpoint Path: The source code has the endpoint hardcoded to root
/, but AWS AgentCore expects MCP servers to expose endpoints at/mcp. This requires modifying the source code, making it painful to maintain and update.
Additional context
We successfully deployed after: -
Rebuilding for ARM64
-
Modifying source code to use
/mcpendpoint -
Setting required environment variables
However, this creates maintenance challenges:
- Can't easily update to new versions (source code patches needed)
- Requires forking or manually tracking changes
- No clear guidance for cloud deployment vs local development
Making architecture and endpoint path configurable would enable deployment to cloud platforms without source code modifications.
Expected behavior
We expected to:
- Build the provided Docker image for ARM64 architecture (AWS AgentCore requirement)
- Deploy to AWS Bedrock AgentCore without source code modifications
- Have the server automatically expose the correct
/mcpendpoint - Connect using standard MCP clients
Actual behavior
Issue 1 - Architecture Mismatch:
- Dockerfile builds for AMD64 (default platform)
- AWS AgentCore only supports ARM64 containers
- Container fails to start on AgentCore due to architecture mismatch
Issue 2 - Endpoint Path Hardcoded:
- Source code hardcodes endpoint to root
/ - AWS AgentCore expects MCP servers at
/mcpendpoint - Required modifying source code to change endpoint path
- This creates maintenance burden - can't easily update to new versions without re-applying patches
Reproduction Steps
Architecture Issue:
- Build Docker image without platform specification:
docker build -t azure-mcp-server . - Push to AWS ECR
- Create AWS Bedrock AgentCore runtime with this image
- Runtime fails to start - AgentCore requires ARM64
Endpoint Issue:
- Build for ARM64:
docker build --platform=linux/arm64 -t azure-mcp-server . - Deploy to AWS Bedrock AgentCore as MCP runtime
- Try to connect - AgentCore routes to
/mcpbut server exposes/ - Connection fails because endpoint mismatch
- Have to modify source code to change endpoint path
Environment
Deployment Target: AWS Bedrock AgentCore (requires ARM64)
Azure MCP Version: Latest from main branch
AgentCore Runtime Type: MCP
Metadata
Metadata
Assignees
Labels
Type
Projects
Status