Skip to main content
Glama
berkal749

mcp-discord-mod

by berkal749

mcp-discord-mod

A lightweight Model Context Protocol server for Discord server moderation. Built with discord.js v14 and TypeScript.

Focused on what matters: kick, ban, timeout, roles, channels, audit logs, and member management. No bloat.

Setup

1. Create a Discord Bot

  1. Go to Discord Developer Portal

  2. Create a new application → Bot

  3. Under Privileged Gateway Intents, enable:

    • Server Members Intent

    • Message Content Intent

  4. Copy the bot token

2. Install

git clone https://github.com/YOUR_USERNAME/mcp-discord-mod.git
cd mcp-discord-mod
npm install
npm run build

3. Configure

Set your bot token as an environment variable:

export DISCORD_TOKEN="your_bot_token_here"

Or create a .env file:

DISCORD_TOKEN=your_bot_token_here

4. Add to your MCP client

Add to your MCP config (e.g. opencode.json, claude_desktop_config.json, etc.):

{
  "discord-mod": {
    "type": "local",
    "command": ["node", "/path/to/mcp-discord-mod/build/index.js"],
    "env": {
      "DISCORD_TOKEN": "your_bot_token_here"
    }
  }
}

Related MCP server: Discord MCP Server

Tools

Tool

Description

discord_mod_login

Login to Discord (auto-logins if DISCORD_TOKEN is set)

discord_mod_kick_member

Kick a member from a server

discord_mod_ban_member

Ban a member (optionally delete recent messages)

discord_mod_unban_member

Unban a user

discord_mod_timeout_member

Timeout (mute) a member for a duration

discord_mod_warn_member

Send a warning DM to a member

discord_mod_list_bans

List all banned users

discord_mod_set_nickname

Set or clear a member's nickname

discord_mod_list_roles

List all roles in a server

discord_mod_create_role

Create a new role

discord_mod_edit_role

Edit role properties

discord_mod_delete_role

Delete a role

discord_mod_assign_role

Assign a role to a member

discord_mod_remove_role

Remove a role from a member

discord_mod_create_category

Create a channel category

discord_mod_create_channel

Create a text or voice channel

discord_mod_delete_channel

Delete a channel

discord_mod_edit_channel

Edit channel name, topic, slowmode

discord_mod_set_permissions

Set role/user permissions on a channel

discord_mod_remove_permissions

Remove permission overrides

discord_mod_list_members

List server members

discord_mod_get_member

Get detailed member info

discord_mod_list_servers

List all bot servers

discord_mod_get_server_info

Get server details and channels

discord_mod_get_audit_log

View the server audit log

discord_mod_send_dm

Send a direct message to a user

discord_mod_purge_messages

Bulk delete messages with filters

discord_mod_bulk_delete_messages

Delete up to 100 messages by ID

discord_mod_pin_message

Pin a message

discord_mod_unpin_message

Unpin a message

Bot Permissions

Your bot needs these permissions in the server:

  • Kick Members

  • Ban Members

  • Moderate Members (for timeouts)

  • Manage Roles

  • Manage Channels

  • View Audit Log

  • Send Messages

  • Read Message History

  • Manage Messages (for purge)

License

MIT

Available Tools

29 tools
discord_mod_assign_roleB

Assigns a role to a member in a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleIdYesThe ID of the role to assign
userIdYesThe ID of the user
guildIdYesThe ID of the server

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided. The description does not disclose behavioral traits like required permissions, effect on existing roles, or error conditions (e.g., role already assigned). It only states the action without additional context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

The description is a single sentence with no unnecessary words. However, it could be more informative without being lengthy.

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

Completeness3/5

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

For a simple assignment tool with no output schema and no annotations, the description is minimal. It does not address potential complexities like role hierarchy or permissions, but given the tool's straightforward nature, it is adequate but not exhaustive.

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 description coverage is 100%, so the baseline is 3. The description adds no extra meaning beyond the schema, which already describes each parameter adequately.

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 clearly states the action (assigns), the resource (role), and the target (member). It is specific and distinguishes the tool from siblings like discord_mod_remove_role.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, such as when to assign vs. remove a role. No prerequisites or conditions mentioned.

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

discord_mod_ban_memberB

Ban a member from a Discord server. Optionally deletes their recent messages.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the ban
userIdYesThe ID of the user to ban
guildIdYesThe ID of the server
deleteMessageSecondsNoSeconds of messages to delete (0-604800, i.e. 0-7 days)

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavioral traits. It mentions the optional deletion of messages but omits critical details such as irreversibility, permission requirements, or side effects. A ban is a serious action with implications not covered here.

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?

The description is exceptionally concise: two sentences with no unnecessary words. The primary action is stated first, and the optional feature is added immediately.

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

Completeness2/5

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

