Skip to main content
Glama
Mipiti
by Mipiti

Check Functional Gaps

check_functional_gaps

Identify actionable functional gaps in a threat model, highlighting missing objectives and failing tests, to prioritize what to implement or fix next.

Instructions

Get the actionable functional gaps for a model.

Read-only; no side effects. Returns the subset of the coverage report that needs action: applicable conditions with no objective yet, and objectives that are failing or have no passing test. Use this to decide what to implement or fix next; for the complete coverage matrix and all states use get_functional_coverage instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
model_idYesID of the threat model to analyse for functional gaps.
server_versionYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.66.0
    • addedInput schema / properties / model_id / description
      Added value: +"ID of the threat model to analyse for functional gaps."
  2. Addedv0.62.2
  3. Removedv0.62.0
  4. First observedv0.57.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations present, the description carries the full burden of behavioral disclosure. It explicitly states the operation is read-only, has no side effects, and describes what the returned subset contains (conditions with no objective, failing objectives, objectives with no passing test). This is meaningful behavioral context beyond the bare function name.

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 compact and front-loaded: it leads with the action, states the read-only nature, explains the return value, and then provides routing guidance. Every sentence adds value, with no redundant filler.

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?

The description is largely complete for a read-only filtering tool: it explains purpose, scope, return behavior, and the sibling alternative, while the output schema covers return structure. The main gap is that server_version is left undocumented, so the agent may not know what value to provide for that required parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 50%, and the description does not compensate for the undocumented server_version parameter. model_id is explained in the schema, but server_version has no description and no additional meaning is provided in the tool description.

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 uses a specific verb ('Get') with a defined resource ('actionable functional gaps for a model') and clearly distinguishes the returned subset from the full coverage report. It also explicitly contrasts itself with the sibling get_functional_coverage, so an agent can differentiate the two without opening schemas.

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 states exactly when to use this tool: to decide what to implement or fix next. It also names the alternative, get_functional_coverage, and explains that the alternative should be used when the complete coverage matrix and all states are needed.

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