Skip to main content
Glama
davidharutyunyan

Archicad MCP Connector

Get component property values

get_component_property_values
Read-onlyIdempotent

Read built-in and custom property data for building element components, such as thickness, volume, and material attributes, to support quantity takeoff and analysis.

Instructions

Reads property values of element components (building-material parts — see get_element_components): built-in quantities such as Component_Thickness, Component_NetVolume, Component_NetProjectedArea, BuildingMaterial_Name/ID/Manufacturer/Description, or any user-defined property available for components. Lengths m, areas m², volumes m³, angles degrees. Either pass components [{element, component}] or elements (= all their components). Output: {components: [{element, component, values: {property: value}, unavailable?: {property: 'notAvailable'|'notEvaluated'|'userUndefined'|error}} | {element, component, error}], propertyErrors?}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
elementsNoRead all components of these elements
componentsNoSpecific components
propertiesYesProperties to read

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare the safe read-only/idempotent profile, so the description adds value by disclosing unit conventions (m, m², m³, degrees) and, crucially, the partial-failure model with `unavailable` reasons (notAvailable/notEvaluated/userUndefined/error) and `propertyErrors`. It does not mention rate limits or auth, but for a read tool this is strong extra context.

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?

Front-loaded with the purpose, then input modes, then units, then output shape. Dense but every clause carries information; the return-shape enumeration is lengthy but justified since no output schema exists.

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 compensates by spelling out the return structure (values map plus unavailable/error per component). Combined with 100% schema coverage and read-only annotations, an agent has everything needed to call it correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so baseline is 3. The description adds meaning beyond the schema by clarifying that `elements` means 'all their components', that the two array parameters are alternatives, and by giving concrete property-name examples and lookup guidance.

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?

States a precise verb+resource ('Reads property values of element components') and immediately scopes it against element-level siblings by naming get_element_components and enumerating the built-in component quantities. An agent can distinguish this from get_property_values without opening a schema.

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

Usage Guidelines4/5

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

Clearly explains the two mutually exclusive input modes (`components` for specific parts vs `elements` for all their components) and routes to get_property_ids_by_name for discovering property names. It does not, however, explicitly say when to prefer this over get_property_values or get_attribute_property_values.

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