Skip to main content
Glama
@ola/buzz-mcp

@ola/buzz-mcp

Official
by ola-krutrim

buzz_remove_member

DestructiveIdempotent

Remove a person from a Buzz channel by npub, hex pubkey, exact display name, or email. Enforces owner/admin role limits and supports dry-run preview before signing.

Instructions

Remove a person from a channel (NIP-29 kind 9001), as you. Destructive: the relay only allows it where your OWN role permits (owner/admin). user = npub / hex pubkey / exact display-name / email.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "channel": "<channel>",
      "user": "<user>"
    },
    "name": "buzz_remove_member"
  }
}

Input Schema

NameRequiredDescriptionDefault
userYesnpub / hex pubkey / exact display name / email
channelYes
confirmNoset true to confirm a destructive action (asked once per session per kind in wire / post-as-me mode)
dry_runNopreview only: resolve everything and show the exact event that would be signed (auth tags redacted) — nothing is signed, uploaded or sent

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changedv0.2.36
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / channel / maxLength
      Added value: +256
    • addedInput schema / properties / confirm
      Added value: +{
      +  "description": "set true to confirm a destructive action (asked once per session per kind in wire / post-as-me mode)",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / dry_run
      Added value: +{
      +  "description": "preview only: resolve everything and show the exact event that would be signed (auth tags redacted) — nothing is signed, uploaded or sent",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / user / maxLength
      Added value: +320
  2. Addedv0.2.7

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, so the safety profile is covered. The description still earns credit by disclosing the server-side permission gate (relay-enforced owner/admin role) and the underlying event kind, which are behaviors the annotations cannot express.

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 tight sentences, front-loaded with the action and scope, then the destructive/permission constraint, then the identifier format. No filler or restated title.

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?

For a destructive, open-world mutation with no output schema, the description covers the essentials: what it does, who may do it, and accepted identifier forms. Failure modes and what the success response contains are left unspecified, though confirm/dry_run semantics are handled by the schema.

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 coverage is 75% and destructive-operation params (confirm, dry_run) are well documented in the schema. The description's only parameter note restates the `user` schema text nearly verbatim ("npub / hex pubkey / exact display-name / email"), and `channel` remains undocumented in both places, so it adds little beyond the structured fields.

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?

States a specific verb and resource ("Remove a person from a channel") and anchors it to the protocol event (NIP-29 kind 9001), plus "as you" signals the actor is the caller. It does not explicitly contrast with the nearest siblings, buzz_leave_channel (self-removal) and buzz_add_member, so the agent must infer the distinction from the wording.

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

Usage Guidelines3/5

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

The description supplies a real precondition — the relay only permits removal where your OWN role is owner/admin — which effectively tells the agent when this call can succeed. It offers no explicit when-not guidance and never names buzz_leave_channel or buzz_add_member as alternatives, leaving sibling selection implicit.

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