Given the absence of output schema and annotations, the description is too sparse. It does not explain return values, error scenarios, or prerequisites. For a moderation tool, more context is needed for an agent to use it confidently.

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%, so the baseline is 3. The description adds value by explaining that deleteMessageSeconds is for deleting recent messages, but it does not elaborate on other parameters beyond what the schema provides.

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 clearly states the action 'Ban a member from a Discord server' and adds a unique feature 'Optionally deletes their recent messages,' which distinguishes it from sibling tools like kick or timeout.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description does not compare with siblings like kick_member or timeout_member, leaving the agent without context for choosing the appropriate moderation action.

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

discord_mod_bulk_delete_messagesB

Bulk deletes up to 100 messages in a channel. Messages must be less than 14 days old.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the deletion
channelIdYesThe ID of the channel
messageIdsYesArray of message IDs to delete (1-100)

TDQS

B3.3/5.0
Behavior3/5

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

Discloses key constraints (message limit and age requirement) but omits behavioral details such as required permissions, rate limits, error handling for invalid IDs, or whether partial success occurs. No annotations exist to supplement.

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 concise sentences, front-loaded with the core action and constraints. No unnecessary words or repetition.

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

Completeness3/5

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

Adequate for a simple bulk deletion tool with clear input schema and no output schema. However, it lacks details on response behavior, permission requirements, and potential side effects, which would help the agent gauge completeness.

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%, so parameters are already documented. The description adds no additional meaning beyond the schema—e.g., it does not clarify the 'reason' purpose or the expected format for message IDs.

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?

Clearly states the verb 'bulk deletes' and resource 'messages in a channel', with specific constraints (up to 100, less than 14 days old). However, it does not explicitly distinguish from the sibling tool 'discord_mod_purge_messages', which may serve a similar function.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like individual deletion or purge. Lacks context about prerequisites (e.g., required permissions) or situations where it is not appropriate.

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

discord_mod_create_categoryB

Creates a new category in a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesCategory name
guildIdYesThe ID of the server
positionNoPosition in the channel list

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. Only states it creates a category, but doesn't disclose permission requirements, rate limits, or side effects. Minimal behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

One concise sentence with no wasted words. However, it could be slightly more informative without becoming verbose.

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

Completeness2/5

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

For a creation tool with no output schema and no annotations, the description is too brief. It doesn't explain return values, side effects, or permission needs. Incomplete for an agent to fully understand usage.

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% with descriptions for all three parameters. The tool description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

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 uses a specific verb ('Creates') and resource ('category in a Discord server'). It clearly distinguishes from siblings like discord_mod_create_channel which creates a channel, not a category.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like create_channel or edit_channel. No exclusions or prerequisites mentioned.

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

discord_mod_create_channelB

Creates a new text or voice channel in a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicNoChannel topic (text channels only)
guildIdYesThe ID of the server
categoryIdNoParent category ID
channelNameYesChannel name

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, so description must carry full burden. It only says 'creates' but lacks important behavioral details like whether the operation is destructive, permission requirements, or handling of duplicate names. For a mutation tool, this is insufficient.

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?

Single sentence, front-loaded with purpose. Every word is meaningful. No redundant phrasing.

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

Completeness2/5

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

Missing crucial context: no output schema (does not describe return value), no explanation of how channel type is determined, no error handling or rate limit info. The description is too minimal for a creation tool with moderate complexity.

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% with descriptions for all 4 parameters. Description adds that topic is only for text channels, which is useful, but it introduces confusion by stating 'text or voice channel' without a type parameter in the schema. Baseline 3 is appropriate as schema already defines 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?

Description clearly states it creates a channel (text or voice) in a Discord server. The verb 'creates' and resource 'channel' are specific, and it distinguishes from sibling tools like discord_mod_create_category and discord_mod_delete_channel.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., discord_mod_edit_channel for modifications). No mention of prerequisites (e.g., 'Manage Channels' permission) or when not to use it.

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

discord_mod_create_roleC

Creates a new role in a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesRole name
colorNoHex color string (e.g. '#FF0000') or color name
hoistNoWhether the role should be displayed separately in the sidebar
guildIdYesThe ID of the server
mentionableNoWhether the role can be mentioned by anyone
permissionsNoArray of permission flag names (e.g. ['SendMessages', 'ViewChannel'])

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only states 'creates' without disclosing permissions needed, rate limits, side effects, or whether the role is created immediately. Minimal behavioral detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

Single sentence that is direct and to the point. No unnecessary words, but could benefit from additional context without losing conciseness.

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

Completeness2/5

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

Given 6 parameters and no output schema, the description is incomplete. It does not explain return values, error handling, or role creation behavior. Without annotations, more detail is needed for a complete picture.

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% with each parameter having a description. The tool description adds no further meaning beyond the schema. Baseline score of 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?

Description clearly states verb 'creates' and resource 'role' in a Discord server. It directly conveys the tool's action and scope, but does not differentiate from siblings like edit or delete roles. The name itself provides distinction.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like discord_mod_edit_role or discord_mod_delete_role. No context about prerequisites or typical use cases.

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

discord_mod_delete_channelB

