AWS DynamoDB MCP Server
The official MCP Server for interacting with AWS DynamoDB
Available MCP Tools
Table Operations
create_table
- Creates a new DynamoDB table with optional secondary indexesdelete_table
- Deletes a table and all of its itemsdescribe_table
- Returns table information including status, creation time, key schema and indexeslist_tables
- Returns a paginated list of table names in your accountupdate_table
- Modifies table settings including provisioned throughput, global secondary indexes, and DynamoDB Streams configuration
Item Operations
get_item
- Returns attributes for an item with the given primary keyput_item
- Creates a new item or replaces an existing item in a tableupdate_item
- Edits an existing item's attributes, or adds a new item if it does not already existdelete_item
- Deletes a single item in a table by primary key
Query and Scan Operations
query
- Returns items from a table or index matching a partition key value, with optional sort key filteringscan
- Returns items and attributes by scanning a table or secondary index
Backup and Recovery
create_backup
- Creates a backup of a DynamoDB tabledescribe_backup
- Describes an existing backup of a tablelist_backups
- Returns a list of table backupsrestore_table_from_backup
- Creates a new table from a backupdescribe_continuous_backups
- Returns continuous backup and point in time recovery statusupdate_continuous_backups
- Enables or disables point in time recovery
Time to Live (TTL)
update_time_to_live
- Enables or disables Time to Live (TTL) for the specified tabledescribe_time_to_live
- Returns the Time to Live (TTL) settings for a table
Export Operations
describe_export
- Returns information about a table exportlist_exports
- Returns a list of table exports
Tags and Resource Policies
put_resource_policy
- Attaches a resource-based policy document to a table or streamget_resource_policy
- Returns the resource-based policy document attached to a table or streamtag_resource
- Adds tags to a DynamoDB resourceuntag_resource
- Removes tags from a DynamoDB resourcelist_tags_of_resource
- Returns tags for a DynamoDB resource
Misc
describe_limits
- Returns the current provisioned-capacity quotas for your AWS accountdescribe_endpoints
- Returns DynamoDB endpoints for the current region
Instructions
The official MCP Server for interacting with AWS DynamoDB provides a comprehensive set of tools for managing DynamoDB resources. Each tool maps directly to DynamoDB API operations and supports all relevant parameters.
To use these tools, ensure you have proper AWS credentials configured with appropriate permissions for DynamoDB operations. The server will automatically use credentials from environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN) or other standard AWS credential sources.
All tools support an optional region_name
parameter to specify which AWS region to operate in. If not provided, it will use the AWS_REGION environment variable or default to 'us-west-2'.
Prerequisites
- Install
uv
from Astral or the GitHub README - Install Python using
uv python install 3.10
- Set up AWS credentials with access to AWS services
- Consider setting up Read-only permission if you don't want the LLM to modify any resources
Installation
Add the MCP to your favorite agentic tools. e.g. for Amazon Q Developer CLI MCP, ~/.aws/amazonq/mcp.json
):
{
"mcpServers": {
"awslabs.dynamodb-mcp-server": {
"command": "uvx",
"args": ["awslabs.dynamodb-mcp-server@latest"],
"env": {
"DDB-MCP-READONLY": "true",
"AWS_PROFILE": "default",
"AWS_REGION": "us-west-2",
"FASTMCP_LOG_LEVEL": "ERROR"
},
"disabled": false,
"autoApprove": []
}
}
}
or docker after a successful docker build -t awslabs/dynamodb-mcp-server .
:
{
"mcpServers": {
"awslabs.dynamodb-mcp-server": {
"command": "docker",
"args": [
"run",
"--rm",
"--interactive",
"--env",
"FASTMCP_LOG_LEVEL=ERROR",
"awslabs/dynamodb-mcp-server:latest"
],
"env": {},
"disabled": false,
"autoApprove": []
}
}
}