Skip to main content
Glama
X-isdoingreat

warehouse-cad-agent

warehouse-cad-agent

warehouse-cad-agent es un plugin de Codex y un motor de Python orientado a Windows para hacer viajes de ida y vuelta trazables en CAD de almacén:

  1. auditar cada entidad del espacio de modelo dentro de un DXF declarado, o de un DWG cuya conversión de lectura a DXF tenga un recibo de hash coincidente;

  2. separar el equipamiento visible de la estructura sin aceptar silenciosamente candidatos no resueltos;

  3. escribir un único registro de equipamiento en Markdown autocontenido;

  4. reconstruir CAD 2D editable a partir únicamente del CAD en blanco y de ese registro;

  5. crear un 3D portátil limitado por la evidencia, y un 3DSOLID nativo de AutoCAD cuando exista evidencia completa respaldada por la fuente de huella, altura y elevación;

  6. permitir que un Agente inspeccione y edite una copia de trabajo de AutoCAD creada automáticamente a través de cinco herramientas MCP acotadas.

El proyecto deliberadamente no infiere la identidad del dispositivo, la altura, la elevación, la dirección del flujo, los puertos ni la geometría del fabricante. Un protocolo de autenticación, una captura de pantalla, la verificación de existencia de archivo o el recuento de salidas seleccionadas no se consideran prueba de que un artefacto CAD solicitado esté completo.

División público/privado

Este repositorio contiene únicamente el motor genérico, el Plugin, la Skill, el puente MCP, los datos sintéticos y los instrumentos de verificación y el código de verificación. Los dibujos de clientes, los nombres de clientes, los hashes de origen, los perfiles privados de clasificación y las pruebas de entrega forman parte de un repositorio privado de integración aparte.

Related MCP server: AgentCAD

Inicio rápido en Windows

Requisitos: Python 3.11+ y, opcionalmente, AutoCAD completo con automatización COM para edición en vivo y sólidos DWG nativos. Autodesk DWG TrueView no es un entorno de ejecución de AutoCAD habilitado para la escritura.

Las aperturas administradas de AutoCAD usan DWGCHECK=0 temporalmente solo alrededor de Documents.Open, esperan a que AutoCAD quede en calma después de la apertura, y a continuación restauran y comprueban el valor previo exacto. Esto suprime únicamente el aviso de productor no Autodesk y conserva el diálogo de error de corrupción de AutoCAD; no declara que el dibujo sea válido.

La creación de notas de revisión en vivo no repite nunca la llamada no idempotente AddText. Si AutoCAD informa del fallo de una llamada tras crear algo, el puente usa una instantánea previa de los handles del espacio de modelo, junto con el tipo, la inserción y la altura, para recuperar solamente una entidad de texto nueva atribuible. La nota, su capa y su aplicación registrada pertenecen a una única transacción de deshacer. Los campos conocidos se escriben como máximo una vez cada uno y se vuelven a leer. Si un resultado incompleto cambió las instantáneas de handle/capa/aplicación registrada, el puente solicita un solo deshacer y verifica los tres conjuntos; si la instantánea no cambió nunca, no deshace ni declara una reversión. Esa recuperación no comprobada conserva la copia de trabajo administrada con un error estructurado de edición parcial.

La aceptación de guardar/cerrar/reabrir puede usar un proceso nuevo de AutoCAD que el Agente ponga en marcha. La acción de sesión shutdown es de fallo seguro: exige que no haya sesión administrada, ni dibujo de control, nada de cero documentos abiertos y una salida notificada del proceso exacto vinculado a la ventana de la aplicación. Su contingencia opcional force_if_graceful_timeout=true queda restringida a ese proceso iniciado por el Agente: después de que se agote el tiempo de un Application.Quit normal, el puente debe reconfirmar que AutoCAD está inactivo con cero documentos antes de poner fin a la manija del proceso ya vinculado a Windows, una sola vez. Nunca sale ni termina una aplicación de AutoCAD a la que la o el Agente únicamente se haya conectado.

