Describe a PDF drawing
describe_pdfReturn a structured JSON summary of a PDF drawing — units (points), bounding box, layers, per-type entity counts, the text it contains, and what was skipped (images, shadings, transparency). Use this for structural questions about a PDF without rendering it. For a DXF use describe_dxf; 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
| Name | Required | Description | Default |
|---|---|---|---|
| space | No | Which 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. | |
| source | Yes | A 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
| Name | Required | Description | Default |
|---|---|---|---|
| size | Yes | Bounding-box size in drawing units, null when empty | |
| space | Yes | Which space this summary is scoped to, or null when it covers the whole drawing (bounds/size then describe spaces[0], the space render returns) | |
| texts | Yes | Unique TEXT/MTEXT strings, blocks included | |
| units | Yes | Drawing-unit label (e.g. "mm"), "" when unitless | |
| bounds | Yes | World-space extents, null for an empty drawing | |
| format | Yes | Which format was read ("dxf", "pdf") | |
| layers | Yes | ||
| spaces | Yes | Every 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 | |
| entityCount | Yes | ||
| entityTypes | Yes | Top-level entities per DXF type | |
| unsupported | Yes | Per-kind counts of what was skipped | |
| segmentCount | Yes |