Deletes a Discord channel.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for deletion
channelIdYesThe ID of the channel to delete

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It fails to mention that deletion is irreversible, that it requires certain permissions (likely 'Manage Channels'), or what side effects occur (e.g., message loss). This lack of transparency could lead to unintended data loss.

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?

The description is extremely concise with a single well-formed sentence. It is front-loaded with the core action and resource, making it quick to parse.

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

Completeness2/5

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

Given the tool's destructive nature, the description is insufficient. It does not explain the absence of an output schema, the irreversibility of the action, or required permissions. For such a simple tool, additional safety warnings would be expected.

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 description coverage is 100%: both parameters are described in the schema. The tool description adds no additional meaning beyond what the schema provides, so a baseline score of 3 is appropriate.

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 clearly states the verb 'deletes' and the resource 'a Discord channel', leaving no ambiguity about the tool's function. It distinguishes itself from sibling tools like discord_mod_edit_channel or discord_mod_create_role by explicitly naming the resource type.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives (e.g., discord_mod_edit_channel or discord_mod_delete_role). There is no mention of prerequisites, permissions, or conditions under which deletion is appropriate.

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

discord_mod_delete_roleB

Deletes a role from a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for deletion
roleIdYesThe ID of the role to delete
guildIdYesThe ID of the server

TDQS

B3/5.0
Behavior2/5

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

The description says 'Deletes', implying a destructive action, but provides no details on consequences (e.g., removal from members), auth requirements, or irreversibility. No annotations compensate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

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

The description is very short (one sentence), but omits important usage context; it is concise but not optimally structured to convey key information.

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

Completeness2/5

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

For a simple delete tool, further context on permissions, irreversibility, and effects on role assignments is missing, making the description insufficiently complete.

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 parameter descriptions are functional but minimal. The tool description adds no extra meaning beyond the schema.

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 clearly states the verb 'Deletes' and the resource 'role from a Discord server', distinguishing it from sibling tools like create_role or edit_role.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like edit_role or assign_role, nor any prerequisites or conditions for deletion.

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

discord_mod_edit_channelA

Edits a Discord channel's name, topic, parent category, position, or slowmode.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew name
topicNoNew topic
parentIdNoNew parent category ID
positionNoNew position
channelIdYesThe ID of the channel
rateLimitPerUserNoSlowmode in seconds (0-21600, 0 to disable)

TDQS

A3.5/5.0
Behavior2/5

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

The description lists editable fields but does not disclose behavioral traits beyond the schema. For example, it does not mention that changing parentId moves the channel, or that rateLimitPerUser only applies to text channels. With no annotations, the description carries the full burden for transparency, and it falls short.

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?

The description is a single concise sentence that front-loads the action and lists the editable fields. No extraneous information is included.

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

Completeness3/5

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

The description is adequate for a simple edit tool, but it lacks context on side effects (e.g., reordering when changing position) and does not clarify that multiple fields can be edited simultaneously (schema permits it, but description uses 'or' which might imply mutually exclusive). No output schema or annotations are present to supplement.

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 description coverage is 100%, so baseline is 3. The description merely restates the fields without adding new meaning or context beyond what the schema already provides. It does not enhance understanding of parameter semantics.

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 clearly states the action (edits) and the resource (Discord channel), and lists the editable attributes (name, topic, parent category, position, slowmode). It is a specific verb+resource combination and distinguishes itself from sibling tools like create_channel or delete_channel.

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?

The description implies usage when modifications to a channel are needed, but it lacks explicit guidance on when to use this tool versus other tools (e.g., create_channel, set_permissions) or prerequisites like permissions. No exclusions or alternatives are mentioned.

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

discord_mod_edit_roleC

Edits an existing role in a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew name for the role
colorNoNew hex color
hoistNoWhether the role should be displayed separately
roleIdYesThe ID of the role to edit
guildIdYesThe ID of the server
positionNoNew position in the role hierarchy
mentionableNoWhether the role can be mentioned
permissionsNoArray of permission flag names

TDQS

C2.8/5.0
Behavior1/5

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

No annotations provided, and description fails to disclose behavioral traits such as whether edits overwrite or merge, side effects, authorization needs, or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

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

Single sentence is concise but overly minimal; lacks structure and important details.

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

Completeness2/5

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

For an 8-parameter tool with no output schema or annotations, the description is insufficient; fails to explain return values, partial updates, or error conditions.

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% so schema describes each parameter. Description adds no extra meaning beyond the schema (e.g., no format for color or permissions array).

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?

Description clearly states verb 'Edits' and resource 'existing role in a Discord server', distinguishing it from sibling tools like create_role or delete_role.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives (e.g., create_role, assign_role) or prerequisites like role existence or permissions.

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

discord_mod_get_audit_logB

Fetches the audit log for a server. Shows who did what, when, and why.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax entries to return (1-100, default 50)
beforeNoEntry ID to paginate before
userIdNoFilter by executor user ID
guildIdYesThe ID of the server
actionTypeNoFilter by action type (e.g. MemberKick, MemberBanAdd, MessageDelete)