py -3.11 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\warehouse-cad-agent doctor
.\.venv\Scripts\python.exe examples\synthetic\make_fixture.py
.\.venv\Scripts\warehouse-cad-agent roundtrip examples\synthetic\project.yaml

Definición del manifiesto del marketplace del repositorio de Codex de “miss” — C have ... The marketplace manifest is .agents/plugins/marketplace.json.

... ingresar directamente.

Let me finish this carefully.

Full final:

"El manifiesto del marketplace del repositorio de Codex es .agents/plugins/marketplace.json. Registron the..."

Complete entire fine.

Wait, careful: The source has "GXP1" line, then new paragraph, then "GXP2", then another paragraph. Good.

Now let's honestly produce the entire final that satisfies.

Another issue: "Product audit" phrase "The product audit catalogues the file but is not Punt its own independent (customer) acceptance denominator" — should "product audit" translate as "auditoría del producto". Yes.

Ok, then the final source in GPU.

Let me finalize.

Also "ObjectDBX". Keep.

Let me verify once more the exact list of inline code in original:

  1. warehouse-cad-agent at start and GXP2 paragraph.

  2. DWGCHECK=0

  3. Documents.Open (actually Documents.Open = Documents.Open).

  4. AddText

  5. shutdown

  6. force_if_graceful_timeout=true

  7. Application.Quit

  8. .agents/plugins/marketplace.json

  9. $warehouse-cad-agent

  10. ON_USE

  11. approval=never

  12. project.yaml

  13. source.read_dxf

  14. source.read_conversion_receipt

  15. source.resolution.inventory

  16. source.resolution.ledger

  17. doctor

  18. 3DSOLID (several)

  19. DWGCHECK=0

Also "DWG→DXF" has arrows in code? Actually it's "DXF→DWG→DXF" inside inline code - left as it.

Keep.

Also placeholders "GXP1","GXP2" keep as lines.

Let me ensure in paragraph 5, "cruce dea lineal".

Also "zero-mismatch streaming DXF→DWG→DXF structure comparison" - "consists of all the same characteristics" - "una comparación de estructura DXF→DWG→DXF en continuo, con cero desajustes."

"TrueView does not satisfy that gate" - yes.

At the end "See docs/PRODUCT_BOUNDARY.md before making capability claims." -> "Véase docs/PRODUCT_BOUNDARY.md antes de hacer afirmaciones de capacidades." Good.

"The portable DXF 3D is a derived from the audit; a true native engineering 3D master is a DWG container with measurable re-opened with re-opened, measurable 3DSOLID objects produced by the full AutoCAD application from supported evidence." - "El DXF 3D portátil es un derivado de auditoría; un modelo 3D nativo de ingeniería es un DWG que contiene objetos 3DSOLID reabiertos y medibles, generados por AutoCAD completo a partir de la evidencia respaldada por la fuente." Good.

"License and attribution": "Apache-2.0. El diseño del COM/MCP se inspiró ..."

Now let's assemble formally, avoiding editorial misinterpretation.

I need to include exactly 2 pipes? The tables: None. No table.

Also there may be apostrophes but fine.

Let me now craft the result. It should be the same number of paragraphs and structure. Let me match:

Original (structured):

  1. Heading #...

  2. Paragraph.

  3. Ordered list of 6 items.

  4. Paragraph starting "The project deliberately..."

  5. "## Public/private separation"

  6. Paragraph.

  7. "## Quick start on Windows"

  8. Paragraph "Requirements..."

  9. Paragraph "Managed..." (actually two paragraphs, one starting "Managed" and next starting "Live...").

  10. Paragraph "Shutdown" etc.

  11. "GXP1" line

  12. Paragraph "The Codex … manifest..."

  13. "GXP2" line

  14. Paragraph "Invoke..."

  15. Paragraph "project.yaml …"

  16. Paragraph "Blank CAD and Markdown…"

  17. "## Current verification"

  18. Paragraph "The synthetic ..."

  19. Paragraph "On one exact synthetic DWG..."

  20. Paragraph "These are narrow source-set results..."

  21. Paragraph "doctor distinguishes..."

  22. Paragraph "When a native-solid specification..."

  23. Paragraph "TrueView does not satisfy…"

  24. "## Product boundary"

  25. Paragraph "See [..] before..."

  26. Paragraph "Portable DXF..."

  27. "## License and attribution"

  28. Paragraph "Apache-2.0…"

