Skip to main content
Glama
BrightbeamAI

@brightbeamai/chap-coordinator-mcp

Official

chap.participant.rotate_key

chap.participant.rotate_key

Replace a participant's signing key with a new one, retiring the old key but keeping it valid for verifying previously signed envelopes.

Instructions

Retire a participant's signing key and register its replacement. The old key stays in the key history with a valid_until timestamp, so envelopes it signed still verify.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fromYesParticipant URI, e.g. 'human:alice@example.org' or 'agent:bot@local'.
new_jwkYesThe replacement public key as a JWK. It must carry a 'kid'. Whether the request itself has to be signed with the old key is decided at dispatch, and only where the coordinator is configured to require signatures.
old_kidYesKey id being retired. It is given a valid_until timestamp and stays in the member's key history, so signatures made before the rotation still verify. A key id that is unknown is refused with -32071, and one already revoked with -32072.
workspaceYesWorkspace identifier, e.g. 'wsp_techcorp_support'.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.13

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the behavioral disclosure burden. It explicitly discloses an important side effect: the old key is not deleted; it stays in key history with a valid_until timestamp and old envelopes still verify. This is meaningful beyond the basic 'rotate' framing.

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?

Two sentences deliver the core action and the most important behavioral consequence without wasted words. The description is front-loaded with the main purpose and immediately adds the key retention detail that clarifies why this is rotation and not revocation.

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 schema richly documents all four required parameters, including an example format and error codes for unknown or already-revoked key ids. The description covers the essential post-condition. The main gap is the lack of an explicit output or return behavior, but this is not required for a tool whose completion is primarily its side effect.

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?

The schema covers all parameters, including descriptions for workspace, from, old_kid, and new_jwk, so the baseline is 3. The main description adds no extra parameter-level detail beyond naming the old key and replacement, but the schema already provides sufficient semantics.

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 clearly states a specific action: 'Retire a participant's signing key and register its replacement.' This distinguishes rotation from the sibling revoke_key tool by noting that the old key remains in history with a valid_until timestamp, so the purpose is unambiguous.

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

Usage Guidelines4/5

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

The description provides clear context for when rotation is appropriate: replacing a signing key while preserving verifiability of past signatures. It does not explicitly name alternatives or state when not to use the tool, but the behavior described gives enough guidance to select this over a plain revoke.

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