DynamoDB MCP Server

DynamoDB MCP Server

site icon
2025.02.17 0
JavaScript数据库管理Amazon DynamoDB数据库
DynamoDB MCP Server 是一个基于 Model Context Protocol 的服务器,专门用于管理 Amazon DynamoDB 资源。它提供了表管理、容量管理和数据操作等功能,帮助用户高效地管理和操作 DynamoDB 数据库。
View on GitHub

Overview

基本能力

产品定位

DynamoDB MCP Server 是一个专门用于管理 Amazon DynamoDB 资源的工具,通过提供表管理、容量管理和数据操作等功能,帮助用户高效地管理和操作 DynamoDB 数据库。

核心功能

  1. 表管理
  2. 创建新表并自定义配置
  3. 列出现有表
  4. 获取表的详细信息
  5. 配置表设置

  6. 索引管理

  7. 创建和管理全局二级索引 (GSI)
  8. 更新 GSI 容量
  9. 创建本地二级索引 (LSI)

  10. 容量管理

  11. 更新预置的读写容量单位
  12. 管理表吞吐量设置

  13. 数据操作

  14. 插入或替换表中的项目
  15. 通过主键检索项目
  16. 更新特定项目属性
  17. 使用条件查询表
  18. 使用过滤器扫描表

注意:不支持删除操作以防止意外数据丢失。

适用场景

  • 需要高效管理 DynamoDB 表的场景
  • 需要动态调整数据库容量的场景
  • 需要执行复杂数据查询和操作的场景

工具列表

  1. create_table:创建新表并指定配置。
  2. list_tables:列出账户中的所有表。
  3. describe_table:获取表的详细信息。
  4. create_gsi:在表上创建全局二级索引。
  5. update_gsi:更新全局二级索引的预置容量。
  6. create_lsi:在表上创建本地二级索引。
  7. update_capacity:更新表的预置容量。
  8. put_item:插入或替换表中的项目。
  9. get_item:通过主键检索项目。
  10. update_item:更新项目的特定属性。
  11. query_table:使用键条件和可选过滤器查询表。
  12. scan_table:使用可选过滤器扫描整个表。

常见问题解答

  1. 如何创建新表?
  2. 使用 create_table 工具,指定表名、分区键、分区键类型、读写容量等参数。

  3. 如何列出所有表?

  4. 使用 list_tables 工具,可选指定返回的最大表数和起始表名。

  5. 如何获取表的详细信息?

  6. 使用 describe_table 工具,指定表名。

  7. 如何更新表的容量?

  8. 使用 update_capacity 工具,指定表名和新的读写容量。

  9. 如何插入或替换项目?

  10. 使用 put_item 工具,指定表名和项目数据。

使用教程

使用依赖

  1. 安装 Node.js 和 npm。
  2. 配置 AWS 凭证:
export AWS_ACCESS_KEY_ID="your_access_key"
export AWS_SECRET_ACCESS_KEY="your_secret_key"
export AWS_REGION="your_region"

安装教程

  1. 安装依赖:
npm install
  1. 构建服务器:
npm run build
  1. 启动服务器:
npm start

调试方式

  1. 运行开发模式(自动重载):
npm run dev
  1. 使用 Docker 构建和运行:
docker build -t mcp/dynamodb-mcp-server -f Dockerfile .
docker run -i --rm -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_REGION -e AWS_SESSION_TOKEN mcp/dynamodb-mcp-server

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。