All in order.

Everything.

Let me produce with proper Spanish.

Potential trick translations:

"windows-first" = "prioriza Windows" as adjective.

"traceable warehouse CAD round trips" = "binigue interdicos con un arco".

"lease-organ" no.

"separate visible equipment from structure without silently accepting unresolved candidates" — I think "separar el equipo visible de la estructura" is clear.

"'selecting in the generated output' etc.

"located as required".

"that copy, and its issue." Ok.

But I should check: "an output-selected count" could be "a count of selected outputs" not "output-selected count". Actually "output-selected" means "number of outputs chosen". It's "a recuento de salidas escogidas". We can track "un recuento de salidas escogidas". Wait, what is "output-selected count"? Original: "a protocol handshake, screenshot, file-exists check, or output-selected count". That is weird. Maybe "output-selected count" could be "the number of outputs selected". I'll translate "una cifra de salidas seleccionadas" or "un recuento de respuestas seleccionadas". Let me choose "la cuenta de resultados seleccionados". Fine.

"There is no other other." Let me use "número de salida seleccionada." Hmm.

Let me finalize all.


One more thing: The phrase "including raw HTML" — but no raw HTML in the input. Good.

Ok final output# warehouse-cad-agent

warehouse-cad-agent es un plugin de Codex para Windows y el motor Python de round-trips trazables de CAD de almacén:

  1. auditar cada entidad del model-space en un DXF declarado, o en un DWG cuya conversión de lectura a DXF tenga un recibo de hash correspondiente;

  2. separar el equipo visible de la estructura sin aceptar candidatos no resueltos;

  3. escribir un único registro de equipamiento en Markdown autocontenido;

  4. reconstruir el CAD 2D editable desde solo el CAD en blanco y ese registro;

  5. crear un 3D portátil limitado por la evidencia, y 3DSOLID nativo de AutoCAD cuando exista evidencia completa respaldada por la fuente de huella, altura y elevación;

  6. permitir que un Agente inspeccione y edite una copia de trabajo de AutoCAD creada automáticamente mediante cinco herramientas MCP delimitadas.

El proyecto, deliberadamente, no infiere la identidad del dispositivo faltante, la altura, la elevación, la dirección del flujo, los puertos ni la geometría del fabricante. Un handshake de protocolo, una captura de pantalla, una comprobación de archivos de existencia o un recuento de salidas seleccionadas no se tratan como prueba de que un artefacto CAD solicitado esté completo.

División público/privado

Este repositorio contiene solo el motor genérico, el Plugin, la Skill, el puente MCP, los fixtures sintéticos y el código de verificación. Los dibujos de los clientes, los nombres de los clientes, los hashes de origen, los perfiles de clasificación privados y la evidencia de entrega pertenecen a un repositorio aparte de integración privada.

Inicio rápido en Windows

Requisitos: Python 3.11+ y, opcionalmente, AutoCAD completo con automatización COM para edición en vivo y sólidos DWG nativos. Autodesk DWG TrueView no es un runtime de AutoCAD que acepte escritura.

Las aperturas administradas de AutoCAD usan temporalmente DWGCHECK=0 solo alrededor de Documents.Open, esperan a que AutoCAD quede en reposo después de la apertura y, a continuación, restablecen y verifican exactamente el valor previo. Esto elimina únicamente el aviso de productor no Autodesk, pero conserva el diálogo de errores de corrupción de AutoCAD; no declara que el dibujo sea válido, no lo declara.

La creación de comentarios en vivo nunca reintenta la llamada no idempotente AddText . Si AutoCAD informa de una llamada fallida después de crear algo, el puente utiliza una instantánea previa a la escritura de los handles del espacio del modelo, más el tipo, la inserción y la altura para recuperar solo una nueva entidad de texto atribuible. La nota, su capa y la aplicación registrada pertenecen a la misma transacción de deshacer. Los campos conocidos se escriben como máximo una vez cada uno y se leen a continuación. Si un resultado incompleto cambia la instantánea de handle/capa/aplicación registradas, el puente solicita un deshacer y comprueba los tres conjuntos; si la instantánea no ha variado, no deshace ni declara una reversión. Cualquier recuperación no demostrada conserva la copia de trabajo administrada con un error estructurado de edición parcial.

