Skip to main content
Glama

seekrit — secrets for agents

kms_disable_key

DestructiveIdempotent

Disable a managed KMS key: new encrypt/sign operations are blocked, while data already encrypted under it stays decryptable locally by existing grantees. Reversible only by an operator re-enabling the key — there is no enable tool here. Use kms_revoke_grant instead to cut off ONE principal while the key stays in service. Find the id with kms_list_keys. Returns the updated key, with disabledAt now set.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
orgNoOrganization slug or id. Omit it when the credential can reach exactly one org — that org is used automatically. With several, the error names every slug you may pass; list them yourself with list_orgs.
keyIdYesThe managed key's id, from kms_list_keys (the `id` field — `name` is a display label and is not accepted here).

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations, the description discloses irreversible-in-this-toolset behavior, the partial effect on existing ciphertext, and the return shape ('Returns the updated key, with `disabledAt` now set'). It does not contradict the destructiveHint annotation; instead, it clarifies exactly what the destructive impact is.

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 but information-dense: main behavior, effect scope, reversibility caveat, sibling alternative, id lookup guidance, and return value are each covered in a single efficient paragraph. Every sentence contributes actionable guidance without redundancy.

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 destructive, single-parameter tool with no output schema, the description covers what happens before, during, and after the call. It explains the semantic effect, the limits of reversibility, the recommended sibling tool for a narrower operation, and what response to expect, so an agent has enough context to invoke it correctly.

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 both `keyId` and `org` already have detailed schema descriptions, including the crucial warning that `name` is not accepted. The description reinforces the keyId source via kms_list_keys but does not add substantial new parameter information beyond the schema.

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 opens with a specific verb and resource: 'Disable a managed KMS key,' and immediately defines the concrete effect on encrypt/sign operations. It distinguishes itself from kms_revoke_grant by contrasting whole-key disabling with cutting off one principal.

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?

It explicitly names the alternative tool and the condition that selects it: 'Use kms_revoke_grant instead to cut off ONE principal while the key stays in service.' It also warns that no enable tool exists and directs the agent to kms_list_keys for finding the id, leaving no ambiguity about when or how to use this tool.

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.

TDQS

A4.1/5.0
Disambiguation4/5

Most tools target a distinct resource and action, and many descriptions explicitly call out their near neighbors (list_envs vs list_env_groups vs list_group_envs). The main ambiguity is the three-way env/group listing cluster and the partial overlap between list_orgs and whoami, but the descriptions largely mitigate misselection.

Naming Consistency4/5

Snake_case verb_noun naming dominates (list_*, create_*, delete_*, revoke_*, rename_*), and the kms_ prefix is used consistently. A few outliers like audit, billing, whoami, signup, get_started, local_tool_for, and setup_local_crypto break the strict pattern, but they are still readable and no camelCase or chaotic mixing is present.

Tool Count2/5

40 tools is far above the 25-tool threshold and creates a heavy surface for an agent to navigate. The broad domain of apps, groups, envs, secrets, members, tokens, KMS, and leases partially justifies the size, but several list/delete/revoke families could be consolidated.

Completeness3/5

The set covers control-plane lifecycle well for apps, groups, and invitations, and provides solid list/delete/revoke coverage for envs, branches, tokens, leases, and KMS. However, create operations for envs, branches, tokens, and leases, plus all secret value reads/writes, are deliberately delegated to the local crypto plane; local_tool_for and setup_local_crypto help bridge the gap, but the server is not standalone-complete.

Resources