Skip to main content
Glama
ferelking242

Discord MCP Ultimate

discord_explain_permissions

Read-only

Resolve a member's effective channel permissions using Discord's own role and overwrite order to show which permissions are allowed, denied, or overridden. Use it to diagnose why someone cannot see or post in a channel.

Instructions

Explain a member's effective permissions in a channel, using Discord's own resolution (base role permissions, then category and channel overwrites, in Discord's order). Reports the resulting allow set, which flags came from overwrites, and any permission that is denied. Read-only. This is the tool to use when someone 'cannot see' or 'cannot post' and the cause is not obvious.

Input Schema

NameRequiredDescriptionDefault
user_idYesMember whose permissions should be explained.
guild_idYesDiscord server (guild) ID (snowflake).
channel_idNoChannel to resolve against. Omit for server-wide (base) permissions.

Output Schema

NameRequiredDescriptionDefault
notesYes
grantedYes
user_idYes
guild_idYes
channel_idYes
channel_nameYes
denied_by_overwriteYes
relevant_overwritesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so 'Read-only' is partly redundant, but the description adds real value by disclosing the resolution order (base roles, then category and channel overwrites) and what the response contains (allow set, overwrite-sourced flags, denials). That is meaningful behavioral context beyond the structured fields.

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 tight sentences, front-loaded with the core action and the resolution model, ending with the diagnostic use case. Little waste beyond the mildly redundant 'Read-only'.

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?

With an output schema present and annotations covering safety, the description supplies everything an agent needs: what is computed, in what order, what is returned, and the scenario that selects this tool.

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 100% and the schema already documents all three parameters, including 'omit channel_id for server-wide'. The description adds no syntax, format, or edge-case detail beyond what the schema states, so the 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 ('Explain a member's effective permissions in a channel') and adds the resolution semantics that set it apart from a raw permission dump. It doesn't explicitly name the nearest siblings (discord_get_channel_permissions, discord_audit_permissions), so differentiation is implied rather than stated.

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?

Gives a concrete trigger: use it when someone 'cannot see' or 'cannot post' and the cause is not obvious. That is clear when-to-use guidance, but no when-not or explicit alternative (e.g. use audit_permissions for a broader sweep) is named.

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