Skip to main content
Glama
@ola/buzz-mcp

@ola/buzz-mcp

Official
by ola-krutrim

buzz_leave_channel

DestructiveIdempotent

Leaves a Buzz channel by channel name or ID and supports a dry-run preview of the signed leave event before anything is submitted.

Instructions

Leave a channel you're in (kind 9022). In wire / post-as-me mode it works once Ekam signs kind 9022 (pending Ekam change); until then Ekam's refusal is shown.

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>"
    },
    "name": "buzz_leave_channel"
  }
}

Input Schema

NameRequiredDescriptionDefault
channelYeschannel name or id
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. Addedv0.2.36

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare destructive, idempotent and open-world, so the description adds real value by disclosing a mode-dependent precondition: in wire / post-as-me mode the leave only succeeds once kind 9022 is signed, and until then a refusal surfaces to the user. That failure mode is not visible from the schema or annotations. Unexplained jargon ('Ekam', kind 9022 signing) keeps it from a 5.

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?

Two tight sentences, action front-loaded, and the caveat placed second where it belongs. Both sentences earn their place, though the parenthetical '(pending Ekam change)' is opaque shorthand that costs a little clarity.

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 two-parameter mutation with no output schema, the description supplies the action, membership precondition, and a key failure mode; annotations handle safety. Missing only the reversibility/rejoin implication and any sibling disambiguation, so it sits just short of complete.

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%, including a detailed dry_run description, so the schema carries parameter meaning. The description adds nothing about what 'channel' accepts (name vs id) or what dry_run returns beyond what the property text already states. Baseline 3 applies.

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 ('Leave a channel you're in') and even names the underlying kind 9022, which makes it distinguishable from siblings like buzz_join_channel or buzz_archive_channel. It does not explicitly contrast itself with those siblings, keeping it just below a 5.

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?

Implies usage only through the qualifier 'you're in' (membership prerequisite). There is no statement of when to prefer this over buzz_archive_channel, buzz_delete_channel, or buzz_remove_member, and no when-not guidance. An agent gets no routing help from the description.

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