Skip to main content
Glama
discord-server-mcp

discord-server-mcp

delete_messages

Destructive

Delete up to 100 Discord messages at once, with older messages removed one by one. Preview with dry-run before confirming this permanent action.

Instructions

Delete one or more messages (up to 100). Messages older than 14 days are deleted one by one.

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

Input Schema

NameRequiredDescriptionDefault
botNoUse this bot (name or id) instead of choosing automatically
reasonNoReason shown in the server's audit log
serverNoServer name or id. Optional when the bot is in one server or DISCORD_GUILD_ID is set.
channelYesChannel or thread name, id, or message link
confirmNoMust be true to really do this permanent action; without it you get a preview
dry_runNoShow the requests that would be made without changing anything
message_idsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already mark the tool destructive and not read-only, and the description adds important operational behavior: bulk deletion caps at 100 and messages older than 14 days are deleted one by one. It does not detail permissions or audit effects, but that is partially covered by the reason and confirm parameters.

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 short sentences front-load the core action and the most important operational exception. There is no redundant or wasted wording.

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 7-parameter tool with no output schema, the description covers the action, batch limit, and the key age-based behavior. Confirmation/dry-run and audit fields are left to the schema, which is reasonable given their explicit descriptions.

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 86%, so most parameter meaning is already documented. The description adds the 14-day deletion behavior and repeats the 100-message limit, but does not add much beyond the schema for individual parameters.

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 gives a precise verb and resource: "Delete one or more messages (up to 100)." It clearly distinguishes the operation from sibling message tools such as read_messages or edit_message by naming deletion.

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?

It implies use when removing one or more messages and gives a batch limit plus the 14-day rule, but it does not explicitly state when to use this versus alternatives or any exclusions. The guidance is adequate but not fully routing.

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