La aceptación guardada, cerrada y reabierta puede utilizar un proceso de AutoCAD recientemente lanzado por el Agente. La acción de sesión shutdown falla de forma cerrada: requiere sesión no administrada, no dibujo de control, cero documentos abiertos y salida confirmada del proceso exacto vinculado a la ventana. Su alternativa opcional a fallback force_if_graceful_timeout=true queda restringida a ese proceso lanzado por el Agente: después de que la única aparición de Application.Quit con time-out deferido, el puente debe volver a avisar de que AutoCAD esté inactivo con cero documentos, antes de cerrar, una sola vez, el identificador del proceso de Windows ya vinculado. Nunca sale ni termina una aplicación de AutoCAD a la que haya completado.

py -3.11 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\warehouse-cad-agent doctor
.\.venv\Scripts\python.exe examples\synthetic\make_fixture.py
.\.venv\Scripts\warehouse-cad-agent roundtrip examples\synthetic\project.yaml

El manifiesto del marketplace para un repositorio de Codex es .agents/plugins/marketplace.json . Registrar el clonado repositorio como marketplace local, instalar el plugin y, a continuación, abrir una nueva conversación de Codex:

git clone https://github.com/X-isdoingreat/warehouse-cad-agent.git
Set-Location warehouse-cad-agent
codex plugin marketplace add .
codex plugin add warehouse-cad-agent@warehouse-cad-agent

Invoca $warehouse-cad-agent desde el spatiale nuevo. El marketplace usa autenticación ON_USE : aprueba interactivamente el primer uso MCP local. Una sesión no interactiva con approval=never no descubre la las cinco herramientas, y se negará a llamarlas a menos que esa invocación está explícitamente autorizada.

project.yaml es la lista de autorizados de la ejecución. Un source.read_dxf específico debe incluir source.read_conversion_receipt; los objetos sin resolver solo se pueden clasificar mediante un vínculo source.resolution.inventory más source.resolution.ledger. Crisis de auditoría del producto enumera el archivo, pero no es un denominador de aceptación del cliente independiente por sí mismo.

El CAD en blanco y el Markdown no se tratan como archivos válidos intercambiables: el archivo en blanco contiene una combinación de proyecto/origen embebida, el registro de Markdown también enla exactamente el SHA-256 del archivo en blanco y cada reconstrucción rechaza un par de archivos no coincidente o modificado antes de escribir la salida. Los adaptadores de cliente que emiten especificaciones de sólidos aunque nativos aplican la misma regla del archivo en blanco exacto y retienen el objetivo de aceptación del registro anterior separado del objetivo actual de producto CAD nativo.

Límite de verificación actual

Se han ejecutado localmente la ruta sintética de en blanco + Markdown + 2D aislado + 3D portátil y una llamada de doctor nueva de Codex/MCP. En un DWG sintético exacto concreto, el Plugin instalado también ha pasado por AutoCAD real 2027 de crear/consultar/deshacer/guardar, así como la reconciliación con revisión de nuevo proceso. Un conjunto de fuentes exactas, con tenencia privada, con hash w/ de un DWG de almacén, plus un conjunto de fuentes de registro de equipos, ha superado además la generación nativa de 3DSOLID, el guardado final de DWG, releación de escritura con ObjectDBX de versión coincidente, la conciliación identidad/geometría del Agente a nivel de registro y la conciliación final de estructura con AutoCAD 2027 Trial real. Estos resultados son conjuntos de origen limitados, en modo ninguno arbitrario de DWG, modelo de fabricante, BIM ni de preparación para de producción. doctor distingue la identidad de un AutoCAD instalado/activo de un proceso actual suficiente para aceptar automatización; no intersectla una licencia de pago o de prueba. Cuando una especificación de sólido nativo se vincula a un DXF en blanco de origen, AutoCAD abre solo un DWG de tiempo de ejecución proporcionado por separado, cuya recepción de conversión vincula ambos hashes y demuestra a cero diferencia en la comparación de la estructura de transmisión DXF→DWG→DXF. TrueView no cumple la compuerta.

