Skip to main content
Glama
Discord MCP - Discord server management MCP for AI agents

Discord MCP - Discord server management MCP for AI agents

Forward message

forward_message

Forward a Discord message to another channel as a quoted snapshot, with an optional note posted just before it. Use it to share messages across channels in the same server.

Instructions

Forward a message from one channel into another, the way the Discord client's forward does: the original travels along as a quoted snapshot. Works across channels in the server. An optional note is posted as its own message just before the forward, since Discord does not allow text on the forward itself.

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>",
      "from_channel": "<from_channel>",
      "message_id": "<message_id>"
    },
    "name": "forward_message"
  }
}

Input Schema

NameRequiredDescriptionDefault
guildNoGuild (server) name or ID. Omit to use the default guild.
channelYesChannel to forward the message into (name or ID).
contentNoOptional note, posted as a separate message just before the forward.
message_idYesThe message to forward: its ID or link.
from_channelYesChannel the message is currently in (name or ID).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.4.2
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • changedInput schema / properties / message_id / description
      Previous value: -"ID of the message to forward."New value: +"The message to forward: its ID or link."
  2. Changed1 schema field changedv1.3.0
    • removedInput schema / additionalProperties
      Removed value: -false
  3. Addedv1.1.2

TDQS

A4.4/5.0
Behavior4/5

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

Annotations only say this is a non-read, non-destructive write. The description goes further by disclosing the observable side effects: a quoted snapshot plus a separate preceding note message when content is supplied, and the server-scoped channel-to-channel constraint. It does not mention permission requirements or what happens if the source channel is inaccessible, which keeps it below 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight clauses, with the core action and the snapshot semantics front-loaded and the note quirk explained in one parenthetical-style sentence. No filler and nothing buried.

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?

With no output schema and full schema coverage, the description covers the essential behavior — snapshot semantics, cross-channel scope, the separate note message — which is enough to invoke it correctly. It is slightly thin on failure conditions and permission expectations for a mutating tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds real meaning on top by clarifying that content is emitted as its own message before the forward (because Discord forbids text on the forward itself) and by framing channel/from_channel as a destination/source pair within the same server.

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 specific verb and resource ('Forward a message from one channel into another') and immediately characterizes the mechanism ('the original travels along as a quoted snapshot'), which separates it from send_message or get_message without needing to name them.

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?

It establishes the operating context ('Works across channels in the server') and explains the note-before-forward pattern, so an agent knows what this tool produces rather than a plain repost. It stops short of explicitly naming an alternative such as send_message for cases where a copy without quoted snapshot is wanted.

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

Deploy Server

Other Tools