TDQS

B3.2/5.0
Behavior3/5

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

The description mentions what the tool shows ('who did what, when, and why'), but omits important behavioral traits such as read-only nature, permission requirements, pagination behavior, and rate limits, which are not covered by annotations.

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?

The description is extremely concise with two sentences, front-loading the core action and resource, and contains no wasted words.

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

Completeness2/5

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

Given the tool has five parameters including pagination and filters, the description is too brief to fully guide an agent on effective usage, especially lacking details on return format and optional parameter interactions.

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?

All parameters have descriptions in the input schema (100% coverage), so the description adds no additional meaning beyond what the schema already provides.

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?

The description clearly states the action ('Fetches') and resource ('audit log for a server'), and distinguishes it from sibling tools which perform moderation actions rather than read logging.

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

Usage Guidelines2/5

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

No usage guidelines are provided; the description does not specify when to use this tool versus alternatives like discord_mod_list_members or discord_mod_get_server_info.

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

discord_mod_get_memberA

Gets detailed information about a specific member in a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYesThe ID of the user
guildIdYesThe ID of the server

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. However, it only says 'detailed information' without specifying what fields or data are returned. It also does not mention any required permissions, rate limits, or side effects.

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?

The description is a single, clear sentence with no extraneous words. It is front-loaded and efficient.

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

Completeness3/5

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

Given no output schema, the description should explain what 'detailed information' includes. It is vague, but for a simple retrieval tool with only two parameters, it is minimally adequate. More detail on the return object would improve completeness.

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% with both parameters having descriptions ('The ID of the user' and 'The ID of the server'). The description does not add additional meaning beyond the schema, so it earns the baseline score.

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 clearly states the tool 'Gets detailed information about a specific member in a Discord server.' It uses a specific verb ('gets') and resource ('member'), and the phrase 'specific member' distinguishes it from sibling tools that list members, kick, ban, etc.

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?

No explicit guidance on when to use this tool versus alternatives like discord_mod_list_members. The purpose is self-evident, but the description does not mention when to prefer this over other member-related tools or provide any context about prerequisites.

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

discord_mod_get_server_infoA

Retrieves detailed information about a Discord server including channels and member count.

ParametersJSON Schema
NameRequiredDescriptionDefault
guildIdYesThe ID of the server

TDQS

A4.1/5.0
Behavior4/5

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

No annotations are provided, so the description carries full burden. It clearly states this is a read operation retrieving server info, with no side effects. It adds specificity by mentioning channels and member count, which is beyond a vague 'retrieves info'.

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?

Single sentence, front-loaded with verb and object. No waste.

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?

For a simple read tool with one parameter and no output schema, the description is complete. It states what information is returned (channels, member count), which is sufficient for the agent to understand the tool's output.

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 description for guildId is adequate ('The ID of the server'). The tool description does not add extra meaning to the parameter, so baseline of 3 applies.

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 clearly states the verb 'Retrieves' and the resource 'detailed information about a Discord server', specifying 'channels and member count'. It distinguishes from sibling tools like discord_mod_list_servers (lists servers) and discord_mod_get_member (gets a specific member).

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?

The description implies usage for getting details of a specific server, but provides no explicit guidance on when to use this vs alternatives like discord_mod_list_servers or discord_mod_get_member. No exclusions or when-not-to-use are mentioned.

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

discord_mod_kick_memberA

Kick a member from a Discord server. The member can rejoin with an invite.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the kick (shown in audit log)
userIdYesThe ID of the user to kick
guildIdYesThe ID of the server

TDQS

A4/5.0
Behavior4/5

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

Discloses that the member can rejoin, which is key behavioral context. No annotations needed for this simple action.

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 sentences, front-loaded action, no unnecessary words.

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?

Adequate for a simple void action; no output schema expected. Missing details like permissions but acceptable.

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 covers 100% of parameters with descriptions; description adds no extra meaning.

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?

Clearly states 'Kick a member' and distinguishes from ban by noting they can rejoin.

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?

Implies use over ban when permanent removal is not desired, but no explicit when-to-use or alternatives.

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

discord_mod_list_bansB

Lists all banned users in a Discord server with their reasons.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoUser ID to paginate after
limitNoMax bans to return (1-1000, default 1000)
guildIdYesThe ID of the server

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, and the description fails to mention pagination behavior, rate limits, or authentication requirements. It only states that reasons are included, but does not describe the overall structure or limitations.

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?

The description is a single sentence that concisely communicates the core function without extraneous information.

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

Completeness3/5

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

While the description covers the purpose, it lacks details about output format and pagination behavior. Given the parameter count and no output schema, the description could be more complete.

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%, so the parameters are already well-documented. The description adds no additional semantic meaning beyond the schema.

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 clearly states the tool lists banned users with reasons, using a specific verb ('lists') and resource ('banned users'). It distinguishes from siblings that handle members or different actions.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like listing members or searching bans. No context about prerequisites or typical use cases.

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

