Skip to main content
Glama
Mipiti
by Mipiti

Regenerate Controls

regenerate_controls

Re-author controls from your model's control objectives, preserving evidence and mappings for unchanged controls and soft-deleting outdated ones. Target specific objectives or rebuild all to keep your threat model aligned.

Instructions

Regenerate controls from the model's control objectives. Mutating.

Re-authors controls from the current COs. Controls whose descriptions survive regeneration unchanged KEEP their implementation status, evidence, notes, assertions, and Jira / compliance mappings. Controls whose descriptions change or disappear are soft-deleted (still queryable via get_controls(include_deleted=True)). When co_ids is given, only those COs' controls are regenerated — all other controls are left as-is.

May run as a background job; this tool waits for completion and returns the final result. To rebuild everything, omit co_ids. To fix only stale/orphaned CO mappings without re-authoring control text, prefer remap_control (mechanical, no LLM).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNo"batch" (default) or "per_co" (most thorough — one LLM call per CO).batch
co_idsNoOptional comma-separated CO IDs to regenerate (e.g. "CO1,CO5"). Omit to regenerate all controls.
model_idYesID of the threat model.
batch_sizeNoCOs per batch in batch mode (default 15). Smaller = more accurate and more granular progress, but more LLM calls.
server_versionYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv0.66.0
    • changedInput schema / properties / batch_size / description
      Previous value: -"COs per batch in batch mode (default: 15). Smaller\n= more accurate + granular progress, more LLM calls."New value: +"COs per batch in batch mode (default 15). Smaller =\nmore accurate and more granular progress, but more LLM calls."
    • changedInput schema / properties / co_ids / description
      Previous value: -"Optional comma-separated CO IDs to regenerate (e.g.\n\"CO1,CO5\"). When omitted, regenerates all controls."New value: +"Optional comma-separated CO IDs to regenerate (e.g.\n\"CO1,CO5\"). Omit to regenerate all controls."
    • changedInput schema / properties / mode / description
      Previous value: -"\"batch\" (default) or \"per_co\" (most thorough, one LLM\ncall per CO)."New value: +"\"batch\" (default) or \"per_co\" (most thorough — one LLM call\nper CO)."
  2. First observedv0.57.0

TDQS

A4.9/5.0
Behavior5/5

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

No annotations are provided, so the description carries full behavioral disclosure. It reveals that the operation mutates, soft-deletes changed/disappeared controls, preserves attributes for unchanged controls, supports partial regeneration, can run as a background job while waiting for completion, and returns the final result. This is thorough and goes well beyond the input schema.

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?

The description is front-loaded with the core purpose and mutation warning, then proceeds logically through behavior, edge cases, partial execution, and alternatives. Every sentence adds useful information, and there is no filler or repetition of schema content.

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 complex, mutating tool with five parameters and no annotations, the description covers the essential operational context: mutation, soft-delete semantics, partial regeneration, background execution, waiting behavior, and the correct alternative tool. An agent has enough information to decide when and how to invoke it correctly.

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 80%, so the schema already documents most parameters. The description adds meaningful semantics for co_ids by explaining partial regeneration and for the general rebuild-vs-selective behavior. It does not add detail on server_version, but the schema mostly carries the parameter documentation burden.

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 states a specific verb and resource: 'Regenerate controls from the model's control objectives.' It also clearly signals mutation with 'Mutating.' and distinguishes itself from the sibling remap_control by describing what regenerate_controls does versus what remap_control does. This is a precise, differentiating purpose statement.

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

Usage Guidelines5/5

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

The description gives explicit usage conditions: omit co_ids to rebuild everything, pass co_ids to regenerate only those COs' controls, and prefer remap_control when only stale/orphaned CO mappings need fixing. It also explains the partial-regeneration behavior, leaving all other controls as-is. This is strong when-to-use guidance with a named alternative.

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