Skip to main content
Glama
Meteor-Simulation

BULC MCP

Official

Drawing intake

bulc_drawing_intake
Read-onlyIdempotent

Classify a local drawing file (DWG, DXF, PDF, image, ZIP, IFC, FDS) without uploading it, then return the correct playbook, questions, and tool sequence.

Instructions

First step for any drawing the user gives (DWG, DXF, PDF, image, ZIP bundle, IFC, or an .fds deck). Pass the ABSOLUTE local path. Reads the file on this PC only — it never uploads anything — and classifies it (architectural plan, sprinkler plan, piping isometric, HVAC plan, FDS deck) from the extension, file name, DXF units/layers/blocks/line angles, PDF pages and fonts, ZIP contents or IFC entities. Returns the playbook to follow, the questions to ask the user (units, scale, origin, layers …) and the tool sequence (architectural plans → arch_analyze_drawing / arch_import_building, piping → spr_analyze_drawing / spr_import_network). For DXF plans, extract_geometry=true also returns wall centre-line candidates in metres (fallback for older apps). Text inside the drawing (title blocks, notes) is never returned. 도면 파일을 로컬에서 분류하고 플레이북·질문·도구 순서를 돌려줍니다(업로드 없음).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesAbsolute path of the file on this PC
unitsNoOverride the drawing units when the file does not state them
purposeNoWhat the user wants to do with it (default auto)
max_wallsNoMaximum wall candidates (default 150)
wall_layersNoDXF layers to take wall lines from (default: layers whose name looks like walls)
extract_geometryNoDXF only: return wall centre-line candidates (metres, origin at the drawing's lower-left)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv4.0.0

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already set readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false. The description adds substantial context beyond those: it reads files locally and never uploads, classifies from specific file features (extension, name, DXF layers, PDF fonts, ZIP contents, IFC entities), never returns text inside the drawing, and discloses that extract_geometry returns wall centre-lines. No contradiction with annotations.

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 front-loaded with the key purpose and usage in the first sentence, and most sentences carry useful technical detail. It is somewhat long, and the final Korean sentence repeats information already stated in English, which slightly dilutes conciseness without causing confusion.

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?

With no output schema, the description carries the full burden of explaining return values and does so clearly: it returns the playbook, questions to ask, tool sequence, and optional wall centre-line candidates. It also covers file formats, classification criteria, and privacy behavior, leaving no critical gap for an agent to invoke it correctly.

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?

Schema description coverage is 100%, so the schema already documents all six parameters. The description reinforces 'Pass the ABSOLUTE local path' and adds a fallback context for extract_geometry, but does not meaningfully extend most parameters beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb and resource: it classifies a drawing file and returns a playbook, questions, and a tool sequence. It explicitly positions itself as the 'first step' for any drawing, which distinguishes it from downstream siblings like arch_analyze_drawing and spr_analyze_drawing. An agent can select it without opening other schemas.

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?

The opening phrase 'First step for any drawing the user gives' gives explicit usage context, and the description names the downstream tools to use for each classification outcome (architectural plans → arch_analyze_drawing / arch_import_building, piping → spr_analyze_drawing / spr_import_network). This effectively routes the agent to the correct alternative after intake.

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

Deploy Server

Other Tools