Skip to main content
Glama

classify_face_sides

Determine whether each face opens into an enclosed flow cavity or ambient exterior, optionally sealing declared ports first; inspection only, no geometry changes.

Instructions

Inside-vs-outside topology: for every face, decide whether its outward side opens into an enclosed cavity (wetted) or ambient (exterior). Answers the "which faces are inside the airflow path" question from issue #19 and suggests a role per face. Inspection only; returns no handle, mutates nothing.

With seal_ports=True (default) any declared inlet/outlet roles (annotate_face) are capped first, so an OPEN duct's bore reads as the enclosed flow cavity rather than as ambient.

handle: the part. seal_ports: cap declared inlet/outlet before classifying.

Returns a list (one per face) of dicts: tag / index (str) stable f_* tag and 'FaceN' kind (str) surface kind (planar/cylindrical/…) side (str) 'interior' | 'ambient' | 'ambiguous' suggested_role (str) 'wetted' for interior, 'ambient' for exterior, else null declared_role (str) the role already annotated on this face, if any

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
handleYes
seal_portsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and largely meets it: it declares the tool read-only, returns no handle, and mutates nothing. It also discloses the non-obvious seal_ports interaction that caps declared roles before classifying, which is real behavior beyond the schema. It does not discuss cost, permissions, or failure modes.

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 core concept, then the seal_ports nuance, then the return shape. The return-value block is verbose but earns its place since there is no output schema. Minor redundancy ('returns no handle, mutates nothing' plus 'Inspection only').

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?

For a 2-param, no-annotation, no-output-schema tool, the description supplies everything needed: the classification semantics, the seal_ports behavior, and a full field-by-field breakdown of the returned list of dicts (tag/index/kind/side/suggested_role/declared_role). Nothing an agent needs to call or interpret the tool is missing.

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 0%, so the description must compensate, and it does: handle is described as 'the part' and seal_ports as 'cap declared inlet/outlet before classifying', including what the default=True does. Both parameters gain meaning absent from the schema.

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 specific verb+resource ('classify_face_sides' → decide whether each face's outward side opens into an enclosed cavity or ambient) and frames the exact question it answers ('which faces are inside the airflow path'). An agent can distinguish it from annotate_face/list_face_roles, which deal with declared roles rather than topology classification.

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 scopes the operation ('Inspection only; returns no handle, mutates nothing') and explains the conditional behavior of seal_ports=True, including why it matters for open duct bores. It stops short of naming explicit alternatives it should be used instead of, so it is strong context without formal exclusions.

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