discord_mod_list_membersA

Lists members in a Discord server with their roles.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoUser ID to paginate after
limitNoMaximum number of members to return (default 100, max 1000)
guildIdYesThe ID of the server

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It states it lists members with roles but does not mention pagination behavior (though schema has limit/after), auth requirements, or any side effects. For a simple read operation, this is minimally adequate.

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?

Single sentence conveying all essential information. No wasted words, front-loaded with purpose.

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?

Given the low complexity (3 params, no nested objects, no output schema), the description is largely sufficient. It could mention pagination details or rate limits, but the core purpose is covered. A more thorough description might add value but is not necessary.

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%, so parameters are already well-described. The description adds no extra context beyond what the schema provides (e.g., default limit, meaning of 'after'). Baseline of 3 is appropriate.

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?

Clearly states verb 'lists' and resource 'members in a Discord server with their roles'. Distinguishes from sibling tools like discord_mod_get_member (single member) and discord_mod_list_servers (servers).

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?

Provides no explicit guidance on when to use this tool vs alternatives. The description is straightforward but lacks context about exclusivity or alternatives, leaving the agent to infer from tool names.

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

discord_mod_list_rolesB

Lists all roles in a Discord server with their properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
guildIdYesThe ID of the server

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description bears full responsibility for behavioral disclosure. While 'list' implies a read operation, it does not explicitly state that it is non-destructive, nor does it mention required permissions or rate limits. The phrase 'with their properties' is vague about what properties are included.

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?

The description is a single, clear sentence that directly states the tool's purpose. No unnecessary words, front-loaded with the key action.

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

Completeness2/5

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

Given the tool's simplicity (one parameter, no output schema), the description is insufficient. It does not explain what 'properties' refers to, nor does it provide context about role hierarchy, permissions needed, or typical use cases. The tool is part of a mod suite, so usage context matters.

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% (only guildId described). The description adds 'with their properties' but does not specify what those properties are, so it adds minimal meaning beyond the schema. Following the guideline, baseline 3 is appropriate.

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 clearly states the action (lists) and the resource (all roles in a Discord server) and adds 'with their properties,' which clarifies the scope. It distinguishes from sibling list tools like discord_mod_list_members or discord_mod_list_bans by specifying roles.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives (e.g., when needing role IDs for other role-modification tools). There is no mention of prerequisites or exclusions.

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

discord_mod_list_serversA

Lists all Discord servers the bot is a member of.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

Description clearly indicates a read-only list operation with no side effects. No annotations provided, but the description is sufficient for this simple tool. Could mention if there are any rate limits or pagination, but not required given no 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?

Single, front-loaded sentence containing all necessary information with zero waste.

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?

Tool has no parameters and no output schema; description fully covers what it does for a simple listing tool. No additional context needed.

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?

No parameters exist; schema description coverage is 100% (empty). Baseline 4 for zero parameters, and description appropriately adds nothing extra.

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 'Lists all Discord servers the bot is a member of' clearly states the verb (list) and resource (servers), and distinguishes from siblings like discord_mod_list_members that list members.

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?

No explicit guidance on when to use or when not to use compared to siblings, but the purpose is self-explanatory; it's a straightforward list tool with no implied alternatives.

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

discord_mod_pin_messageB

Pins a message in a channel.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesThe ID of the channel
messageIdYesThe ID of the message to pin

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only states the action. It does not disclose behavioral traits such as destructive nature, rate limits, or whether it fails if the message is already pinned.

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?

A single, clear sentence that efficiently communicates the tool's purpose with no unnecessary words.

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

Completeness3/5

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

For a simple action, the description covers the core purpose but lacks context on return values, error handling, and prerequisites (e.g., permissions, limits).

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% with clear parameter descriptions. The tool description adds no additional meaning beyond what the schema already provides.

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 'Pins a message in a channel.' uses a specific verb ('Pins') and resource ('a message in a channel'), clearly distinguishing it from siblings like unpin_message.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., no mention of prerequisites, permission requirements, or scenarios where pinning is appropriate).

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

discord_mod_purge_messagesB

Purges messages from a channel with filters (by user, content, attachments). Scans and bulk-deletes matching messages.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoSnowflake ID: only delete messages after this
limitNoMax messages to scan (1-1000, default 100)
beforeNoSnowflake ID: only delete messages before this
authorIdNoOnly delete messages from this user ID
containsNoOnly delete messages containing this text
channelIdYesThe ID of the channel to purge from
hasAttachmentNoOnly delete messages with attachments

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden. It mentions 'scans and bulk-deletes', indicating destructive behavior, but lacks details on permissions required (e.g., 'manage messages'), irreversibility, rate limits, or error handling (e.g., bot permission checks).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

Single sentence that front-loads the main action. However, it could be more structured (e.g., listing filters explicitly). Overall concise with no wasted words.

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

Completeness2/5

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

