{"id":4891,"library":"awslabs-dynamodb-mcp-server","title":"AWS DynamoDB Model Context Protocol (MCP) Server","description":"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.","status":"active","version":"2.0.24","language":"en","source_language":"en","source_url":"https://github.com/awslabs/mcp/tree/main/src/dynamodb-mcp-server","tags":["aws","dynamodb","ai","llm","data-modeling","mcp-server","generative-ai"],"install":[{"cmd":"pip install awslabs-dynamodb-mcp-server","lang":"bash","label":"Install PyPI package"},{"cmd":"uvx awslabs.dynamodb-mcp-server@latest","lang":"bash","label":"Run using uvx (common for MCP servers)"},{"cmd":"docker build -t awslabs/dynamodb-mcp-server . && docker run --rm --interactive --env FASTMCP_LOG_LEVEL=ERROR awslabs/dynamodb-mcp-server:latest","lang":"bash","label":"Build and run with Docker"}],"dependencies":[{"reason":"Recommended runtime for executing MCP servers, typically via `uvx`.","package":"uv","optional":false},{"reason":"Required for the server to interact with AWS DynamoDB and other AWS services.","package":"AWS Credentials","optional":false},{"reason":"Required if running the server as a Docker container.","package":"Docker","optional":true}],"imports":[],"quickstart":{"code":"{\n  \"mcpServers\": {\n    \"awslabs.dynamodb-mcp-server\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"awslabs.dynamodb-mcp-server@latest\"\n      ],\n      \"env\": {\n        \"FASTMCP_LOG_LEVEL\": \"ERROR\",\n        \"AWS_REGION\": \"us-west-2\",\n        \"AWS_ACCESS_KEY_ID\": \"\" // Use os.environ.get('AWS_ACCESS_KEY_ID', '') for actual use\n      },\n      \"disabled\": false,\n      \"autoApprove\": []\n    }\n  }\n}","lang":"json","description":"The `awslabs-dynamodb-mcp-server` is primarily designed to be run as a server and configured within an MCP client (e.g., Amazon Q Developer CLI, Kiro, Cursor). This quickstart provides an example JSON configuration snippet typically placed in a client's `mcp.json` file. The `command` and `args` specify how the client should launch the DynamoDB MCP server, often utilizing `uvx` (a runtime for MCP servers) or Docker. Environment variables like `AWS_REGION` and AWS credentials (e.g., `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`) are crucial for the server to interact with AWS services, usually sourced from your environment or AWS configuration."},"warnings":[{"fix":"For operational DynamoDB management, migrate to using the AWS API MCP Server. If you absolutely require the legacy operational tools, pin your dependency to version 1.0.9, though this is not recommended for new projects.","message":"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.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Review the telemetry RFC (GitHub issue #2382) for full details on data collected. Users can opt-out of telemetry collection if desired; instructions are typically provided in the official documentation or GitHub README.","message":"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.","severity":"gotcha","affected_versions":">=3.0.0"},{"fix":"Ensure your AWS credentials (environment variables, shared credentials file, or IAM role) have appropriate, least-privilege permissions for DynamoDB. Specifically, use read-only permissions if modification is not intended.","message":"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.","severity":"gotcha","affected_versions":"All versions"},{"fix":"When enabling MySQL integration, set `MYSQL_CLUSTER_ARN`, `MYSQL_SECRET_ARN`, `MYSQL_DATABASE`, and `AWS_REGION` environment variables in your MCP server configuration. `MYSQL_MAX_QUERY_RESULTS` is optional.","message":"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.","severity":"gotcha","affected_versions":"All versions with `source_db_analyzer`"}],"env_vars":null,"last_verified":"2026-04-12T00:00:00.000Z","next_check":"2026-07-11T00:00:00.000Z"}