Skip to main content
Glama

femm_build_benchmark

Builds a validated FEMM benchmark model from scratch, returning its groups, circuits, and analytic estimates for magnetics simulations.

Instructions

Build a validated benchmark model from scratch (new magnetics document, saved to path, default <work_dir>/.fem) and return its groups, circuits and analytic estimates: 'ccore' (planar U-core + armature, groups armature=1 core=2 coil=3, circuit 'coil'), 'coilgun' (axisymmetric coil + iron slug group 1), 'spm' (12-slot 4-pole surface PM machine, params rotor_method='rotate'|'age', rotor groups [1,10] or AGE boundary 'AGE', circuits A/B/C), 'round_wire' (copper wire in an A=0 circle for AC sweeps). params are the builder keyword arguments (e.g. {"gap": 0.5, "turns": 100}); see femm_agent.benchmarks.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindYes
pathNo
paramsNo
sessionNomain

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden and partially discharges it: it discloses that this creates and writes a new document, gives the default save location, and describes the return content (groups, circuits, analytic estimates). It does not say whether an existing file at `path` is overwritten, what permissions/session state are required, or how failures surface.

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 action and return value are front-loaded, followed by a dense but information-bearing per-kind enumeration. It is a long single block with no formatting aids and slight redundancy between the parenthetical save note and the path mention, but every clause carries real content.

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

Completeness4/5

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

For a four-parameter tool with no output schema and no annotations, the description is unusually complete: it covers the return shape, the default file destination, and the semantics of three of four parameters. The remaining gaps (session behavior, overwrite policy, error handling) keep it short of a 5.

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 coverage is 0%, so the description must compensate, and it largely does: `kind` values are effectively enumerated with per-kind structure, `path` is explained including its default, and `params` is explained as builder kwargs with a concrete example. Only `session` (default 'main') is left entirely unexplained.

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 gives a specific verb and resource ('Build a validated benchmark model from scratch (new magnetics document...)') and enumerates the four supported kinds with their internal structure. It clearly distinguishes itself from generic document tools like femm_new_document by being a benchmark scaffolder that also returns groups, circuits and analytic estimates.

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 implied rather than stated: an agent can infer this is the entry point for a canned benchmark setup, and the kind list helps pick a model. However, there is no explicit when-to-use/when-not guidance and no named alternative (e.g. vs femm_new_document for a blank document or femm_experiment_* for running sweeps).

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