AWS DynamoDB Model Context Protocol (MCP) Server
The `awslabs-dynamodb-mcp-server` is an official Model Context Protocol (MCP) server for Amazon DynamoDB, designed to provide expert design guidance and data modeling assistance. It integrates with AI-powered assistants (like Amazon Q Developer) by exposing specialized tools. This server facilitates the design of DynamoDB data models through natural language conversations, validates proposed models, and can generate infrastructure-as-code resources (e.g., CDK applications). As of version 2.x, its primary focus is on data modeling and design; operational tasks like CRUD and table management have been transitioned to the generic AWS API MCP Server.
Warnings
- breaking Breaking Change in v2.0.0+: Operational DynamoDB management tools (CRUD, table creation, backups) have been removed. Version 2.0.0 and subsequent versions focus exclusively on DynamoDB design and data modeling guidance. For operational tasks, users are advised to use the generic AWS API MCP Server.
- gotcha Telemetry Collection in v3.0.0+: Starting with version 3.0.0 (expected around February 20, 2026), the DynamoDB MCP Server will begin collecting anonymized telemetry data on tool usage. This includes information like tool name, invocation count, duration, error type, and installation details. No sensitive data (e.g., tool inputs/outputs, AWS credentials, PII) will be collected.
- gotcha AWS Credentials and Permissions: The server requires AWS credentials to interact with DynamoDB. For design and modeling use cases where AI agents should not modify resources, it is strongly recommended to configure AWS credentials with read-only permissions to prevent accidental data loss or unauthorized modifications.
- gotcha MySQL Integration Requires Environment Variables: To utilize the `source_db_analyzer` tool for analyzing existing MySQL databases, specific environment variables must be set in the MCP server's configuration.
Install
-
pip install awslabs-dynamodb-mcp-server -
uvx awslabs.dynamodb-mcp-server@latest -
docker build -t awslabs/dynamodb-mcp-server . && docker run --rm --interactive --env FASTMCP_LOG_LEVEL=ERROR awslabs/dynamodb-mcp-server:latest
Quickstart
{
"mcpServers": {
"awslabs.dynamodb-mcp-server": {
"command": "uvx",
"args": [
"awslabs.dynamodb-mcp-server@latest"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"AWS_REGION": "us-west-2",
"AWS_ACCESS_KEY_ID": "" // Use os.environ.get('AWS_ACCESS_KEY_ID', '') for actual use
},
"disabled": false,
"autoApprove": []
}
}
}