Skip to main content
Glama
david-mamani

ETABS MCP Server

by david-mamani

Read model geometry through the API

get_model_geometry
Read-onlyIdempotent

Read point, frame, area, opening, and story geometry in metres from an open ETABS model without altering units, locks, analysis results, or desktop windows.

Instructions

Read point, frame, area, opening and story geometry in metres.

Preserves model units, lock, analysis results and all ETABS windows. Uses only the COM model API. Never reads or controls the desktop.

Input Schema

NameRequiredDescriptionDefault
instanceNo
max_objectsNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.3.0

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover readOnly, idempotent and closed-world, so the description earns credit for going further: it discloses the non-destructive side effects (locks, analysis results and ETABS windows preserved) and the access mechanism (COM API only, no desktop control). That is exactly the context an agent needs to trust the call in a headless workflow, though the read-in-metres vs preserve-model-units phrasing is slightly ambiguous.

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?

Four short sentences, front-loaded with the payload types and followed by the two behavioral guarantees. No filler and nothing buried.

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

Completeness3/5

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

An output schema exists so return values need no explanation, and the safety profile is well covered. However, for a tool that can silently cap results at 20,000 objects, the absence of any note on `max_objects` or truncation leaves a real operational gap.

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 0% and the description mentions neither `instance` nor `max_objects`. The 20000 default on max_objects strongly suggests a truncation or pagination cap that an agent must understand before relying on results, and nothing here explains it.

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?

States a specific verb (read) and enumerates the exact resource types (point, frame, area, opening, story geometry) plus the unit (metres). This clearly separates it from render_model_view, though the description never names that sibling explicitly.

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 only implied: an agent can infer this is the data-extraction path rather than the visual-rendering one, but no alternative is named and no when-not condition is given. The 'never reads or controls the desktop' line is a constraint, not a selection guideline.

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