MCP 服务器
Model Context Protocol (MCP) 是一个开放标准,让 AI 智能体能够与外部工具和数据源对话。DynoTable 可以充当一个 MCP 服务器 —— 这样运行在你终端或编辑器中的智能体(Claude Code、Cursor、Codex 等)就能直接处理你的 DynamoDB 表,而无需你把 schema 和结果在聊天里来回复制粘贴。
连接之后,智能体获得内置助手受控工具集的一个投影 —— 读取你的 schema、运行查询和单项读取、暂存改动供审阅、打开视图,以及导出 —— 都通过一个本地、仅环回的 HTTP endpoint 进行。少数仅限应用内的工具会留在应用中,不会被暴露出来。智能体发现你的表、查询它们、提议编辑,而绝不持有你的 AWS 凭据。
它默认关闭。开启它,以及每一个单独的连接,都明确处于你的掌控之下 —— 参阅下面的安全。
启用服务器
打开设置 → MCP Server 并开启它。DynoTable 会启动一个绑定到 127.0.0.1(仅环回 —— 永远无法从另一台机器访问)的服务器,并显示用于连接的命令。

暴露配置文件
服务器开着了,但在你暴露一个配置文件之前,还没有任何智能体能连接。在设置中打开某个配置文件的 MCP 区域,开启 Expose via MCP。每个被暴露的配置文件都获得自己的连接命令 —— 这样你就能按每个配置文件一个连接来接线(例如一个 dynotable-dev 和一个 dynotable-prod),各自被硬隔离到该配置文件的凭据和区域。一个连接永远只看得到它所绑定的那个配置文件的数据。
基于 AWS 的和本地(DynamoDB-Local)的配置文件都可以被暴露。暴露一个本地配置文件,能让智能体通过 MCP 驱动你的本地预置表 —— 在开发时很方便。(同一端口上的两个本地配置文件共享同一个本地数据库,所以它们看到相同的表。)

连接一个客户端
DynoTable 通过 streamable HTTP 讲 MCP,所以任何具备 MCP 能力的智能体都能连接。每个被暴露的配置文件都在它的 MCP 区域里显示自己的连接命令 —— 从那里复制即可。命令指向 http://127.0.0.1:<port>/mcp?profile=<slug>:?profile=<slug> 告诉 DynoTable 你想要哪个配置文件,并在批准提示中预先选中它(这只是一个提示 —— 你仍然要确认)。在服务器名称中带上配置文件的 slug(例如 dynotable-prod),能让两个配置文件的连接保持彼此独立。
下面的示例用 prod 作为 slug;请替换成你配置文件的 slug 以及设置中的真实端口。
在你的项目里运行这条 —— 就是该配置文件 MCP 区域中显示的确切命令:
claude mcp add --transport http dynotable-prod "http://127.0.0.1:<port>/mcp?profile=prod"把服务器加入 .cursor/mcp.json(项目级)或 ~/.cursor/mcp.json(全局):
{
"mcpServers": {
"dynotable-prod": {
"url": "http://127.0.0.1:<port>/mcp?profile=prod"
}
}
}把它加入 .vscode/mcp.json(Copilot 智能体模式):
{
"servers": {
"dynotable-prod": {
"type": "http",
"url": "http://127.0.0.1:<port>/mcp?profile=prod"
}
}
}把它加入 ~/.codex/config.toml:
[mcp_servers.dynotable-prod]
url = "http://127.0.0.1:<port>/mcp?profile=prod"把它加在 opencode.json 的 mcp 之下:
{
"mcp": {
"dynotable-prod": {
"type": "remote",
"url": "http://127.0.0.1:<port>/mcp?profile=prod",
"enabled": true
}
}
}要连接第二个配置文件,用那个配置文件的命令(它自己的 slug)重复一遍。连接之后,重启或重新加载客户端,让它识别到新的服务器。
批准连接
某个客户端首次连接时,DynoTable 会在应用内显示一个同意提示。它会指出正在连接的客户端,让你选择该连接绑定哪个配置文件(根据 ?profile= 提示预先选中,限于你已暴露的配置文件),并请你授予一个作用域 —— 或拒绝。在你批准之前,不会暴露任何东西。

作用域
一个作用域决定该连接能看到并使用哪些工具。它们是累加的 —— 每一档都包含其前面的各档:
- 仅读取 —— 读取你的 schema、运行查询、读取 item。不做改动。
- 读取并暂存 —— 仅读取的一切,外加暂存改动供你审阅并提交(智能体绝不直接写入 DynamoDB —— 它经由暂存)。
- 完全访问 —— 以上一切,外加打开视图、设置筛选和导出结果。写入仍然经过暂存 —— 即便在完全访问下,智能体也无法直接写入 DynamoDB。
该连接绑定你在提示中批准的那个配置文件 —— 它的凭据和区域在连接的整个生命周期内被固定,所以它读取(并暂存写入到)的正是该配置文件的数据。提示中的客户端名称由正在连接的智能体自行上报,所以你批准的配置文件和作用域才是真正的关卡,而非名称。
如果被批准的配置文件使用 MFA,智能体会直接在它自己的会话里被要求输入一次性验证码 —— 无需切回 DynoTable。(通过 SSO 登录的配置文件仍然要在 DynoTable 里完成那次登录。)
管理连接
每一个已批准的客户端都列在设置 → MCP Server 中。随时可以撤销其中任何一个 —— 被撤销的客户端会在它下一次请求时被切断。取消暴露一个配置文件会立即撤销它的连接。关闭服务器则会将一切彻底停止。








