Skip to main content
Glama

Import a SCAPS file

scaps_import_file
DestructiveIdempotent

Add a shared SCAPS file to your installation: validates definitions and materials, then lists any referenced absorption, grading, or filter files that are missing.

Instructions

Add a SCAPS file someone shared (device .def, .material, .abs, spectrum, measurement...) to the installation.

Definitions and materials are parsed to confirm they are valid, and files they reference but that are missing (absorption, grading, filter) are listed.

Input Schema

NameRequiredDescriptionDefault
kindYesFile type; decides the SCAPS folder.
nameYesFile name with its SCAPS extension, e.g. 'perovskite cell.def'.
contentYesFull text of the file.
overwriteNo

Output Schema

NameRequiredDescriptionDefault
fileYes
kindYes
summaryYes
missing_referencesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

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

Adds genuine behavior beyond annotations: definitions and materials are parsed for validity and missing referenced files are reported back. However, annotations declare destructiveHint=true while the description only says 'Add', never disclosing that an existing file may be overwritten or what the overwrite flag destroys.

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?

Two front-loaded sentences; the parenthetical example list earns its place by tying file types to the kind enum. Minor waste in the trailing newline and a slightly run-on second sentence, but no filler.

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?

Output schema exists so return values need no explanation, and required inputs are covered by the schema. The gap is the destructive overwrite path and per-kind placement of files, which the description leaves entirely to annotations and the schema.

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 75%, and the description adds meaning beyond it by indicating that validation applies only to definitions and materials and that dependencies (absorption, grading, filter) can be missing. The undocumented 'overwrite' parameter is left unexplained in both places.

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 ('Add ... to the installation') and resource (a SCAPS file), and enumerates concrete examples (.def, .material, .abs, spectrum, measurement) that map onto the kind enum. It implicitly distinguishes itself from scaps_create_device/scaps_edit_device by framing the input as a file someone else shared, though it never names those siblings.

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?

'a SCAPS file someone shared' hints at the import-vs-create distinction, but there is no explicit when-to-use, when-not-to-use, or named alternative among the many siblings (scaps_create_device, scaps_write_data). The agent must infer that this is for externally supplied files.

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