Frontera del producto

Consulte docs/PRODUCT_BOUNDARY.md antes de hacer afirmaciones sobre cádeas capacités. El DXF 3D portátil es un derivado de una auditoría; un maestro 3D nativo de ingeniería es un DWG con objetos 3DSOLID reabiertos y medibles, producidos por AutoCAD completo a partir de con evidencia respaldada por el origen.

Licencia y atribución

Apache-2.0 . El diseño de COM/MCP está inspirado por el proyecto Apache-2.0 multiCAD-mcp ; consulte NOTICE.

Available Tools

5 tools
warehouse_cad_editA
Destructive

Apply a bounded, traceable edit to the active managed AutoCAD work copy. Deletion is limited to provably agent-owned entities; source-backed text updates require provenance.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
paramsNo

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already set destructiveHint=true, so the description is not required to restate that. It adds value by disclosing limits on destructive actions: deletion is restricted to agent-owned entities and source-backed text updates require provenance. This gives operational constraints beyond the annotation, though it doesn't detail error/rollback behavior.

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 two sentences with zero filler. It front-loads the core purpose and then delivers key constraints, making it both concise and well-ordered. Every word earns its place.

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

Completeness2/5

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

With six distinct actions and an unstructured params object, the description is far too brief. It only hints at two use-case constraints but says nothing about how to invoke each action, what params to pass, or what the result looks like. The high complexity demands significantly more explanation than given.

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

Parameters1/5

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

Schema coverage is 0% and the description mentions no parameter details whatsoever. The params object is unstructured (additionalProperties: true) with six possible actions, yet the description provides no guidance on what each action expects or how to construct params, leaving the agent entirely without parameter semantics.

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 clearly states a specific verb 'apply edit' and a specific resource 'active managed AutoCAD work copy'. It further distinguishes itself from sibling tools (query, export, session, project) by being the modification tool, and it adds constraints about deletion and source-backed text updates, making its scope unambiguous.

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

Usage Guidelines3/5

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

Usage is implied by the tool name and the context of sibling tools—this is obviously the edit tool for the warehouse CAD work copy. However, the description does not explicitly state when to use it versus alternatives, nor does it mention when not to use it, leaving some routing to inference.

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

warehouse_cad_exportB

Export the managed work copy or build a native 3DSOLID DWG. All paths remain under the authorized root; native solids require source-verified footprint, height, and elevation.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
paramsNo
project_fileNoUser-selected absolute or current-workspace project.yaml path.

TDQS

B3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full responsibility for behavioral disclosure. It mentions path restrictions and prerequisites for native solids, but does not disclose whether the operation modifies data, creates files, has side effects, or requires specific permissions. For an export tool, it is likely to create files, but this is not stated. The description adds some transparency about constraints but lacks detail on side effects and safety.

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 two short sentences with no filler. It efficiently states the core function and key constraints, front-loading the action and important prerequisites. Every word adds value, making it appropriately concise and well-structured.

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

Completeness2/5

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

Given the tool has a nested params object, an action enum with five values, and no output schema, the description is insufficient. It does not explain the purpose of each action, what parameters to pass for each, or what the return format will be. While it notes path restrictions and prerequisites, it omits crucial operational details needed for correct invocation, especially for the 'params' object which is entirely opaque.

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

Parameters2/5

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

Schema description coverage is 33% (only project_file has a description). The tool description does not explain the 'action' enum values or the structure of the 'params' nested object. It vaguely references requirements for native solids (footprint, height, elevation) but does not map these to specific parameters. With low schema coverage, the description fails to compensate, leaving agents uncertain about how to fill the params object and what each action entails.

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

Purpose4/5

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

