Skip to main content
Glama
CDT AutoCAD Provider

CDT AutoCAD Provider

transaction_begin

Starts a backend-tracked transaction on the bound drawing so multiple edits can be grouped into one undoable unit; document switching is blocked while active.

Instructions

Begin a backend-tracked transaction or undo scope on the bound document; nested depth is limited and document switching is blocked while active.

Side-effects: Starts undo group; blocks document switching. Disambiguation: Group multiple modifications into a single undoable unit.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "transaction_begin"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the minimal readOnlyHint=false annotation, the description discloses important behavior: it starts an undo group, blocks document switching while active, and has limited nested depth. These are exactly the side effects and operational constraints an agent needs before calling a transaction-begin tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it states the core action first, then notes side effects and disambiguation in clearly labeled lines. Every sentence adds useful information without repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no parameters and an output schema exists, so the description need not explain return values. It covers the essential behavioral context: transaction/undo scope, nesting limits, blocked document switching, and the intended grouping use case.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there are no parameter semantics for the description to explain. With schema coverage at 100% and no parameters to document, the baseline score of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: begin a backend-tracked transaction or undo scope on the bound document. It is immediately distinguishable from sibling tools such as transaction_commit, transaction_rollback, undo, and redo because it clearly describes opening a transaction/undo scope rather than ending or reversing one.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a clear usage context: group multiple modifications into a single undoable unit. It does not explicitly name transaction_commit or transaction_rollback as the follow-up alternatives, nor does it state when not to use this tool, so it falls short of full when/when-not/alternatives guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.