Missing crucial context for a destructive 7-param tool: no explanation of return values (e.g., count of deleted messages), error conditions (e.g., missing permissions, message too old), or behavior limitations (e.g., cannot delete messages older than 14 days). Minimal for its complexity.

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%, so all parameters are documented. The description adds context by mentioning filters (by user, content, attachments) that map to authorId, contains, hasAttachment, but this is partially redundant with schema descriptions. Baseline 3 is appropriate.

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 clearly states 'Purges messages from a channel with filters' – a specific verb (purge) and resource (messages). It distinguishes from sibling tools like discord_mod_bulk_delete_messages by emphasizing filtering capabilities (by user, content, attachments).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like discord_mod_bulk_delete_messages. The description does not specify prerequisites, permissions, or exclusive contexts (e.g., 'use when you need filtered deletion').

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

discord_mod_remove_permissionsA

Removes all permission overrides for a role or user on a channel or category.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the removal
roleIdYesRole or user ID to remove overrides for
channelIdYesChannel or category ID

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, and the description only states the action without detailing behavioral traits such as destructiveness, permission requirements, or reversibility. The agent is left unaware of important side effects.

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?

The description is a single, concise sentence that is front-loaded with the core action and object. Every word is necessary, with zero waste.

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

Completeness3/5

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

Given the simple parameters and lack of output schema, the description is minimally adequate. However, it lacks behavioral details (e.g., what happens if no overrides exist, whether removal is permanent) that would make it complete for an agent.

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 description coverage is 100%, so the schema already documents the parameters. The description adds no additional meaning beyond what the schema provides, meeting the baseline expectation.

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 clearly states the verb 'removes', the resource 'all permission overrides', and the scope 'for a role or user on a channel or category'. It effectively distinguishes from sibling tools like set_permissions.

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?

The description does not provide explicit when-to-use or when-not-to-use guidance, but the usage is implied by the tool name and the context of sibling tools (e.g., set_permissions). No alternatives are mentioned.

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

discord_mod_remove_roleC

Removes a role from a member in a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the removal
roleIdYesThe ID of the role to remove
userIdYesThe ID of the user
guildIdYesThe ID of the server

TDQS

C2.9/5.0
Behavior1/5

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

No annotations provided, and the description fails to disclose any behavioral traits such as required permissions, side effects, or whether the role is actually deleted or just unassigned. Important missing info.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

Single sentence is concise, but lacks structure like front-loading the key resource. Still efficient with zero wasted words.

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

Completeness2/5

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

Given the complexity of 4 parameters, no output schema, and many sibling tools, the description is too minimal. It omits return value, permissions, and any caveats, leaving the agent without sufficient context.

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 description coverage is 100% with clear parameter descriptions. The tool description adds no extra meaning beyond what the schema already provides, but baseline 3 is appropriate.

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 clearly states the action ('removes a role') and the target ('from a member in a Discord server'). It distinguishes itself from siblings like assign_role or delete_role.

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

Usage Guidelines2/5

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

No guidance on when to use this tool over alternatives like assign_role or delete_role. No context about prerequisites or conditions for removal.

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

discord_mod_send_dmA

Sends a direct message to a user by their user ID. Automatically creates a DM channel if one doesn't exist.

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYesThe ID of the user to send a DM to
messageYesThe message content to send

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It discloses the auto-creation of DM channels, which is a key behavior. However, it does not mention potential failure modes (e.g., user not found, DMs closed) or rate limits, leaving gaps in transparency.

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?

The description is extremely concise, consisting of two sentences that front-load the action. Every word adds value, with no redundancy or fluff.

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?

Given the tool's simplicity (2 required params, no output schema), the description covers the core behavior and the auto-creation detail. It misses potential edge cases but is generally complete for a straightforward DM 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 description coverage is 100%, so the baseline is 3. The description does not add any additional meaning beyond the schema's own descriptions for 'userId' and 'message'. It does not clarify formats or constraints.

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 clearly states the action 'sends a direct message' and identifies the resource by user ID. It also mentions the automatic creation of a DM channel, which distinguishes this tool from sibling tools that operate within servers.

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?

The description implies usage for sending DMs but does not explicitly state when to use it vs alternatives. It lacks guidance on prerequisites (e.g., user must not have DMs disabled) or when it might fail, leaving the agent without full context for decision-making.

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

discord_mod_set_nicknameB

Sets or clears a member's nickname in a server.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the change
userIdYesThe ID of the member
guildIdYesThe ID of the server
nicknameNoNew nickname (null to clear)

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure. It restates that clearing occurs when nickname is null, which is already in the schema. No additional behavioral traits (e.g., permission requirements, side effects, return value) are disclosed.

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?

The description is a single sentence (9 words) that is front-loaded and contains no unnecessary words. It is appropriately sized for the tool's simplicity.

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

Completeness3/5

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

