Skip to main content
Glama

List controls

sbd_list_controls
Read-onlyIdempotent

Lists security and compliance controls from each regime catalogue, optionally filtered by regime ID, so you can map requirements for NIST SSDF, ISO 27001 and DPDP Act workflows.

Instructions

List the controls in each regime catalogue.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "sbd_list_controls"
  }
}

Input Schema

NameRequiredDescriptionDefault
regimeNoRegime id, or omit for all.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds nothing beyond that: no mention of result size, ordering, whether the catalogue is static, or what a returned control entry contains. For a read-only discovery tool this is a meaningful but not fatal gap.

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?

One short sentence with the resource and scope front-loaded and no filler. It is appropriately sized for the complexity, though that brevity trades away guidance rather than being tight.

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?

The tool is a simple, single-optional-parameter read with no output schema, so minimal description is defensible. Still, an agent gets no hint about the shape of the returned control entries or how to proceed to sbd_explain_control, both of which would be cheap to add for a catalogue-listing 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% and the single parameter is already documented as "Regime id, or omit for all." The phrase "each regime catalogue" loosely echoes the filtering concept but adds no new syntax, format, or examples. Baseline 3 applies because the schema carries the weight.

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?

The description pairs a specific verb ("List") with a specific resource ("controls") and states the scope ("in each regime catalogue"), so an agent knows exactly what the tool returns. It does not, however, distinguish this listing operation from siblings such as sbd_explain_control, leaving the agent to infer that distinction from the name alone.

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 when-to-use or when-not-to-use guidance. The description never says whether this is the discovery step before sbd_explain_control, whether it is safe to call without a regime, or how it differs from sbd_check or sbd_review_diff. Only the word "List" implicitly suggests a browsing use case.

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