pin_message
Pin important messages in Discord text channels to keep them visible and accessible for all members.
Instructions
Pin a message in a text channel.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes | ||
| message_id | Yes | ||
| reason | No |
Implementation Reference
- src/discord_mcp/server.py:758-767 (handler)The handler function for the 'pin_message' tool. It fetches the specified channel and message, then pins the message using Discord's message.pin() method with an optional reason.async def pin_message(channel_id: str | int, message_id: str | int, reason: str | None = None, ctx: Context = None) -> str: # type: ignore[override] """Pin a message in a text channel.""" assert ctx is not None bot, _ = await _acquire(ctx) channel = await _ensure_channel(bot, _require_int(channel_id, "channel_id")) message = await _fetch_message(channel, _require_int(message_id, "message_id")) await _call_discord("pin message", message.pin(reason=reason)) return f"Pinned message {message.id} in channel {channel.id}."