Given the tool's complexity (4 params, mutation, no output schema), the description is minimal but covers the core function. However, it lacks details on return values, error conditions, or usage context, making it only moderately complete.

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%, so the baseline is 3. The description adds marginal value by summarizing the action and clarifying that 'clears' is possible, but mostly reiterates schema info. It does not add meaning beyond what the schema provides.

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 clearly states the action ('sets or clears') and the resource ('member's nickname in a server'). It is specific and distinguishes this tool from sibling mod tools (e.g., kick, ban, timeout) which have different functions.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives (e.g., when to set vs clear, or prerequisites like permissions). The description lacks explicit when-to-use or when-not-to-use context.

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

discord_mod_set_permissionsC

Sets permission overrides for a role or user on a channel or category.

ParametersJSON Schema
NameRequiredDescriptionDefault
denyNoPermission flags to deny
allowNoPermission flags to allow (e.g. ['ViewChannel', 'SendMessages'])
reasonNoReason for the change
roleIdYesRole or user ID to set permissions for
channelIdYesChannel or category ID

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description fully carries the disclosure burden. It only states that it 'sets permission overrides' but omits critical behavioral traits like required permissions (e.g., manage permissions), side effects on existing overrides, and whether changes are reversible.

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?

The description is a single, well-structured sentence that front-loads the key action. Every word is purposeful, with no redundancy or extraneous information.

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

Completeness2/5

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

Given the absence of an output schema and annotations, the description is insufficient. It lacks details on prerequisites, permission requirements, default behavior when allow/deny are omitted, and the return value, leaving the agent with significant knowledge gaps.

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 description coverage is 100%, so the baseline is 3. The description adds minimal semantic value beyond the schema, merely confirming the target (role/user on channel/category). It does not elaborate on the effect of allow/deny parameters or the optional reason.

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?

The description clearly states the verb 'Sets' and the resource 'permission overrides', specifying the target as a role or user on a channel or category. It effectively conveys the primary action, but does not explicitly differentiate from sibling tools like discord_mod_remove_permissions.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool over alternatives (e.g., remove_permissions or edit_channel). The description purely states functionality without usage context, leaving the agent without decision support.

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

discord_mod_timeout_memberA

Timeout (server mute) a member for a specified duration. Use durationSeconds=0 to clear a timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the timeout
userIdYesThe ID of the user to timeout
guildIdYesThe ID of the server
durationSecondsYesDuration in seconds (0 to clear, max 2419200 = 28 days)

TDQS

A4.2/5.0
Behavior3/5

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

The description reveals that the tool performs a timeout (server mute) and explains the clearing behavior with durationSeconds=0. No annotations are provided, so the description carries the full burden. It lacks details on permissions, side effects, or what happens if the user is already timed out, but addresses the core behavior.

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?

The description is extremely concise with two sentences, no unnecessary words, and gets straight to the point. It is well-structured with actionable information.

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?

Given the tool has no output schema and no annotations, the description provides essential behavioral context: what the tool does, how to clear a timeout, and the maximum duration. It is complete enough for a straightforward mutation tool, though it could mention error cases or permissions.

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?

The input schema covers all parameters with 100% description coverage. The description adds value by emphasizing that durationSeconds=0 clears a timeout, which goes beyond the schema's listing of max duration. Other parameters like guildId, userId, and reason are self-explanatory and need no further elaboration.

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 clearly states 'Timeout (server mute) a member', specifying the verb and resource. It also explains the special case of clearing a timeout with durationSeconds=0, distinguishing it from other moderation actions like kick or ban.

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?

The description explicitly says to use durationSeconds=0 to clear a timeout, providing clear context for usage. However, it does not mention when not to use this tool or suggest alternatives, though the sibling tools list provides implicit differentiations.

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

discord_mod_unban_memberB

Unban a user from a Discord server.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoReason for the unban
userIdYesThe ID of the user to unban
guildIdYesThe ID of the server

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the short description 'Unban a user' carries the full burden of behavioral disclosure. It fails to mention required permissions, side effects (e.g., immediate effect, audit log entry), or idempotency, leaving significant behavioral uncertainty for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

The description is a single concise sentence front-loading the core action. Every word is functional, but it could be slightly too brief, missing context without being verbose.

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

Completeness2/5

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

Given no output schema and no annotations, the description should provide more context about return values, error states, or preconditions. It only states the action, leaving agents without sufficient information for correct invocation.

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% with each parameter (reason, userId, guildId) described in the schema. The description adds no further parameter details beyond the purpose, so baseline 3 is appropriate.

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 explicitly states 'Unban a user from a Discord server,' clearly identifying the verb (unban) and resource (user). This action is distinct from siblings like discord_mod_ban_member (ban) and other moderation tools, leaving no ambiguity about its purpose.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives (e.g., when a user is banned, requirements like user must be banned first). The description lacks context about appropriate scenarios or exclusions, limiting the agent's ability to choose correctly.

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

discord_mod_unpin_messageB

Unpins a message from a channel.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesThe ID of the channel
messageIdYesThe ID of the message to unpin

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral traits such as whether the action is reversible, permission requirements, or side effects. It only states the basic operation, leaving the agent uninformed about important behavior.

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?

The description is a single, precise sentence with no superfluous words. It effectively conveys the core action.

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

Completeness3/5

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

The description provides minimal context. For a simple unpin action, it is adequate but lacks details about prerequisites, return behavior, or error cases. Given no annotations or output schema, it meets the minimum viable threshold.

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 description coverage is 100%, so baseline is 3. The description adds no meaning beyond the schema's parameter descriptions; it merely repeats the parameter IDs without elaboration.

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 clearly states the action (unpins), the resource (message), and the location (channel). It distinguishes from sibling tools like pin_message and bulk_delete_messages.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, prerequisites (e.g., message must be pinned), or permissions required. The description provides no context for usage decisions.

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

discord_mod_warn_memberA

Warn a member by sending them a DM with the warning reason. Optionally logs to a mod channel.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonYesWarning reason
userIdYesThe ID of the user to warn
guildIdYesThe ID of the server
channelIdNoOptional mod log channel ID to post the warning

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses the main behavior (sending DM, optional logging) but does not address edge cases like DMs disabled, permission requirements, or whether the action is reversible.

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?

The description consists of two concise sentences. The core action is front-loaded, and every sentence adds value with no redundancy.

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?

Given the tool has 4 parameters and no output schema, the description covers the primary functionality. However, it lacks information on success/failure indications or return format, which would be helpful for a complete context.

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 description coverage is 100%, so the schema already documents all parameters. The description adds no new meaning beyond what is in the schema; it merely restates the optional logging behavior for channelId.

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 clearly states the action: warn a member by sending a DM with the reason, and optionally logging to a mod channel. This differentiates it from sibling tools like kick, ban, or timeout.

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?

The description does not explicitly state when to use this tool versus alternatives like kick or timeout. It implies a use case for issuing warnings, but lacks guidance on when not to use it or what prerequisites are needed.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 29 tool updatesv1.0.0
    • First observeddiscord_mod_assign_role
    • First observeddiscord_mod_ban_member
    • First observeddiscord_mod_bulk_delete_messages
    • First observeddiscord_mod_create_category
    • First observeddiscord_mod_create_channel
    • First observeddiscord_mod_create_role
    • First observeddiscord_mod_delete_channel
    • First observeddiscord_mod_delete_role
    • First observeddiscord_mod_edit_channel
    • First observeddiscord_mod_edit_role
    • First observeddiscord_mod_get_audit_log
    • First observeddiscord_mod_get_member
    • First observeddiscord_mod_get_server_info
    • First observeddiscord_mod_kick_member
    • First observeddiscord_mod_list_bans
    • First observeddiscord_mod_list_members
    • First observeddiscord_mod_list_roles
    • First observeddiscord_mod_list_servers
    • First observeddiscord_mod_pin_message
    • First observeddiscord_mod_purge_messages
    • First observeddiscord_mod_remove_permissions
    • First observeddiscord_mod_remove_role
    • First observeddiscord_mod_send_dm
    • First observeddiscord_mod_set_nickname
    • First observeddiscord_mod_set_permissions
    • First observeddiscord_mod_timeout_member
    • First observeddiscord_mod_unban_member
    • First observeddiscord_mod_unpin_message
    • First observeddiscord_mod_warn_member

TDQS

B3.4/5.0

Scored across 29 tools

Disambiguation5/5

Each tool targets a distinct moderation action or resource (e.g., kick vs. ban, role vs. channel, permissions vs. messages), with no overlapping responsibilities. The descriptions clearly differentiate similar tools like purge_messages and bulk_delete_messages.

Naming Consistency4/5

All tools follow the 'discord_mod_verb_noun' pattern with snake_case, but there is minor inconsistency between 'list_' and 'get_' prefixes (e.g., list_members vs. get_member) and between single verb vs. compound verbs (purge_messages vs. bulk_delete_messages). Overall, the pattern is clear and predictable.

Tool Count4/5

With 29 tools, the set covers a broad range of moderation tasks without being excessive. It is slightly heavy but each tool fills a specific need; no tool feels redundant. The count is appropriate for a comprehensive Discord moderation server.

Completeness3/5

The set covers essential moderation operations (kick, ban, timeout, warn) and channel/role management. However, notable gaps exist: no tool to edit role permissions globally, no single message deletion tool, and no voice channel member management (e.g., move member). These gaps may cause agent failures in some scenarios.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables comprehensive Discord bot management and server operations through MCP, including channel management, message handling, member moderation, role management, and voice operations. Provides secure Discord API integration with built-in permission controls and audit logging capabilities.
    19
    101
    18
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Enables Discord bot integration through MCP, allowing users to manage servers, channels, roles, members, and messages including moderation actions like bans, timeouts, and bulk deletions through natural language.
    33
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Comprehensive Discord server management through MCP, enabling channel, role, permission, message, moderation, and automation tasks via natural language.
    4
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Extended MCP server for Discord with advanced server management capabilities including roles, channels, messages, permissions, forums, webhooks, and batch operations.
    1
    MIT