PlugWiki
Dynoxide logo

Dynoxide MCP Server: A Local DynamoDB for Coding Agents

CommunityLocal
Getnpmdynoxidenubo-db/dynoxide

Gives Claude and Cursor a local DynamoDB they can create tables in, query and snapshot while you build.

Dynoxide is a DynamoDB emulator written in Rust, and this is its built-in server for coding agents. It runs on your computer against a local SQLite file or memory, not against AWS. The agent can create and delete tables, write items, run queries and take snapshots. Use the read-only option for data you care about.

Good for

  • Developers testing DynamoDB code without an AWS account
  • Teams who want an agent to explore a copy of exported data
  • Single-table design users who load a OneTable data model for context

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install Dynoxide MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the Dynoxide MCP server to Claude Code. Run this command:
    
    claude mcp add dynoxide -- npx -y dynoxide mcp
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js.

The server is started with the mcp subcommand. Add --db-path data.db to keep data between runs, or --read-only to block writes.

Built from the package data we hold. Not yet tested by us.

Tools

  • Lists the tables in the database

    Returns the names of all tables in the local DynamoDB emulator database.

    Try: “List all tables.”

    Read · list_tables

  • Shows a table's schema and size

    Returns key schema, indexes, item count, size, stream and TTL settings in a flat format meant for assistants.

    Try: “Describe the Orders table.”

    Read · describe_table

  • Creates a table

    Creates a table with a key schema and optional indexes, vector indexes, billing mode and tags.

    Try: “Create a Users table keyed by pk and sk.”

    Write · create_table

  • Changes a table's settings

    Adds or removes indexes, changes stream settings, billing mode, table class or deletion protection.

    Try: “Add a GSI on email to Users.”

    Delete · update_table

  • Deletes a table and its data

    Removes a table with all its data. The server makes an automatic snapshot first so you can restore it.

    Try: “Delete the Scratch table.”

    Delete · delete_table

  • Reads one item by key

    Retrieves a single item by its primary key.

    Try: “Get user#1 from Users.”

    Read · get_item

  • Inserts or replaces an item

    Writes an item, replacing any item with the same key. Conditional writes are supported.

    Try: “Put an item for user#2 in Users.”

    Write · put_item

  • Edits an item's attributes

    Applies an update expression with SET, REMOVE, ADD or DELETE to one item. Condition checks are supported.

    Try: “Increment the login count for user#1.”

    Delete · update_item

  • Deletes one item

    Deletes a single item by key, unless the table has deletion protection.

    Try: “Delete user#2 from Users.”

    Delete · delete_item

  • Reads up to 100 items

    Fetches items from one or more tables in a single call.

    Try: “Get these 20 users by key.”

    Read · batch_get_item

  • Writes or deletes up to 25 items

    Runs up to 25 put or delete operations across tables in one call.

    Try: “Delete these 10 test items.”

    Delete · batch_write_item

  • Loads up to 10,000 items fast

    Bulk-inserts items into a table, overwriting items with the same key.

    Try: “Load this seed data into Users.”

    Write · bulk_put_items

Read from the source code

Permissions

high risk · 3 things to watch · 3 advisories

High risk

The agent can create, change and delete tables and items in the local database, plus restore snapshots over current data. Point it at a copy and start it with the read-only flag if the data matters.

What it can do

Watch out for

  • It can delete tables, items and snapshots

    delete_table, delete_item, restore_snapshot, sweep_ttl and the PartiQL tools remove or overwrite data in the database file. delete_table takes an automatic snapshot first, but point it at a copy of your data, or use --read-only. github.com

  • The HTTP mode needs care

    The default is stdio. If you turn on the HTTP mode, keep the default 127.0.0.1 bind and a token. Non-loopback binds require an explicit token, and --no-auth works on loopback only. github.com

  • Vector search results can differ from AWS

    The docs say four things about vector search will never match AWS, so a test can pass here and fail there. github.com

Security advisories

Technical details
Turning on read-onlyStart the server with the --read-only flag, which rejects every write tool. The read tools, including the query and scan tools, stay available.
Talks toNone needed for the default stdio mode
Sign-in and keysNo sign-in for the default stdio mode. The optional HTTP mode requires a bearer token, which Dynoxide generates and saves in a per-user config file.

Questions

Is Dynoxide official?

It is the project's own server, made by the nubo-db team that builds Dynoxide. It is not made by Amazon, so it is not an official AWS DynamoDB server.

Does it connect to my AWS account?

No account or AWS key is involved in its setup. It is an emulator that stores data in a local SQLite file or in memory.

Can I run it read-only?

Yes. Start it with the --read-only flag and every write tool is rejected. Reads, queries and scans still work.

Are there security advisories?

Yes, three on the npm package, all fixed in the current release. They cover a crash from certain non-ASCII characters, the auth token appearing in --help output, and DNS rebinding in the HTTP mode. See the advisory details on this page.

Which clients does it work in?

Clients that can start a local program, such as Claude Code and Cursor. It also has an HTTP mode that uses a bearer token. See the install box for each app.

Can it work on a copy of real data?

Yes. The import command can load a DynamoDB export into memory and serve it over MCP, optionally anonymising it with rules. The data disappears when the process ends.

What license is it?

The npm package is licensed MIT or Apache-2.0.

Information

updated Nov 2, 2026

Publisher
Community
Package
dynoxide
Registry
npm
Transport
stdio
Auth
None
Version
1.5.0
License
MIT OR Apache-2.0
Last commit
Oct 25, 2026
Open issues
24
Listed in
Official MCP registry

WebsiteGitHubnpmOfficial MCP RegistryChangelogIssues

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 5
  1. github.com · github.com
  2. github.com · github.com
  3. github.com · github.com
  4. github.com · github.com
  5. www.npmjs.com · npmjs.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.