The description clearly states the tool's function: exporting the managed work copy or building a native 3DSOLID DWG. It specifies two primary modes and distinguishes this from sibling tools (warehouse_project, warehouse_cad_session, etc.) as an export operation. However, it does not enumerate all action enum values (data, dxf, pdf, snapshot), leaving some ambiguity about the full scope of export types.

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

Usage Guidelines3/5

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

The description provides some context for when to use the tool, indicating that native solids require source-verified footprint, height, and elevation, and that all paths are restricted to the authorized root. However, it does not explicitly contrast with alternative tools or provide explicit when-to-use versus when-not-to-use guidance. The conditions given are more about prerequisites than about choosing this tool over siblings.

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

warehouse_cad_queryB
Read-only

List, inspect, highlight, measure, or compare entities in the active managed AutoCAD work copy. Geometry measurements remain calculations, not verified business facts.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
paramsNo

TDQS

B3.1/5.0
Behavior3/5

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

The description adds a meaningful caveat beyond the readOnlyHint annotation: 'Geometry measurements remain calculations, not verified business facts.' This warns the agent that measurement results are not authoritative, which is valuable. However, it does not elaborate on behaviors for each action (e.g., whether 'highlight' changes the UI selection state) or other side effects beyond the read-only annotation.

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 two sentences with no waste. The first sentence front-loads the core operations and target, and the second delivers an important caveat. Both sentences earn their place and the structure is clear.

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

Completeness2/5

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

For a tool with five distinct actions and an open-ended params object, the description is too sparse. It does not define what each action does, what parameters they expect, or what the return looks like (no output schema). It also does not clarify prerequisites like an active session or what 'managed work copy' means. The description is incomplete for an agent to call this tool correctly without further inference.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not compensate. It lists verbs that roughly correspond to the action enum (e.g., 'inspect' vs 'get', 'highlight' vs 'select') but does not explain each action's purpose or the expected structure of the params object. The generic params is left entirely unexplained, and the wording mismatch between the description and enum values adds confusion.

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 clearly states the tool's purpose: to list, inspect, highlight, measure, or compare entities in the active managed AutoCAD work copy. The verb set is specific and distinguishes it from sibling tools like warehouse_cad_edit (modification) and warehouse_cad_export (export). The read-only nature is implied by the verbs and consistent with the annotation.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus the sibling tools. The description only mentions the active managed AutoCAD work copy, but does not explain when to choose query over edit/export/session/project. The name 'query' suggests a read-only role, but the description lacks any 'use this when...' or 'use X instead' guidance.

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

warehouse_cad_sessionC

Connect to writable full AutoCAD and manage exactly one automatically-created work copy. Never opens the customer source as a write target; TrueView is rejected. Shutdown can quit only a document-free AutoCAD instance launched by this Agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
paramsNo
project_fileNoUser-selected absolute or current-workspace project.yaml path.

TDQS

C2.7/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It does disclose key safety behaviors: it never opens the customer source as a write target, rejects TrueView, and shutdown can only quit a document-free instance launched by this Agent. These are valuable but do not cover the full range of actions or their side effects, so partial transparency.

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

Conciseness4/5

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

The description is three sentences with no fluff. The core purpose is front-loaded, followed by key constraints. It is efficient and avoids redundancy.

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

Completeness2/5

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

For a tool with 7 actions, a nested params object, and no output schema, the description is insufficient. It does not explain what any of the actions do, what parameters they need, or what the return looks like. The agent is left guessing on crucial execution details, so completeness is low.

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

Parameters1/5

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

Schema coverage is only 33% — only project_file is described in the schema. The description adds no information about the 'action' enum values or the 'params' object (which is untyped with additionalProperties true). The agent has no idea what each action requires or how to structure params, and the description fails to compensate for this low coverage.

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

Purpose4/5

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

The description states the tool connects to writable full AutoCAD and manages 'exactly one automatically-created work copy', giving a specific verb and resource. It also clarifies it rejects TrueView and never writes to the customer source, which helps distinguish it from other CAD tools. However, it does not explicitly name sibling tools to differentiate, so it stops short of a 5.

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

Usage Guidelines2/5

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

