Execute SQL statements in a transaction against the configured Aurora DSQL cluster. Aurora DSQL is a distributed SQL database with Postgres compatibility. This tool will automatically insert `BEGIN` and `COMMIT` statements; you only need to provide the statements to run within the transaction sc...
Part of the AWS Labs Aurora DSQL MCP Server MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.
AI agents may call transact to permanently remove or destroy resources in AWS Labs Aurora DSQL MCP Server. Without a policy, an autonomous agent could delete critical data in a loop with no way to undo the damage. Intercept blocks destructive tools by default and requires explicit human approval before enabling them.
Without a policy, an AI agent could call transact in a loop, permanently destroying resources in AWS Labs Aurora DSQL MCP Server. There is no undo for destructive operations. Intercept blocks this tool by default and only allows it when a human explicitly approves the action.
Destructive tools permanently remove data. Block by default. Only enable with explicit approval workflows.
tools:
transact:
rules:
- action: deny
reason: "Blocked by default — enable with approval" See the full AWS Labs Aurora DSQL MCP Server policy for all 7 tools.
Agents calling destructive-class tools like transact have been implicated in these attack patterns. Read the full case and prevention policy for each:
Other tools in the Destructive risk category across the catalogue. The same policy patterns (deny, require_approval) apply to each.
transact is one of the critical-risk operations in AWS Labs Aurora DSQL MCP Server. For the full severity-focused view — only the critical-risk tools with their recommended policies — see the breakdown for this server, or browse all critical-risk tools across every MCP server.
Execute SQL statements in a transaction against the configured Aurora DSQL cluster. Aurora DSQL is a distributed SQL database with Postgres compatibility. This tool will automatically insert `BEGIN` and `COMMIT` statements; you only need to provide the statements to run within the transaction scope. ## Behavior by Mode **READ-ONLY MODE:** - Use this tool for read operations that require transactional consistency (point-in-time snapshots) - Multiple SELECT queries will see data as it existed at transaction start time - All statements are validated before execution - NO write operations allowed - Prohibited operations: mutating queries ie. INSERT, UPDATE, DELETE, CREATE, DROP etc. - Allowed operations: SELECT, SHOW, EXPLAIN (read-only queries only) **READ-WRITE MODE:** - Use this tool for any write or modify operations - Supports all DDL statements (CREATE TABLE, CREATE INDEX, etc.) - Supports all DML statements (INSERT, UPDATE, DELETE) - Best practice: Use UUIDs for new tables to spread workload across nodes - Async DDL commands (like CREATE INDEX ASYNC) return a job id - View jobs with: SELECT * FROM sys.jobs ## When to Use Transact vs readonly_query - Use `transact` when you need multiple queries to see consistent data (same point in time) - Use `readonly_query` for single read queries that don't need transactional isolation - In read-only mode, both tools validate against write operations ## Examples Read-only mode - consistent multi-query read: ``` transact(["SELECT COUNT(*) FROM orders", "SELECT SUM(total) FROM orders"]) ``` Read-write mode - create and populate table: ``` transact([ "CREATE TABLE users (id UUID PRIMARY KEY, name TEXT)", "INSERT INTO users VALUES (gen_random_uuid(), 'Alice')" ]) ```. It is categorised as a Destructive tool in the AWS Labs Aurora DSQL MCP Server MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.
Add a rule in your Intercept YAML policy under the tools section for transact. You can allow, deny, rate-limit, or validate arguments. Then run Intercept as a proxy in front of the AWS Labs Aurora DSQL MCP Server MCP server.
transact is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.
Yes. Add a rate_limit block to the transact rule in your Intercept policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the Intercept policy for transact. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
transact is provided by the AWS Labs Aurora DSQL MCP Server MCP server (awslabs.aurora-dsql-mcp-server). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Deterministic policy on every MCP tool call. Per-identity grants. Full audit log.