Skip to main content
Glama
hpdkhoa

io.github.hpdkhoa/poselab-mcp

by hpdkhoa

faces_eye

Compute a surface's eye-facing score: 1 means square-on, 0 means edge-on, negative means turned away.

Instructions

How squarely a surface faces the eye: facing 1 square on, 0 edge on, below 0 turned away.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pointNoa name (a bone such as hand_l, a fingertip such as index_tip_l, a rig point such as port) or [x, y, z] in the frameport
normalNothe surface's normal, gun frame; a rig normal by the point's name if left out

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does disclose the output scale and its semantics (1 square on, 0 edge on, below 0 turned away), which is genuinely useful behavioral context, but it omits whether this is a pure read/query, how the 'eye' is defined, and what happens with an unknown point name or a missing rig normal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single front-loaded sentence with no filler, which is good. But the phrasing ('squarely', 'square on', 'edge on', 'turned away') is cryptic shorthand that costs the reader more effort than a slightly longer explicit statement would.

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?

With no output schema and no annotations, the description should at minimum explain the return value and the frame/eye conventions. It conveys the value's range and meaning but not its type, the definition of 'the eye', or error/edge-case behavior, leaving notable gaps for a geometric query tool.

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%: both point (name or [x,y,z]) and normal (gun-frame normal, defaulting to the point's rig normal) are fully documented in the schema. The description adds no parameter detail beyond that, so the baseline of 3 applies.

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

Purpose3/5

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

The description defines the computed quantity — a facing score with 1 = square-on, 0 = edge-on, negative = turned away — so an agent can infer the metric. However, it is a noun phrase with no verb (never states that the tool returns a number), and it draws no boundary against closely related siblings like visible, screen, or clearance.

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

Usage Guidelines2/5

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

There is no explicit when-to-use guidance, no prerequisites, and no mention of alternatives such as visible or screen that also assess surfaces from the eye. Use is only faintly implied by the metric's definition, so the agent must guess the context.

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