LabscoMCP early access ↗
jjikkyMCP SERVER

DynamoDB Read-Only MCP

Read a DynamoDB account from an agent — table list, schema, key lookups, queries, scans and counts — with no tool in the set that can write.

by jjikky ↗NoSQL, Graph & Key-Value StoresCommunity

LABSCO SUMMARY

The tool list contains no write operation, so what the agent can do is bounded by the tools even where the AWS credentials you hand it are broader.

The distinction that decides your bill is query-table against scan-table: a query is bounded by keyConditionExpression and can be pointed at a secondary index through indexName, while a scan reads the table and applies filterExpression afterwards. count-items answers a how-many question without moving the items across the wire. paginate-query-table takes a narrower argument list than query-table — no indexName, no limit, no filterExpression — so a paged read gives up the index target and the filter that the single-shot query accepts.

What it is

A read-only DynamoDB client exposing list-tables, describe-table, get-item, query-table, paginate-query-table, scan-table and count-items.

What you get

  • Discovery before access: list-tables returns the table names in the account, and describe-table returns the detail of a single table by tableName.
  • Key-addressed reads through get-item, which takes the key and the tableName and returns that item.
  • Condition-bounded reads through query-table, which takes a keyConditionExpression with expressionAttributeValues, can be aimed at a secondary index via indexName, and narrows the result with filterExpression, projectionExpression and limit.
  • Whole-table reads through scan-table, under the same filterExpression, projectionExpression and limit controls.
  • paginate-query-table for a query whose result set runs past a single response.
  • count-items, which returns how many items match a filterExpression without returning the items themselves.

Requirements

AWS credentials for the account holding the tables — AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY — plus the region those tables live in as AWS_REGION.

Setup effort

One command plus a key — npx -y @smithery/cli install @jjikky/dynamo-readonly-mcp --client claude, then supply credentials