The description provides constraints (never write to source, TrueView rejected, shutdown limits) but gives no guidance on when to choose this tool over the sibling tools like warehouse_cad_edit or warehouse_cad_query. There is no explicit 'use this when...' or 'use that instead...' guidance, leaving the agent to infer the tool's scope.

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

warehouse_projectC

Validate, audit, rebuild, verify, package, or control one declared warehouse CAD project. Long jobs are single-worker and return job_id. Audit output is not an independent acceptance denominator by itself.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
job_idNo
paramsNo
project_fileNoUser-selected absolute or current-workspace project.yaml path.

TDQS

C2.9/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose that long jobs are single-worker and that audit output is not an independent acceptance denominator, which are useful caveats. However, it omits other behavioral aspects like side effects, permission requirements, or reversibility, leaving transparency incomplete.

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

Conciseness4/5

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

The description is concise (two sentences) and front-loads the key actions. It avoids unnecessary words, but the brevity somewhat undermines clarity. The structure is acceptable for a short description, though it could benefit from a brief explanation of the actions.

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

Completeness2/5

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

Given the tool's complexity (10-action enum, nested params object, no output schema), the description is far from complete. It does not describe each action's purpose, the format of params, or expected outcomes. The note about job_id and audit output provides some context, but an agent would still need significant external knowledge to invoke this tool correctly.

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

Parameters2/5

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

The input schema covers only 25% of parameters (only project_file has a description). The description does not explain the 'action' enum values, the purpose of job_id, or the 'params' object. It mentions job_id in passing but provides no guidance on how to construct or interpret it. This is insufficient for an agent to correctly fill parameters, especially given the low schema coverage.

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

Purpose4/5

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

The description lists specific verbs (validate, audit, rebuild, verify, package, control) acting on 'one declared warehouse CAD project', giving a clear resource and a set of operations. It distinguishes this tool from siblings that handle sessions, queries, edits, and exports by focusing on project-level actions, though the broad action list makes the primary purpose less crisp than a single-verb description.

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

Usage Guidelines2/5

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

The description does not indicate when to use this tool versus the sibling tools (warehouse_cad_session, warehouse_cad_query, etc.) or when not to use it. The only usage hint is that long jobs are single-worker and return job_id, but there is no explicit guidance on scenario selection or alternative routing.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.0
    • First observedwarehouse_cad_edit
    • First observedwarehouse_cad_export
    • First observedwarehouse_cad_query
    • First observedwarehouse_cad_session
    • First observedwarehouse_project

TDQS

B3.4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a distinct level: project management, session management, querying, editing, and exporting. No two tools overlap in purpose, making selection unambiguous.

Naming Consistency4/5

All tools share the 'warehouse_' prefix, and four of five follow the 'warehouse_cad_' pattern. The sole exception, 'warehouse_project', still fits the broad naming scheme but lacks the 'cad_' segment, a minor inconsistency.

Tool Count5/5

With only 5 tools, the set is tightly focused and each tool covers a major capability area. This is an ideal scope for a CAD agent, avoiding bloat while remaining useful.

Completeness4/5

The tools cover the full workflow from project validation/rebuild, session control, query, edit, to export. Minor gaps exist (e.g., no explicit import or undo), but the core lifecycle is well supported.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables agent-driven CAD automation by inspecting, editing, and validating DWG drawings through a handle-first workflow, with support for visual grounding, CADPlan execution, and local SQLite workspace management.
    179 PyPI
    28
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables engineering agents to perform parametric CAD operations through a controlled MCP gateway built on FreeCAD, with transactions, diagnostics, and reproducible verification.
    2
    GNU Lesser General Public v2.1 only
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to interact with CAD software through semantic spatial topology and architectural ontology, supporting drawing, block/layer/entity management, and safe preview-apply transaction workflows for AutoCAD, ZWCAD, GstarCAD, and BricsCAD.
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI/natural-language-driven 2D drafting automation on a running Windows AutoCAD, exposing drawing, dimensioning, layer/block management, and mechanical drawing tools such as title blocks, BOM, and balloons to any MCP client.
    156 PyPI
    MIT