Skip to main content
Glama

Samuelz® Policy

Bearbeitbare Regeln lesen

get_policy_write_options
Read-onlyIdempotent

Read editable policies and their write revisions before an explicit change. Use list_policies for recorded identities, get_policy for confirmed content, and get_policy_history for comparisons.

moduleKey and policyKey filter the supported policies. An unsupported pair returns options=[]; the read never substitutes another policy. A module Owner denial omits that policy's adapter, while shared authorization failures are errors. A supported policy that is not configured yet still has a revision for its first configuration.

Choose one element of the returned options array. Copy that element's moduleKey, policyKey and expectedRevision together into prepare_policy_change, with the complete value the user requested. That same element's proposed field is an adapter-supplied suggestion, not the user's request or approval. For an explicit automation stop, use deactivate_policy only when canDeactivate=true; a confirmed disabled value remains current.

Requires policy:read/write and current Owner/module access. Reading prepares and applies nothing.

Input Schema

NameRequiredDescriptionDefault
moduleKeyNoOmit for all supported modules; otherwise copy a module key from a recorded list_policies identity or an earlier get_policy_write_options result.
policyKeyNoSelect one supported editable policy together with its moduleKey; omit for every editable policy in the selected module.

Output Schema

NameRequiredDescriptionDefault
optionsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the read-only and non-destructive annotations, it discloses empty results for unsupported pairs, the no-substitution guarantee, partial adapter omission versus shared authorization errors, revision behavior for unconfigured policies, and required scopes and access. The final statement that reading prepares and applies nothing is consistent with the annotations and clarifies the workflow boundary.

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 four paragraphs progress logically from purpose and alternatives to filtering and failures, then downstream use, and finally authorization and safety. It is dense, with several multi-caveat sentences, but the operation is front-loaded and the length is largely justified by the tool's workflow complexity.

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 two-parameter read tool with an output schema, the description supplies the critical selection, edge-case, authorization, and handoff context needed to invoke it correctly. It does not need to enumerate return fields, yet still explains the consequential options, proposed, expectedRevision, and canDeactivate semantics.

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?

Both parameters already have complete schema descriptions, so the schema carries their basic filtering and omission semantics. The description adds valuable pair-level behavior by explaining that an unsupported pair returns options=[] without substituting another policy, and it explains how returned identifiers must be reused downstream.

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 opening sentence precisely identifies the operation and resource: reading editable policies and their write revisions before an explicit change. It also distinguishes this tool from list_policies for identities, get_policy for confirmed content, and get_policy_history for comparisons.

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 task routing to three sibling tools and an exact downstream workflow: select one options element and copy its moduleKey, policyKey, and expectedRevision into prepare_policy_change with the requested value. It additionally conditions deactivate_policy on an explicit automation stop and canDeactivate=true, while warning that proposed is only a suggestion.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources