Skip to main content
Glama
ferelking242

Discord MCP Ultimate

discord_set_bot_avatar

Idempotent

Changes the bot's global avatar across all servers and DMs by accepting an HTTPS URL, data URI, or base64 image and returning the new avatar URL. Use for bot-wide profile updates, not server icons.

Instructions

Change the bot's global avatar. This applies in every server and in DMs, and is not the same as the server's icon (discord_set_guild_icon) or the bot's per-server avatar (discord_set_bot_guild_avatar). Accepts an https URL, data: URI or base64; PNG, JPEG, GIF or WebP up to 10 MB. Returns the new avatar URL. WARNING: Discord rate-limits this endpoint; repeated calls will be throttled.

Input Schema

NameRequiredDescriptionDefault
imageYesAn image as an https URL, a data:image/png;base64,... URI, or a bare base64 string (PNG, JPEG, GIF or WebP, max 10 MB).

Output Schema

NameRequiredDescriptionDefault
avatarYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.0

TDQS

A4.7/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnly=false, destructive=false, idempotent=true, openWorld=true), and the description adds genuinely new behavioral context: global blast radius, the accepted input formats and 10 MB ceiling, the returned avatar URL, and a rate-limit warning about repeated calls being throttled. That rate-limit disclosure is exactly the kind of operational trait 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?

Front-loads the core action and scope, then follows with disambiguation, input constraints, return value, and the rate-limit warning in descending order of importance. Every sentence carries distinct information with no restatement of the name or title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A one-parameter mutation tool with full annotation coverage and an output schema is well served here: scope, alternatives, accepted formats, size cap, return value, and throttling risk are all disclosed. Nothing an agent needs to call it correctly and set expectations is missing.

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?

The single parameter has 100% schema description coverage, so the accepted formats and size limit are already documented in the schema. The description restates the same format list without adding syntax or edge-case detail (e.g. how bare base64 is distinguished from a data URI). Baseline 3 applies when the schema does the heavy lifting.

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?

Opens with a specific verb+resource ("Change the bot's global avatar") and immediately scopes it as global, applying in every server and DMs. It explicitly names the two most confusable siblings, discord_set_guild_icon and discord_set_bot_guild_avatar, so the agent can disambiguate without opening schemas.

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

Usage Guidelines5/5

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

States the selection condition directly: use this for the bot's global avatar, use discord_set_guild_icon for the server icon and discord_set_bot_guild_avatar for a per-server avatar. That is an explicit alternative routing rule, not an implied one.

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