centre_marks draws ISO 128-23 centre marks or full centre lines and reads
each circle's real centre and radius back out of the drawing through
entity_get instead of being told them - a radius restated from memory is
the silent wrong number this repository keeps refusing to ship. A handle
that is not a CIRCLE or ARC, and a circle in a plane tilted out of WCS XY
(which has no radius in this frame), are both refused by handle before
anything is written. The dash proportions are not transcribed here: the
prims are plain lines on CENTER, whose linetype already carries them.
section_line draws the ISO 128-40 cutting-plane line - wide segments at
the ends on GEOMETRY, the thin long-dash-dot middle on CENTER, an arrow at
each end whose head sits on the line end and points the way the section is
viewed, the same letter beyond both arrows - and returns the five-key
plane dict {p1, p2, label, direction, style} that mech_view_add(kind=
"section") consumes, so the label on the plan and the label on the view
are the same string by construction. A viewing direction parallel to the
plane is refused rather than drawn.
hatch_material hatches through standards.materials.hatch_for, so the
ISO 128-50 map and its refusal stay in one place; scale multiplies the
material's own pattern scale and angle replaces its angle. An unknown
material is refused with the list before any entity is written.
DEVIATION - one defect in the plan's own draw_material_hatch, fixed here
with two tests that fail against the plan's code. It called
entity_create_hatch with ROLE_LAYER["hatch"] without creating that layer,
the same omission review found in Task 10's draw_annotation_prims.
MEASURED live on AutoCAD 2026 (probe: GetActiveObject, Documents.Add(),
doc.Close(False) in a finally): on a scratch document whose layer table is
['0'], msp.AddHatch(0, "ANSI31", False) + AppendOuterLoop + Evaluate()
leaves the AcDbHatch in model space, and the very next statement
hatch.Layer = "HATCH" - which is the one line _apply_entity_attrs runs -
raises com_error (-2147352567, ..., 'Key not found', ..., -2145386476);
model space then still reports [('AcDbHatch', '0')] and the layer table is
still ['0'], so the refusal leaves an orphan hatch on layer 0. After
doc.Layers.Add("HATCH") the same assignment succeeds. drawing_open runs no
bootstrap, which is exactly when a cut face has no HATCH layer to land on.
draw_material_hatch now calls ensure_annotation_layers before creating the
hatch and reports layer / layers_created, as draw_annotation_prims does.
The whole task re-measured live afterwards through ComBackend on a fresh
scratch document (layer table ['0']): hatch_material -> {'ok': True,
'handle': '82', 'pattern': 'ANSI31', 'layer': 'HATCH', 'layers_created':
['HATCH']} with the entity read back as HATCH on HATCH; centre_marks on a
live CIRCLE r=12.5 -> sources [{'handle': '84', 'center': [80.0, 0.0],
'radius': 12.5}]; section_line -> 9 entities and the five-key plane; layer
table after ['0', 'CENTER', 'GEOMETRY', 'HATCH', 'TEXT']; document closed.
tests/test_mech_marks.py: 17 passed. Gates: ruff check clean, inventory
regenerated to 209 tools, test_tool_registry (engineering 12 -> 15, total
206 -> 209), test_discovery_aliases, test_tool_inventory,
test_capability_contract and test_release_consistency all pass. Full
suite: 3343 passed, the 6 pre-existing failures verified identical with
this change stashed, and
test_release_consistency.py::test_document_numbers_match_the_tree
deselected as Global Constraints instructs.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FKFStjEFzpGyLq5bMpWxTd
3169 lines
76 KiB
JSON
3169 lines
76 KiB
JSON
{
|
|
"_comment": "GENERATED FILE - do not edit by hand. Derived from the live FastMCP component registry; regenerate with `python scripts/generate_tool_inventory.py`.",
|
|
"schema_version": 1,
|
|
"package_version": "1.5.1",
|
|
"totals": {
|
|
"tools": 209,
|
|
"resources": 8,
|
|
"prompts": 5,
|
|
"groups": 23
|
|
},
|
|
"groups": {
|
|
"analysis": 12,
|
|
"batch": 3,
|
|
"blocks": 9,
|
|
"corner_ops": 4,
|
|
"dimensions": 5,
|
|
"drawing": 11,
|
|
"engineering": 15,
|
|
"entity_creation": 18,
|
|
"entity_modification": 16,
|
|
"entity_query": 9,
|
|
"environment": 22,
|
|
"layers": 14,
|
|
"layouts": 12,
|
|
"page_setup": 6,
|
|
"pid": 9,
|
|
"premium": 12,
|
|
"solids": 5,
|
|
"styles": 10,
|
|
"system": 7,
|
|
"templates": 2,
|
|
"transactions": 3,
|
|
"validation": 1,
|
|
"view": 4
|
|
},
|
|
"tools": [
|
|
{
|
|
"name": "analysis_bounding_box",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Get the overall extents of everything drawn.",
|
|
"tags": [
|
|
"analysis",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing Bounding Box",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_entity_stats",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Count the drawing's objects, broken down by type and by layer.",
|
|
"tags": [
|
|
"analysis",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Entity Statistics",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_find_in_region",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "List everything that falls inside a rectangular window.",
|
|
"tags": [
|
|
"analysis",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Find Entities in Region",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_layer_stats",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Report how many entities, and which types, sit on each layer.",
|
|
"tags": [
|
|
"analysis",
|
|
"layer",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Layer Statistics",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_list_properties",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Dump every DXF property of one entity, like LIST.",
|
|
"tags": [
|
|
"analysis",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Entity Properties",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_measure_area",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Measure a polygon's area and perimeter from its vertices.",
|
|
"tags": [
|
|
"analysis",
|
|
"measure"
|
|
],
|
|
"annotations": {
|
|
"title": "Measure Area",
|
|
"readOnlyHint": true,
|
|
"idempotentHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_measure_distance",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Measure the gap between two points: distance, dx/dy and angle.",
|
|
"tags": [
|
|
"analysis",
|
|
"measure"
|
|
],
|
|
"annotations": {
|
|
"title": "Measure Distance",
|
|
"readOnlyHint": true,
|
|
"idempotentHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_measure_entity",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Area and perimeter of an existing entity, by handle.",
|
|
"tags": [
|
|
"analysis",
|
|
"measure"
|
|
],
|
|
"annotations": {
|
|
"title": "Measure Entity",
|
|
"readOnlyHint": true,
|
|
"idempotentHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_select_by_layer",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Grab the handles of everything sitting on one layer.",
|
|
"tags": [
|
|
"analysis",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Select Entities By Layer",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "analysis_select_by_type",
|
|
"group": "analysis",
|
|
"cost": "read",
|
|
"summary": "Grab the handles of every entity of one type: all the circles, all the lines.",
|
|
"tags": [
|
|
"analysis",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Select Entities By Type",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "batch_plot",
|
|
"group": "page_setup",
|
|
"cost": "mutate",
|
|
"summary": "Plot every sheet (or the named ones) to PDF; each sheet size is read back from its PDF.",
|
|
"tags": [
|
|
"export",
|
|
"layout",
|
|
"pagesetup",
|
|
"plot"
|
|
],
|
|
"annotations": {
|
|
"title": "Batch Plot",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "block_create_from_entities",
|
|
"group": "blocks",
|
|
"cost": "mutate",
|
|
"summary": "Turn existing entities into a reusable block definition.",
|
|
"tags": [
|
|
"block"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Block From Entities",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "block_define",
|
|
"group": "blocks",
|
|
"cost": "mutate",
|
|
"summary": "Define a block from typed primitives and attribute definitions, on both engines.",
|
|
"tags": [
|
|
"block",
|
|
"create"
|
|
],
|
|
"annotations": {
|
|
"title": "Define Block",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "block_explode",
|
|
"group": "blocks",
|
|
"cost": "destructive",
|
|
"summary": "Break a block reference apart into its component entities.",
|
|
"tags": [
|
|
"block"
|
|
],
|
|
"annotations": {
|
|
"title": "Explode Block",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "block_find_references",
|
|
"group": "blocks",
|
|
"cost": "read",
|
|
"summary": "Find every place a given block is inserted.",
|
|
"tags": [
|
|
"block",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Find Blocks By Name",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "block_get_attributes",
|
|
"group": "blocks",
|
|
"cost": "read",
|
|
"summary": "Read the tag/value pairs off a block reference.",
|
|
"tags": [
|
|
"block",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Get Block Attributes",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "block_insert",
|
|
"group": "blocks",
|
|
"cost": "mutate",
|
|
"summary": "Place a block, filling in its attribute values as you go.",
|
|
"tags": [
|
|
"block"
|
|
],
|
|
"annotations": {
|
|
"title": "Insert Block",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "block_list",
|
|
"group": "blocks",
|
|
"cost": "read",
|
|
"summary": "List the block definitions the drawing already carries.",
|
|
"tags": [
|
|
"block",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Blocks",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "block_set_attributes",
|
|
"group": "blocks",
|
|
"cost": "mutate",
|
|
"summary": "Fill in a block reference's attributes, such as title-block fields.",
|
|
"tags": [
|
|
"block"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Block Attributes",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "boundary_from_entities",
|
|
"group": "analysis",
|
|
"cost": "mutate",
|
|
"summary": "Join named entities into one closed boundary polyline.",
|
|
"tags": [
|
|
"analysis"
|
|
],
|
|
"annotations": {
|
|
"title": "Boundary from Entities",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "boundary_trace",
|
|
"group": "analysis",
|
|
"cost": "mutate",
|
|
"summary": "Trace the closed boundary around a point, like BOUNDARY.",
|
|
"tags": [
|
|
"analysis"
|
|
],
|
|
"annotations": {
|
|
"title": "Trace Boundary",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "cad_batch",
|
|
"group": "batch",
|
|
"cost": "destructive",
|
|
"summary": "Run an ordered list of tool calls in one round trip, binding results between steps.",
|
|
"tags": [
|
|
"batch"
|
|
],
|
|
"annotations": {
|
|
"title": "Batch: Run Tools",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "centre_marks",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw ISO 128-23 centre marks or centre lines on circles, read from the drawing.",
|
|
"tags": [
|
|
"engineering",
|
|
"mech"
|
|
],
|
|
"annotations": {
|
|
"title": "Centre Marks (ISO 128-23)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "construction_clear",
|
|
"group": "premium",
|
|
"cost": "destructive",
|
|
"summary": "Wipe the construction scaffolding off the drawing before finalize.",
|
|
"tags": [
|
|
"construction",
|
|
"premium"
|
|
],
|
|
"annotations": {
|
|
"title": "Construction: Clear (delete scaffold)",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "construction_xline",
|
|
"group": "premium",
|
|
"cost": "mutate",
|
|
"summary": "Lay down an infinite guide line to build geometry against.",
|
|
"tags": [
|
|
"construction",
|
|
"premium"
|
|
],
|
|
"annotations": {
|
|
"title": "Construction: XLine (infinite reference)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "datum_feature",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Mark a datum on a feature: filled triangle plus the boxed datum letter.",
|
|
"tags": [
|
|
"engineering",
|
|
"gdt"
|
|
],
|
|
"annotations": {
|
|
"title": "GD&T: Datum Feature (ISO 1101)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimension_aligned",
|
|
"group": "dimensions",
|
|
"cost": "mutate",
|
|
"summary": "Dimension the true distance between two points, along a slope.",
|
|
"tags": [
|
|
"annotation",
|
|
"dimension"
|
|
],
|
|
"annotations": {
|
|
"title": "Aligned Dimension",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimension_angular",
|
|
"group": "dimensions",
|
|
"cost": "mutate",
|
|
"summary": "Dimension the included angle between two rays from a vertex.",
|
|
"tags": [
|
|
"annotation",
|
|
"dimension"
|
|
],
|
|
"annotations": {
|
|
"title": "Angular Dimension",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimension_auto",
|
|
"group": "premium",
|
|
"cost": "mutate",
|
|
"summary": "Dimension a set of entities at once, as a chain, baseline or ordinate run.",
|
|
"tags": [
|
|
"dimension",
|
|
"premium"
|
|
],
|
|
"annotations": {
|
|
"title": "Dimension: Auto (chain / baseline / ordinate)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimension_diameter",
|
|
"group": "dimensions",
|
|
"cost": "mutate",
|
|
"summary": "Call out a hole or shaft diameter, optionally to a fit such as H7.",
|
|
"tags": [
|
|
"annotation",
|
|
"dimension"
|
|
],
|
|
"annotations": {
|
|
"title": "Diameter Dimension",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimension_linear",
|
|
"group": "dimensions",
|
|
"cost": "mutate",
|
|
"summary": "Dimension a horizontal or vertical size, with an ISO 129 tolerance or ISO 286 fit.",
|
|
"tags": [
|
|
"annotation",
|
|
"dimension"
|
|
],
|
|
"annotations": {
|
|
"title": "Linear Dimension",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimension_radius",
|
|
"group": "dimensions",
|
|
"cost": "mutate",
|
|
"summary": "Call out the radius of a circle or arc, optionally toleranced.",
|
|
"tags": [
|
|
"annotation",
|
|
"dimension"
|
|
],
|
|
"annotations": {
|
|
"title": "Radius Dimension",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimstyle_create",
|
|
"group": "styles",
|
|
"cost": "mutate",
|
|
"summary": "Create a dimension style from the ISO-25 or ANSI preset, with per-variable overrides.",
|
|
"tags": [
|
|
"create",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: Create Dimension Style",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimstyle_list",
|
|
"group": "styles",
|
|
"cost": "read",
|
|
"summary": "List dimension styles with their ISO-25/ANSI variables and the current one.",
|
|
"tags": [
|
|
"query",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: List Dimension Styles",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "dimstyle_modify",
|
|
"group": "styles",
|
|
"cost": "mutate",
|
|
"summary": "Change DIM* variables on an existing dimension style; reports only what moved.",
|
|
"tags": [
|
|
"modify",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: Modify Dimension Style",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dimstyle_set_current",
|
|
"group": "styles",
|
|
"cost": "safe",
|
|
"summary": "Make a dimension style current so new dimensions use it.",
|
|
"tags": [
|
|
"modify",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: Set Current Dimension Style",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "document_activate",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Switch which open document every later tool call targets.",
|
|
"tags": [
|
|
"drawing",
|
|
"environment"
|
|
],
|
|
"annotations": {
|
|
"title": "Activate Document",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "document_close",
|
|
"group": "environment",
|
|
"cost": "destructive",
|
|
"summary": "Close one open document by name; never drops unsaved work unless told to.",
|
|
"tags": [
|
|
"drawing",
|
|
"environment"
|
|
],
|
|
"annotations": {
|
|
"title": "Close Document",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "document_list",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "List the open documents: which is active, which have unsaved changes.",
|
|
"tags": [
|
|
"drawing",
|
|
"environment"
|
|
],
|
|
"annotations": {
|
|
"title": "List Documents",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_apply_iso_layers",
|
|
"group": "premium",
|
|
"cost": "mutate",
|
|
"summary": "Set up a standard ISO layer set with the right colours and lineweights.",
|
|
"tags": [
|
|
"layers",
|
|
"premium"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Apply ISO Layer Set (bootstrap)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_apply_standard",
|
|
"group": "styles",
|
|
"cost": "mutate",
|
|
"summary": "Put the drawing on ISO or ANSI in one call: dimstyle, text style, units, mech layers.",
|
|
"tags": [
|
|
"drawing",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Apply Drafting Standard",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_audit",
|
|
"group": "drawing",
|
|
"cost": "mutate",
|
|
"summary": "Scan the drawing for structural errors and repair what it finds.",
|
|
"tags": [
|
|
"cleanup",
|
|
"drawing"
|
|
],
|
|
"annotations": {
|
|
"title": "Audit Drawing",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_close",
|
|
"group": "drawing",
|
|
"cost": "destructive",
|
|
"summary": "Close the drawing, saving first unless you say otherwise.",
|
|
"tags": [
|
|
"drawing"
|
|
],
|
|
"annotations": {
|
|
"title": "Close Drawing",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_critique",
|
|
"group": "premium",
|
|
"cost": "read",
|
|
"summary": "Review the drawing for drafting mistakes: must come back empty before finalize.",
|
|
"tags": [
|
|
"premium",
|
|
"validation"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Critique (premium quality checks)",
|
|
"readOnlyHint": true,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_deliver",
|
|
"group": "engineering",
|
|
"cost": "destructive",
|
|
"summary": "Hand the drawing off: a hashed, validated bundle of files plus a manifest.",
|
|
"tags": [
|
|
"delivery",
|
|
"drawing",
|
|
"engineering",
|
|
"validation"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Deliver Auditable Bundle",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_export_dxf",
|
|
"group": "drawing",
|
|
"cost": "mutate",
|
|
"summary": "Write a DXF interchange copy of the drawing.",
|
|
"tags": [
|
|
"drawing",
|
|
"export"
|
|
],
|
|
"annotations": {
|
|
"title": "Export DXF"
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_export_pdf",
|
|
"group": "drawing",
|
|
"cost": "mutate",
|
|
"summary": "Plot the drawing, or one paper-space layout, to PDF.",
|
|
"tags": [
|
|
"drawing",
|
|
"export"
|
|
],
|
|
"annotations": {
|
|
"title": "Export PDF"
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_finalize",
|
|
"group": "engineering",
|
|
"cost": "destructive",
|
|
"summary": "Finish the drawing: validate, critique, save, screenshot and score it.",
|
|
"tags": [
|
|
"drawing",
|
|
"engineering",
|
|
"validation"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Finalize (validate + save + screenshot)",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_info",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Read the current drawing's name, path, extents and object counts.",
|
|
"tags": [
|
|
"drawing",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing Info",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_new",
|
|
"group": "drawing",
|
|
"cost": "mutate",
|
|
"summary": "Start a drawing: blank with the engineering layers, or from a bundled/own template.",
|
|
"tags": [
|
|
"drawing"
|
|
],
|
|
"annotations": {
|
|
"title": "New Drawing",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_open",
|
|
"group": "drawing",
|
|
"cost": "mutate",
|
|
"summary": "Load an existing DXF from disk (DWG only on the live AutoCAD backend).",
|
|
"tags": [
|
|
"drawing"
|
|
],
|
|
"annotations": {
|
|
"title": "Open Drawing"
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_plan",
|
|
"group": "premium",
|
|
"cost": "safe",
|
|
"summary": "Commit sheet size, scale, layer set and dimension style before any geometry.",
|
|
"tags": [
|
|
"planning",
|
|
"premium"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Plan (commit intent before drawing)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_preflight",
|
|
"group": "premium",
|
|
"cost": "read",
|
|
"summary": "Check the brief before you draw: units, part type, tolerances, missing inputs.",
|
|
"tags": [
|
|
"planning",
|
|
"premium",
|
|
"validation"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Preflight",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_properties_get",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "Read the drawing's title, subject, author, keywords, comments and custom properties.",
|
|
"tags": [
|
|
"drawing",
|
|
"environment",
|
|
"settings"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing Properties (read)",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_properties_set",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Set the drawing's summary fields and add, change or delete custom properties.",
|
|
"tags": [
|
|
"drawing",
|
|
"environment",
|
|
"settings"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing Properties (write)",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_purge",
|
|
"group": "drawing",
|
|
"cost": "destructive",
|
|
"summary": "Strip unused layers, blocks, linetypes and styles out of the file.",
|
|
"tags": [
|
|
"cleanup",
|
|
"drawing"
|
|
],
|
|
"annotations": {
|
|
"title": "Purge Drawing"
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_redo",
|
|
"group": "drawing",
|
|
"cost": "safe",
|
|
"summary": "Reapply the operation you just undid.",
|
|
"tags": [
|
|
"drawing",
|
|
"undo"
|
|
],
|
|
"annotations": {
|
|
"title": "Redo",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_refine",
|
|
"group": "premium",
|
|
"cost": "destructive",
|
|
"summary": "Auto-repair what the critique found, then re-check, up to three rounds.",
|
|
"tags": [
|
|
"modify",
|
|
"premium",
|
|
"validation"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing: Refine",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_save",
|
|
"group": "drawing",
|
|
"cost": "mutate",
|
|
"summary": "Write the drawing back to its file, or to a path you give.",
|
|
"tags": [
|
|
"drawing"
|
|
],
|
|
"annotations": {
|
|
"title": "Save Drawing"
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_save_as",
|
|
"group": "drawing",
|
|
"cost": "mutate",
|
|
"summary": "Save a copy under a new name; the extension picks DXF, DWG or DWT.",
|
|
"tags": [
|
|
"drawing"
|
|
],
|
|
"annotations": {
|
|
"title": "Save As"
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_settings",
|
|
"group": "system",
|
|
"cost": "safe",
|
|
"summary": "Read or change drawing units, precision, linetype and dimension scale by name.",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Drawing Settings (read / change)",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_template_list",
|
|
"group": "page_setup",
|
|
"cost": "read",
|
|
"summary": "List the five bundled drawing templates: standard, sheet, layers, styles, page setup.",
|
|
"tags": [
|
|
"drawing",
|
|
"pagesetup",
|
|
"query",
|
|
"template"
|
|
],
|
|
"annotations": {
|
|
"title": "List Drawing Templates",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_template_save",
|
|
"group": "page_setup",
|
|
"cost": "mutate",
|
|
"summary": "Save the current drawing as a template: .dwt on live AutoCAD, .dxf headlessly.",
|
|
"tags": [
|
|
"drawing",
|
|
"pagesetup",
|
|
"template"
|
|
],
|
|
"annotations": {
|
|
"title": "Save As Template",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "drawing_undo",
|
|
"group": "drawing",
|
|
"cost": "safe",
|
|
"summary": "Step back one operation.",
|
|
"tags": [
|
|
"drawing",
|
|
"undo"
|
|
],
|
|
"annotations": {
|
|
"title": "Undo",
|
|
"destructiveHint": false,
|
|
"idempotentHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_array_polar",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Repeat an entity around a centre: a bolt circle or radial pattern.",
|
|
"tags": [
|
|
"array",
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Polar Array",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_array_rectangular",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Repeat an entity in a grid of rows and columns.",
|
|
"tags": [
|
|
"array",
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Rectangular Array",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_batch_create",
|
|
"group": "batch",
|
|
"cost": "mutate",
|
|
"summary": "Draw many entities in one call instead of one round trip each.",
|
|
"tags": [
|
|
"batch",
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Batch Create Entities",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_batch_modify",
|
|
"group": "batch",
|
|
"cost": "destructive",
|
|
"summary": "Move, rotate, scale, restyle or delete many entities in one call.",
|
|
"tags": [
|
|
"batch",
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Batch Modify Entities",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_chamfer",
|
|
"group": "corner_ops",
|
|
"cost": "mutate",
|
|
"summary": "Bevel a corner between two lines by two setback distances.",
|
|
"tags": [
|
|
"corner",
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Chamfer Two Entities",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_change_space",
|
|
"group": "layouts",
|
|
"cost": "mutate",
|
|
"summary": "Move entities between model space and a sheet through a viewport.",
|
|
"tags": [
|
|
"layout",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Change Space",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_copy",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Duplicate an entity and offset the copy.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Copy Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_arc",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw a circular arc from a centre, a radius and two angles.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Arc",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_block_ref",
|
|
"group": "blocks",
|
|
"cost": "mutate",
|
|
"summary": "Drop an instance of an existing block definition into the drawing.",
|
|
"tags": [
|
|
"block",
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Insert Block Reference",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_circle",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw a circle: a hole, a bore, a pitch circle.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Circle",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_ellipse",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw an ellipse from its centre, major axis vector and axis ratio.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Ellipse",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_hatch",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Fill a closed boundary with a section pattern such as ANSI31 or SOLID.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Hatch",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_line",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw a straight line between two points.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Line",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_mtext",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Place a wrapped paragraph note in a text box of a given width.",
|
|
"tags": [
|
|
"annotation",
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create MText",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_point",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Place a point marker (node) at a coordinate.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Point",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_polyline",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw a connected outline or closed profile through a list of points.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Polyline",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_rectangle",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw a closed rectangle from two opposite corners.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Rectangle",
|
|
"readOnlyHint": false,
|
|
"idempotentHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_revcloud",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw a revision cloud around an area.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Revision Cloud",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_spline",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Draw a smooth NURBS curve through fit points.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Spline",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_table",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Place a parts list, BOM or schedule as a table with headers and rows.",
|
|
"tags": [
|
|
"annotation",
|
|
"create",
|
|
"entity",
|
|
"table"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Table",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_text",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Place a single-line text label.",
|
|
"tags": [
|
|
"annotation",
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Text",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_create_wipeout",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Mask whatever is behind a closed polygon on the sheet.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Wipeout",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_delete",
|
|
"group": "entity_modification",
|
|
"cost": "destructive",
|
|
"summary": "Erase one entity by handle.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Delete Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_delete_many",
|
|
"group": "entity_modification",
|
|
"cost": "destructive",
|
|
"summary": "Erase a whole list of entities in one call.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Delete Multiple Entities",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_edit_geometry",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Change a circle's radius, a line's endpoints or an arc's angles in place.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Edit Geometry",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_edit_text",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Reword a label, or change its height or rotation, keeping its handle.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Edit Text",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_extend",
|
|
"group": "corner_ops",
|
|
"cost": "mutate",
|
|
"summary": "Lengthen a line until it meets a boundary line.",
|
|
"tags": [
|
|
"corner",
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Extend Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_fillet",
|
|
"group": "corner_ops",
|
|
"cost": "mutate",
|
|
"summary": "Round a corner between two lines with a tangent arc.",
|
|
"tags": [
|
|
"corner",
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Fillet Two Entities",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_get",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Inspect one entity by handle: type, layer, colour and geometry.",
|
|
"tags": [
|
|
"entity",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Get Entity",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_get_xdata",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Read an entity's extended data (XDATA) by application name.",
|
|
"tags": [
|
|
"entity",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Get Entity XDATA",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_list",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Browse the drawing's entities and their handles, filtered by type or layer.",
|
|
"tags": [
|
|
"entity",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Entities",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_mirror",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Reflect an entity across a mirror line, keeping or dropping the original.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Mirror Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_move",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Shift an entity by a displacement vector.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Move Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_offset",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Make a parallel copy of a line, circle or polyline at a set distance.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Offset Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_rotate",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Turn an entity about a base point by an angle in degrees.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Rotate Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_scale",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Resize an entity uniformly about a base point.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Scale Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_select_smart",
|
|
"group": "premium",
|
|
"cost": "read",
|
|
"summary": "Pick every entity matching a description: type, layer, colour, length, location.",
|
|
"tags": [
|
|
"premium",
|
|
"select"
|
|
],
|
|
"annotations": {
|
|
"title": "Entity: Smart Select (semantic predicate)",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_set_properties",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Change an entity's layer, colour, linetype, lineweight or visibility.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Entity Properties",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_set_xdata",
|
|
"group": "entity_modification",
|
|
"cost": "safe",
|
|
"summary": "Attach or replace extended data (XDATA) on an entity.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Entity XDATA",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "entity_trim",
|
|
"group": "corner_ops",
|
|
"cost": "mutate",
|
|
"summary": "Cut a line back to where another crosses it, keeping the side you point at.",
|
|
"tags": [
|
|
"corner",
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Trim Entity",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "gd_frame",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw an ISO 1101 feature control frame: symbol, tolerance zone and datums.",
|
|
"tags": [
|
|
"engineering",
|
|
"gdt"
|
|
],
|
|
"annotations": {
|
|
"title": "GD&T: Feature Control Frame (ISO 1101)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "gear_draw_helical_front_view",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw a helical gear front view: true involute teeth, circles, bore and keyway.",
|
|
"tags": [
|
|
"engineering",
|
|
"gear"
|
|
],
|
|
"annotations": {
|
|
"title": "Gear: Helical Front View",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "gear_draw_section_aa",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw the hatched side cross-section A-A of a gear you already drew.",
|
|
"tags": [
|
|
"engineering",
|
|
"gear"
|
|
],
|
|
"annotations": {
|
|
"title": "Gear: Section A-A View",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "gear_draw_spur_front_view",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw a straight-tooth spur gear front view with true involute teeth.",
|
|
"tags": [
|
|
"engineering",
|
|
"gear"
|
|
],
|
|
"annotations": {
|
|
"title": "Gear: Spur Front View",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "hatch_add_boundary",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Add a boundary path to a hatch, arcs and ellipses included.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Add Hatch Boundary",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "hatch_edit",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Change a hatch's pattern, scale, angle, colour or island style.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Edit Hatch",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "hatch_material",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Hatch a region with the ISO 128-50 section pattern for a named material.",
|
|
"tags": [
|
|
"engineering",
|
|
"mech"
|
|
],
|
|
"annotations": {
|
|
"title": "Material Hatch (ISO 128-50)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "hatch_set_gradient",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Replace a hatch's fill with a two-colour gradient.",
|
|
"tags": [
|
|
"create",
|
|
"entity"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Hatch Gradient",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "keyway_draw_keyed_bore",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw a bore with a DIN 6885 keyway, auto-sized from the bore diameter.",
|
|
"tags": [
|
|
"engineering",
|
|
"keyway"
|
|
],
|
|
"annotations": {
|
|
"title": "Keyway: Keyed Bore (front view)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "keyway_draw_section",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw the side cross-section of a keyed bore.",
|
|
"tags": [
|
|
"engineering",
|
|
"keyway"
|
|
],
|
|
"annotations": {
|
|
"title": "Keyway: Side Section",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_create",
|
|
"group": "layers",
|
|
"cost": "mutate",
|
|
"summary": "Add a layer with a colour, linetype and lineweight.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Layer",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_delete",
|
|
"group": "layers",
|
|
"cost": "destructive",
|
|
"summary": "Remove an empty layer from the drawing.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Delete Layer",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_freeze",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Freeze a layer so it stops drawing and regenerating.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Freeze Layer"
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_hide",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Turn a layer off so its entities stop showing.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Hide Layer"
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_isolate",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Hide every layer except one, to work on it alone.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Isolate Layer",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_list",
|
|
"group": "layers",
|
|
"cost": "read",
|
|
"summary": "List every layer with its colour, linetype and visibility state.",
|
|
"tags": [
|
|
"layer",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Layers",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_lock",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Lock a layer so its entities can be seen but not edited.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Lock Layer"
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_modify",
|
|
"group": "layers",
|
|
"cost": "mutate",
|
|
"summary": "Change an existing layer's colour, linetype or lineweight.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Modify Layer",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_set_current",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Choose the layer that new geometry lands on.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Current Layer",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_show",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Turn a layer that was switched off back on.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Show Layer"
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_state_delete",
|
|
"group": "environment",
|
|
"cost": "destructive",
|
|
"summary": "Delete one saved layer state from the drawing.",
|
|
"tags": [
|
|
"environment",
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Delete Layer State",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_state_list",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "List the layer states saved in this drawing.",
|
|
"tags": [
|
|
"environment",
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "List Layer States",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_state_restore",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Restore a saved layer state, all properties or a chosen subset.",
|
|
"tags": [
|
|
"environment",
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Restore Layer State",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_state_save",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Save the layer table (on/frozen/locked/colour/linetype/lineweight/plot + current) under a name, in the file.",
|
|
"tags": [
|
|
"environment",
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Save Layer State",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_thaw",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Bring a frozen layer back into view.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Thaw Layer"
|
|
}
|
|
},
|
|
{
|
|
"name": "layer_unlock",
|
|
"group": "layers",
|
|
"cost": "safe",
|
|
"summary": "Unlock a layer so its entities can be edited again.",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"annotations": {
|
|
"title": "Unlock Layer"
|
|
}
|
|
},
|
|
{
|
|
"name": "layout_copy",
|
|
"group": "layouts",
|
|
"cost": "mutate",
|
|
"summary": "Duplicate a sheet with its page setup and geometry.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Copy Layout",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layout_create",
|
|
"group": "layouts",
|
|
"cost": "mutate",
|
|
"summary": "Add a new paper-space sheet tab to the drawing.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Layout",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layout_delete",
|
|
"group": "layouts",
|
|
"cost": "destructive",
|
|
"summary": "Delete a sheet tab and everything drawn on it.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Delete Layout",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "layout_list",
|
|
"group": "layouts",
|
|
"cost": "read",
|
|
"summary": "List the sheet tabs: Model plus every paper-space layout.",
|
|
"tags": [
|
|
"layout",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Layouts",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "layout_rename",
|
|
"group": "layouts",
|
|
"cost": "mutate",
|
|
"summary": "Rename a sheet tab, keeping its geometry and handles.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Rename Layout",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "layout_set_current",
|
|
"group": "layouts",
|
|
"cost": "safe",
|
|
"summary": "Switch to a sheet tab, or back to model space.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Current Layout"
|
|
}
|
|
},
|
|
{
|
|
"name": "leader_create_mleader",
|
|
"group": "entity_creation",
|
|
"cost": "mutate",
|
|
"summary": "Add a callout: an arrow with a note on the end.",
|
|
"tags": [
|
|
"annotation",
|
|
"create",
|
|
"entity",
|
|
"leader"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Multileader",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "linetype_list",
|
|
"group": "layers",
|
|
"cost": "read",
|
|
"summary": "List the dash patterns currently loaded in the drawing.",
|
|
"tags": [
|
|
"layer",
|
|
"linetype"
|
|
],
|
|
"annotations": {
|
|
"title": "List Loaded Linetypes",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "linetype_load",
|
|
"group": "layers",
|
|
"cost": "mutate",
|
|
"summary": "Load a linetype such as CENTER or HIDDEN, without the FILEDIA dialog trap.",
|
|
"tags": [
|
|
"layer",
|
|
"linetype"
|
|
],
|
|
"annotations": {
|
|
"title": "Load Linetype",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "mleaderstyle_create",
|
|
"group": "styles",
|
|
"cost": "mutate",
|
|
"summary": "Create a multileader style from the ISO or ANSI preset, on both engines.",
|
|
"tags": [
|
|
"create",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: Create Multileader Style",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "mleaderstyle_list",
|
|
"group": "styles",
|
|
"cost": "read",
|
|
"summary": "List multileader styles: arrow size, landing gap, text style and height.",
|
|
"tags": [
|
|
"query",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: List Multileader Styles",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "page_setup_apply",
|
|
"group": "page_setup",
|
|
"cost": "safe",
|
|
"summary": "Set a sheet's paper, orientation, ctb, plot scale and device (PAGESETUP).",
|
|
"tags": [
|
|
"layout",
|
|
"pagesetup",
|
|
"plot"
|
|
],
|
|
"annotations": {
|
|
"title": "Apply Page Setup",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "page_setup_list",
|
|
"group": "page_setup",
|
|
"cost": "read",
|
|
"summary": "Read each sheet's page setup: paper, orientation, ctb, scale, device.",
|
|
"tags": [
|
|
"layout",
|
|
"pagesetup",
|
|
"plot",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Page Setups",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_equipment_list",
|
|
"group": "pid",
|
|
"cost": "read",
|
|
"summary": "Equipment list derived from the P&ID graph (tag, kind, ports, connections); optional CSV.",
|
|
"tags": [
|
|
"pid",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Equipment List",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_from_spec",
|
|
"group": "pid",
|
|
"cost": "mutate",
|
|
"summary": "Draw a whole P&ID from one declarative spec in one transaction; returns graph + critique.",
|
|
"tags": [
|
|
"batch",
|
|
"create",
|
|
"pid"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: From Spec",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_graph",
|
|
"group": "pid",
|
|
"cost": "read",
|
|
"summary": "Read the P&ID back as a graph: symbols, lines, junctions, dangling ends, confidence.",
|
|
"tags": [
|
|
"pid",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Connectivity Graph",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_instrument_index",
|
|
"group": "pid",
|
|
"cost": "read",
|
|
"summary": "Instrument index derived from the P&ID graph (tag, function, loop, connections); optional CSV.",
|
|
"tags": [
|
|
"pid",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Instrument Index",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_line_draw",
|
|
"group": "pid",
|
|
"cost": "mutate",
|
|
"summary": "Draw a P&ID line port-to-port: orthogonal route, ISA-5.1 class, line number, markers, arrow.",
|
|
"tags": [
|
|
"create",
|
|
"pid"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Draw Line",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_line_list",
|
|
"group": "pid",
|
|
"cost": "read",
|
|
"summary": "Line list derived from the P&ID graph (number, class, size, spec, from/to); optional CSV.",
|
|
"tags": [
|
|
"pid",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Line List",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_symbol_insert",
|
|
"group": "pid",
|
|
"cost": "mutate",
|
|
"summary": "Place a P&ID symbol (valve, pump, vessel, instrument bubble, connector) as a tagged block with ports.",
|
|
"tags": [
|
|
"create",
|
|
"pid"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Insert Symbol",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_symbol_list",
|
|
"group": "pid",
|
|
"cost": "read",
|
|
"summary": "List the P&ID symbol catalogue: families, variants, ports, parameters.",
|
|
"tags": [
|
|
"pid",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Symbol Catalogue",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "pid_tag_parse",
|
|
"group": "pid",
|
|
"cost": "read",
|
|
"summary": "Parse an ISA-5.1 instrument tag or an equipment tag; explains every letter.",
|
|
"tags": [
|
|
"pid",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "P&ID: Parse Tag",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "plot_style_list",
|
|
"group": "page_setup",
|
|
"cost": "read",
|
|
"summary": "List the plot style tables (ctb): the AutoCAD catalogue, plus what is installed.",
|
|
"tags": [
|
|
"layout",
|
|
"pagesetup",
|
|
"plot",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Plot Styles",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "point_from_snap",
|
|
"group": "premium",
|
|
"cost": "read",
|
|
"summary": "Get an exact endpoint, midpoint, centre, quadrant or perpendicular foot.",
|
|
"tags": [
|
|
"premium",
|
|
"snap"
|
|
],
|
|
"annotations": {
|
|
"title": "Point: Snap (deterministic OSNAP)",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "point_intersection",
|
|
"group": "premium",
|
|
"cost": "read",
|
|
"summary": "Find where two lines or circles cross, exactly.",
|
|
"tags": [
|
|
"premium",
|
|
"snap"
|
|
],
|
|
"annotations": {
|
|
"title": "Point: Intersection (deterministic)",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "point_tangent",
|
|
"group": "premium",
|
|
"cost": "read",
|
|
"summary": "Find where a line from an outside point touches a circle.",
|
|
"tags": [
|
|
"premium",
|
|
"snap"
|
|
],
|
|
"annotations": {
|
|
"title": "Point: Tangent from external point",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "section_line",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw an ISO 128-40 cutting-plane line and return the plane the section view uses.",
|
|
"tags": [
|
|
"engineering",
|
|
"mech"
|
|
],
|
|
"annotations": {
|
|
"title": "Section Line (ISO 128-40)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "selection_filter",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Select entities by layer, type, colour, linetype or minimum area.",
|
|
"tags": [
|
|
"entity",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Select by Properties",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "selection_get",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Read what the user already picked in the AutoCAD viewport (COM backend).",
|
|
"tags": [
|
|
"entity",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Get Viewport Selection",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "selection_polygon",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Select entities inside or crossing an arbitrary polygon.",
|
|
"tags": [
|
|
"entity",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Select by Polygon",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "selection_window",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Select entities inside or crossing a rectangle.",
|
|
"tags": [
|
|
"entity",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "Select by Window",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "solid_boolean",
|
|
"group": "solids",
|
|
"cost": "destructive",
|
|
"summary": "Union, subtract or intersect two 3D solids; the tool solid is consumed.",
|
|
"tags": [
|
|
"solid"
|
|
],
|
|
"annotations": {
|
|
"title": "Solid: Boolean",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "solid_box",
|
|
"group": "solids",
|
|
"cost": "mutate",
|
|
"summary": "Create a 3D solid box (live AutoCAD, opt-in via ENABLE_3D).",
|
|
"tags": [
|
|
"solid"
|
|
],
|
|
"annotations": {
|
|
"title": "Solid: Box",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "solid_cylinder",
|
|
"group": "solids",
|
|
"cost": "mutate",
|
|
"summary": "Create a 3D solid cylinder or shaft (live AutoCAD, opt-in via ENABLE_3D).",
|
|
"tags": [
|
|
"solid"
|
|
],
|
|
"annotations": {
|
|
"title": "Solid: Cylinder",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "solid_extrude",
|
|
"group": "solids",
|
|
"cost": "mutate",
|
|
"summary": "Pull a closed profile up into a 3D solid (live AutoCAD, opt-in via ENABLE_3D).",
|
|
"tags": [
|
|
"solid"
|
|
],
|
|
"annotations": {
|
|
"title": "Solid: Extrude",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "solid_revolve",
|
|
"group": "solids",
|
|
"cost": "mutate",
|
|
"summary": "Spin a closed profile around an axis into a 3D solid (opt-in via ENABLE_3D).",
|
|
"tags": [
|
|
"solid"
|
|
],
|
|
"annotations": {
|
|
"title": "Solid: Revolve",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "surface_texture",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw an ISO 21920-1 surface-texture symbol: Ra/Rz, process, lay, allowance.",
|
|
"tags": [
|
|
"engineering",
|
|
"mech"
|
|
],
|
|
"annotations": {
|
|
"title": "Surface Texture Symbol (ISO 21920-1)",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "system_about",
|
|
"group": "system",
|
|
"cost": "read",
|
|
"summary": "See what this server can do: version, tool groups and active profile.",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Backend Info",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "system_capabilities",
|
|
"group": "entity_query",
|
|
"cost": "read",
|
|
"summary": "Ask the active backend which features it really supports.",
|
|
"tags": [
|
|
"query",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Backend Capabilities",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "system_get_variable",
|
|
"group": "system",
|
|
"cost": "read",
|
|
"summary": "Read one AutoCAD system variable, such as DIMSCALE or LTSCALE.",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Get System Variable",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "system_launch",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Attach to the running AutoCAD or start it, optionally opening a file (live only).",
|
|
"tags": [
|
|
"environment",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Launch / Attach AutoCAD",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "system_preferences_get",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "Read AutoCAD preferences from the whitelist (OPTIONS dialog values; live only).",
|
|
"tags": [
|
|
"environment",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Get Preferences",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "system_preferences_set",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Change one whitelisted AutoCAD preference; reports old and new (live only).",
|
|
"tags": [
|
|
"environment",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Preference",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "system_prompt_message",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Print a message on AutoCAD's command line (live only).",
|
|
"tags": [
|
|
"environment",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Command-Line Message",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "system_run_command",
|
|
"group": "system",
|
|
"cost": "escape",
|
|
"summary": "Send a raw command string to the AutoCAD command line (COM only).",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Run AutoCAD Command",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "system_run_lisp",
|
|
"group": "system",
|
|
"cost": "escape",
|
|
"summary": "Evaluate an AutoLISP expression inside AutoCAD (COM only).",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Execute AutoLISP",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "system_set_variable",
|
|
"group": "system",
|
|
"cost": "safe",
|
|
"summary": "Set one AutoCAD system variable by name.",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Set System Variable",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "system_status",
|
|
"group": "system",
|
|
"cost": "read",
|
|
"summary": "Check the connection: which engine is live and what document is open.",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Server Status",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "system_variable_describe",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "Explain a system variable: type, range, default, where it is saved, which engine honours it.",
|
|
"tags": [
|
|
"environment",
|
|
"settings",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Describe System Variable",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "template_apply_layers",
|
|
"group": "templates",
|
|
"cost": "mutate",
|
|
"summary": "Create a standard layer set: architectural, mechanical, electrical or piping.",
|
|
"tags": [
|
|
"layer",
|
|
"template"
|
|
],
|
|
"annotations": {
|
|
"title": "Apply Layer Template",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "template_list",
|
|
"group": "templates",
|
|
"cost": "read",
|
|
"summary": "Show the available layer templates and the layers in each.",
|
|
"tags": [
|
|
"query",
|
|
"template"
|
|
],
|
|
"annotations": {
|
|
"title": "List Available Templates",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "text_find_replace",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Find and replace text across the drawing.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Find and Replace Text",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "text_set_background",
|
|
"group": "entity_modification",
|
|
"cost": "mutate",
|
|
"summary": "Put an opaque background box behind an MTEXT.",
|
|
"tags": [
|
|
"entity",
|
|
"modify"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Text Background",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "textstyle_create",
|
|
"group": "styles",
|
|
"cost": "mutate",
|
|
"summary": "Create a text style from a bundled font (isocp, isocpeur, arial, romans) or any file.",
|
|
"tags": [
|
|
"create",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: Create Text Style",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "textstyle_list",
|
|
"group": "styles",
|
|
"cost": "read",
|
|
"summary": "List text styles: font file, height, width factor, oblique angle.",
|
|
"tags": [
|
|
"query",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: List Text Styles",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "textstyle_set_current",
|
|
"group": "styles",
|
|
"cost": "safe",
|
|
"summary": "Make a text style current so new text uses it.",
|
|
"tags": [
|
|
"modify",
|
|
"style"
|
|
],
|
|
"annotations": {
|
|
"title": "Styles: Set Current Text Style",
|
|
"readOnlyHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "titleblock_apply_iso_a3",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Stamp an ISO 7200 title block and sheet frame onto an A3 drawing.",
|
|
"tags": [
|
|
"engineering",
|
|
"titleblock"
|
|
],
|
|
"annotations": {
|
|
"title": "TitleBlock: ISO A3",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "transaction_begin",
|
|
"group": "transactions",
|
|
"cost": "mutate",
|
|
"summary": "Open a rollback checkpoint before a risky edit.",
|
|
"tags": [
|
|
"transaction"
|
|
],
|
|
"annotations": {
|
|
"title": "Begin Transaction",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "transaction_commit",
|
|
"group": "transactions",
|
|
"cost": "safe",
|
|
"summary": "Keep the changes and drop the checkpoint.",
|
|
"tags": [
|
|
"transaction"
|
|
],
|
|
"annotations": {
|
|
"title": "Commit Transaction",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "transaction_rollback",
|
|
"group": "transactions",
|
|
"cost": "destructive",
|
|
"summary": "Throw away every change made since transaction_begin.",
|
|
"tags": [
|
|
"transaction"
|
|
],
|
|
"annotations": {
|
|
"title": "Rollback Transaction",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "ucs_list",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "List the user coordinate systems, with the implicit world one.",
|
|
"tags": [
|
|
"environment",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "List UCS",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "ucs_restore",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Make a saved UCS current, or `world` to reset to WCS.",
|
|
"tags": [
|
|
"environment",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Restore UCS",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "ucs_set",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Define (or replace) a named UCS from an origin and two perpendicular axes, and make it current.",
|
|
"tags": [
|
|
"environment",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Set UCS",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "user_pick_point",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "Ask the operator to pick a point on screen (live only; blocks until they do).",
|
|
"tags": [
|
|
"environment",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Ask Operator: Pick Point",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "user_select",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "Ask the operator to select one entity or a set on screen (live only).",
|
|
"tags": [
|
|
"environment",
|
|
"system"
|
|
],
|
|
"annotations": {
|
|
"title": "Ask Operator: Select",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "validation_check",
|
|
"group": "validation",
|
|
"cost": "read",
|
|
"summary": "Sanity-check the drawing for empty layers, zero-length lines and duplicates.",
|
|
"tags": [
|
|
"analysis",
|
|
"validation"
|
|
],
|
|
"annotations": {
|
|
"title": "Validate Drawing",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "view_named_list",
|
|
"group": "environment",
|
|
"cost": "read",
|
|
"summary": "List the named views saved in this drawing.",
|
|
"tags": [
|
|
"environment",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "List Named Views",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "view_named_restore",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Restore a named view.",
|
|
"tags": [
|
|
"environment",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Restore Named View",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "view_named_save",
|
|
"group": "environment",
|
|
"cost": "safe",
|
|
"summary": "Save a named view: a centre and height (and width) to come back to.",
|
|
"tags": [
|
|
"environment",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Save Named View",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "view_screenshot",
|
|
"group": "view",
|
|
"cost": "read",
|
|
"summary": "Capture a PNG picture of the drawing as it currently looks.",
|
|
"tags": [
|
|
"screenshot",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Screenshot",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "view_zoom_and_screenshot",
|
|
"group": "view",
|
|
"cost": "read",
|
|
"summary": "Fit the drawing on screen, then capture it: the quickest visual check.",
|
|
"tags": [
|
|
"screenshot",
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Zoom and Screenshot",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "view_zoom_extents",
|
|
"group": "view",
|
|
"cost": "safe",
|
|
"summary": "Zoom out until every entity fits on screen.",
|
|
"tags": [
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Zoom Extents",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "view_zoom_window",
|
|
"group": "view",
|
|
"cost": "safe",
|
|
"summary": "Zoom in on a rectangular region of the drawing.",
|
|
"tags": [
|
|
"view"
|
|
],
|
|
"annotations": {
|
|
"title": "Zoom Window",
|
|
"readOnlyHint": false,
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "viewport_create",
|
|
"group": "layouts",
|
|
"cost": "mutate",
|
|
"summary": "Put a scaled window onto model space on a sheet, at 1:1, 1:2 and so on.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Create Viewport",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "viewport_delete",
|
|
"group": "layouts",
|
|
"cost": "destructive",
|
|
"summary": "Remove a viewport from a sheet.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Delete Viewport",
|
|
"destructiveHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "viewport_list",
|
|
"group": "layouts",
|
|
"cost": "read",
|
|
"summary": "List the viewports on a sheet with their scales and locks.",
|
|
"tags": [
|
|
"layout",
|
|
"query"
|
|
],
|
|
"annotations": {
|
|
"title": "List Viewports",
|
|
"readOnlyHint": true
|
|
}
|
|
},
|
|
{
|
|
"name": "viewport_lock",
|
|
"group": "layouts",
|
|
"cost": "safe",
|
|
"summary": "Lock a viewport so its scale cannot be zoomed away.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Lock Viewport"
|
|
}
|
|
},
|
|
{
|
|
"name": "viewport_set_scale",
|
|
"group": "layouts",
|
|
"cost": "mutate",
|
|
"summary": "Set a viewport's scale, e.g. 1:2 or 1:50.",
|
|
"tags": [
|
|
"layout"
|
|
],
|
|
"annotations": {
|
|
"title": "Set Viewport Scale",
|
|
"destructiveHint": false
|
|
}
|
|
},
|
|
{
|
|
"name": "weld_symbol",
|
|
"group": "engineering",
|
|
"cost": "mutate",
|
|
"summary": "Draw an ISO 2553 weld symbol: reference line, identification line, size and pitch.",
|
|
"tags": [
|
|
"engineering",
|
|
"mech"
|
|
],
|
|
"annotations": {
|
|
"title": "Weld Symbol (ISO 2553)",
|
|
"destructiveHint": false
|
|
}
|
|
}
|
|
],
|
|
"resources": [
|
|
{
|
|
"uri": "autocad://blocks",
|
|
"name": "Block Library",
|
|
"description": "All block definitions in the current drawing",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"block"
|
|
],
|
|
"templated": false,
|
|
"parameters": []
|
|
},
|
|
{
|
|
"uri": "autocad://drawing/info",
|
|
"name": "Current Drawing Info",
|
|
"description": "Metadata for the currently open drawing",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"drawing"
|
|
],
|
|
"templated": false,
|
|
"parameters": []
|
|
},
|
|
{
|
|
"uri": "autocad://entities/stats",
|
|
"name": "Entity Statistics",
|
|
"description": "Entity counts by type and layer",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"analysis"
|
|
],
|
|
"templated": false,
|
|
"parameters": []
|
|
},
|
|
{
|
|
"uri": "autocad://entities/{layer_name}",
|
|
"name": "Entities By Layer",
|
|
"description": "List all entities on a specific layer",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"entity",
|
|
"layer"
|
|
],
|
|
"templated": true,
|
|
"parameters": [
|
|
"layer_name"
|
|
]
|
|
},
|
|
{
|
|
"uri": "autocad://layers",
|
|
"name": "Layer List",
|
|
"description": "All layers in the current drawing with properties",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"layer"
|
|
],
|
|
"templated": false,
|
|
"parameters": []
|
|
},
|
|
{
|
|
"uri": "autocad://pid/symbols",
|
|
"name": "P&ID Symbol Catalogue",
|
|
"description": "Every P&ID symbol pid_symbol_insert can place: families, variants, ports, parameters",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"pid"
|
|
],
|
|
"templated": false,
|
|
"parameters": []
|
|
},
|
|
{
|
|
"uri": "autocad://standards/isa51",
|
|
"name": "ISA-5.1 Identification Letters",
|
|
"description": "ISA-5.1-2009 Table 4.1 letter tables, the tag grammar and its disambiguation rules",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"pid",
|
|
"standards"
|
|
],
|
|
"templated": false,
|
|
"parameters": []
|
|
},
|
|
{
|
|
"uri": "autocad://system/status",
|
|
"name": "Server Status",
|
|
"description": "AutoCAD MCP Pro server and backend status",
|
|
"mime_type": "application/json",
|
|
"tags": [
|
|
"system"
|
|
],
|
|
"templated": false,
|
|
"parameters": []
|
|
}
|
|
],
|
|
"prompts": [
|
|
{
|
|
"name": "prompt_electrical_schematic",
|
|
"description": "Generate a prompt for creating an electrical schematic diagram.",
|
|
"tags": [
|
|
"electrical",
|
|
"template"
|
|
],
|
|
"arguments": [
|
|
{
|
|
"name": "circuit_name",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "voltage",
|
|
"required": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "prompt_floor_plan",
|
|
"description": "Generate a prompt for creating a floor plan drawing.",
|
|
"tags": [
|
|
"architectural",
|
|
"template"
|
|
],
|
|
"arguments": [
|
|
{
|
|
"name": "building_name",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "scale",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "units",
|
|
"required": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "prompt_mechanical_drawing",
|
|
"description": "Generate a prompt for creating a mechanical engineering drawing.",
|
|
"tags": [
|
|
"mechanical",
|
|
"template"
|
|
],
|
|
"arguments": [
|
|
{
|
|
"name": "part_name",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "material",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "scale",
|
|
"required": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "prompt_pid_diagram",
|
|
"description": "Generate a prompt for creating a P&ID (Piping and Instrumentation Diagram).",
|
|
"tags": [
|
|
"pid",
|
|
"template"
|
|
],
|
|
"arguments": [
|
|
{
|
|
"name": "project_name",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "revision",
|
|
"required": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "prompt_quick_drawing",
|
|
"description": "Generate step-by-step instructions for creating a drawing from a description.",
|
|
"tags": [
|
|
"template",
|
|
"utility"
|
|
],
|
|
"arguments": [
|
|
{
|
|
"name": "description",
|
|
"required": true
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|