Skip to main content
Glama

Describe a DXF drawing

describe_dxf
Read-only

Return a structured JSON summary of a DXF drawing — units, bounding box, layers (with the color actually drawn), per-type entity counts, and any skipped/unsupported types. Use this to answer structural questions (what layers exist, how many parts, what size, is it to scale) without rendering an image. For a PDF use describe_pdf; if you do not know the format, use describe_doc. Covers the whole drawing by default, including every page of a multi-page PDF; pass space (a name from the reply's spaces) to scope it to one page or sheet. When the user wants to see or explore the drawing themselves, prefer view_dxf (interactive viewer) — if your platform gates it behind user approval, offer it and ask rather than substituting a static render.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
spaceNoWhich space to work on: "Model" (a PDF's page 1, a DXF's model space) or a page/layout name as listed in a describe reply's "spaces". Describe omits it for the whole drawing; render defaults to the first space.
sourceYesA publicly reachable http(s) URL, or inline DXF text. A PDF is binary, so it must be a URL — inline PDF bytes are refused. (This is a hosted server — local file paths are not available; use the npx @aspicio/mcp local server for files on disk.)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
sizeYesBounding-box size in drawing units, null when empty
spaceYesWhich space this summary is scoped to, or null when it covers the whole drawing (bounds/size then describe spaces[0], the space render returns)
textsYesUnique TEXT/MTEXT strings, blocks included
unitsYesDrawing-unit label (e.g. "mm"), "" when unitless
boundsYesWorld-space extents, null for an empty drawing
formatYesWhich format was read ("dxf", "pdf")
layersYes
spacesYesEvery space in the drawing (a PDF's pages, a DXF's model space and layouts), model space first. These do not sum to entityCount: a DXF sheet's viewports re-show model geometry, so an entity can be drawn in two spaces while existing once
entityCountYes
entityTypesYesTop-level entities per DXF type
unsupportedYesPer-kind counts of what was skipped
segmentCountYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already mark readOnlyHint=true and destructiveHint=false, and the description adds behavioral context without contradicting them. It reveals that the tool covers the whole drawing by default, including every page of a multi-page PDF, and that unsupported types are reported as skipped/unsupported. This goes beyond the annotation fields.

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 multi-sentence but every clause contributes: purpose, content list, use case, sibling tool routing, default scope, and scoping mechanism. It is front-loaded with the core action and contains no filler.

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

Completeness5/5

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

Given the output schema exists and annotations cover safety, the description fully covers purpose, alternatives, default behavior, and scoping. It also addresses the related multi-page PDF case, making it self-contained.

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

Parameters3/5

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

The input schema covers both parameters with rich descriptions (e.g., `space` is described as a page/layout name from a reply). With 100% schema coverage, the description adds no new parameter-level detail beyond mentioning the default whole-drawing behavior.

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 opens with 'Return a structured JSON summary of a DXF drawing' and enumerates specific contents (units, bounding box, layers, per-type counts), making the action and resource explicit. It also distinguishes from siblings by referencing describe_pdf, describe_doc, and view_dxf.

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

Usage Guidelines5/5

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

Explicitly states when to use it: 'Use this to answer structural questions... without rendering an image.' It names alternatives for other formats ('For a PDF use describe_pdf') and for visual exploration ('prefer view_dxf'), giving clear exclusions.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: describe for structural facts, render for static images, view for interactive exploration, and format variants (doc/dxf/pdf) are explicitly disambiguated via format detection. The internal load_dxf_for_viewer is clearly marked as widget-only, so no real ambiguity exists.

Naming Consistency4/5

The naming follows a consistent verb_format pattern for describe_* and render_* tools, and view_dxf fits the verb_noun convention. Minor deviations include 'doc' as a generic format label, 'load_dxf_for_viewer' with a purpose suffix, and view_dxf also handling PDF despite the DXF-specific name.

Tool Count5/5

8 tools is well-scoped for a drawing inspection server: three describe variants, three render variants, one interactive viewer, and one internal loader. Each tool earns its place without redundancy or bloat.

Completeness5/5

The tool surface fully covers its read-only domain: structural description, visual rendering, and interactive exploration for both DXF and PDF formats. Missing operations like editing or conversion are outside the intended purpose, and the internal loading is appropriately handled by the viewer widget.