1 Tool、1 Transaction
セミコロン区切りの DML は execute_dml_sql のまま扱い、1 回承認して元の順序で原子的に commit します。
Safe DML
execute_dml_sql は Preview、承認、commit 直前の再検証、1 つのサーバー所有 Transaction を通して 1 つ以上の対応 DML を実行します。第一方の既定は MCP Elicitation で、公式 Webhook や独自 Provider も利用できます。
セミコロン区切りの DML は execute_dml_sql のまま扱い、1 回承認して元の順序で原子的に commit します。
UPDATE / DELETE は正確な Row Set、INSERT VALUES は不変 Payload と Compile 済み Command に結び付きます。
MCP Elicitation、公式 Webhook adapter、独自 IDmlApprovalProvider を使えますが、SQL 実行権限は渡しません。
Built-in MCP Surface は小さいままです。execute_dml_sql 自体がセミコロンで区切った UPDATE、DELETE、INSERT VALUES を 1 つ以上受け取り、Batch を 1 回だけ承認して 1 つの Transaction で commit します。どれかが stale または失敗なら全体を rollback します。
承認 Provider が受け取るのは transport-neutral Evidence です。Database Connection、Transaction、検証済み Plan、commit primitive は渡りません。検証、Evidence Binding、再検証、実行は hs-sql-agent が所有します。
非同期 Provider は Pending を返せます。後の完了 Decision では現在の認可と DB 設定を再読み込みし、DML を再 Parse / Preview して Evidence を比較し、新しい短命 Execution Challenge を作ります。