Skip to main content
Glama
discord-admin-mcp

discord-admin-mcp

by CommanderBiz

Discord Admin MCP Server

A Model Context Protocol (MCP) server providing structured tools for Discord server administration, role management, member moderation, and channel operations.

Designed to work seamlessly with Hermes Agent and any MCP-compliant client.

Features & Tools

  • Server Info:

    • get_current_bot_user: Inspect the bot's identity and user details.

    • list_guilds: List servers the bot belongs to.

    • get_guild_info: Get member counts, owner ID, server settings.

  • Role Management:

    • list_roles: List server roles, positions, and permission bitfields.

    • assign_role: Assign roles to members.

    • remove_role: Remove roles from members.

    • create_role: Create new roles with custom colors and permissions.

    • delete_role: Delete roles from the server.

  • Member Moderation:

    • kick_member: Kick members with audit log reason.

    • ban_member: Ban members with optional message purge window.

    • unban_member: Unban members.

    • timeout_member: Timeout (mute/quarantine) members for a set duration.

  • Channel Management:

    • list_channels: List text, voice, forum, and announcement channels.

    • create_channel: Create channels with custom categories/topics.

    • edit_channel: Edit channel name, NSFW status, or topic.

    • delete_channel: Delete channels.

  • Message Admin:

    • purge_messages: Bulk delete recent messages.

Related MCP server: Discord MCP Server

Installation & Setup

1. Requirements

  • Python >= 3.10

  • A Discord Bot Token with Server Moderation permissions and Privileged Gateway Intents (Server Members Intent).

2. Local Install

pip install -e .

3. Environment Configuration

Set the following environment variables (or add them to .env / ~/.hermes/.env):

DISCORD_BOT_TOKEN=your_bot_token_here
DISCORD_DEFAULT_GUILD_ID=your_server_id_here  # Optional fallback

Hermes Agent Integration

Add to ~/.hermes/config.yaml:

mcp_servers:
  discord_admin:
    command: "/home/kernel/hermes-venv/bin/python3"
    args: ["-m", "discord_admin_mcp.server"]
    env:
      DISCORD_BOT_TOKEN: "your_bot_token_here"

License

MIT License - Author: CommanderBiz

Available Tools

17 tools
assign_roleB

Assign a role to a server member. Requires Manage Roles permission and bot role higher than target role.

Inputs: role_id (required), user_id (required), reason, guild_id. Returns: result

ban_memberB

Ban a user from the server with optional message deletion window (0 to 604800 seconds).

Inputs: user_id (required), reason, guild_id, delete_message_seconds. Returns: result

create_channelA

Create a new channel in the server. channel_type: 0 for GUILD_TEXT, 2 for GUILD_VOICE, 4 for GUILD_CATEGORY, 5 for GUILD_ANNOUNCEMENT, 15 for GUILD_FORUM.

Inputs: name (required), topic, reason, guild_id, +2 more. Returns: result

create_roleC

Create a new role in the server.

Inputs: name (required), color, hoist, reason, +3 more. Returns: result

delete_channelC

Delete a Discord channel.

Inputs: channel_id (required), reason. Returns: result

delete_roleC

Delete a role from the server.

Inputs: role_id (required), reason, guild_id. Returns: result

edit_channelC

Modify settings or topic of a Discord channel.

Inputs: channel_id (required), name, nsfw, topic, +1 more. Returns: result

get_current_bot_userA

Get details about the bot itself (ID, username, avatar, etc.).

Inputs: no named parameters. Returns: result

get_guild_infoC

Get detailed information about a Discord server (name, owner, member count, verification level, etc.).

Inputs: guild_id. Returns: result

kick_memberC

Kick a member from the server.

Inputs: user_id (required), reason, guild_id. Returns: result

list_channelsB

List all channels in a server with their names, types, categories, and topics.

Inputs: guild_id. Returns: result

list_guildsA

List all Discord servers (guilds) the bot is currently in.

Inputs: no named parameters. Returns: result

list_rolesB

List all roles in a Discord server with their IDs, names, permissions, and positions.

Inputs: guild_id. Returns: result

purge_messagesA

Bulk delete up to 100 recent messages from a channel (messages older than 14 days cannot be bulk deleted).

Inputs: channel_id (required), count, reason. Returns: result

remove_roleA

Remove a role from a server member. Requires Manage Roles permission and bot role higher than target role.

Inputs: role_id (required), user_id (required), reason, guild_id. Returns: result

timeout_memberA

Timeout (mute/quarantine) a member for a specified duration in seconds. Set duration_seconds to 0 to remove timeout.

Inputs: user_id (required), duration_seconds (required), reason, guild_id. Returns: result

unban_memberC

Unban a user from the server.

Inputs: user_id (required), reason, guild_id. Returns: result

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 17 tools

    Disambiguation5/5

    Each tool targets a distinct resource and action: guild info, roles, channels, members, and messages are cleanly separated. Even similar moderation actions like kick, ban, unban, and timeout are clearly differentiated by name and description.

    Naming Consistency5/5

    Tool names consistently follow a verb_noun pattern using snake_case, such as list_roles, create_channel, assign_role, and kick_member. Minor variations like get_current_bot_user versus get_guild_info do not break the overall predictable pattern.

    Tool Count4/5

    At 17 tools, the server is slightly above the ideal 3-15 range, but every tool covers a distinct administrative operation. The count feels heavy yet still scoped and navigable for a Discord admin server.

    Completeness4/5

    The tool set provides solid coverage for roles, channels, members, and message moderation, including create/read/update/delete for channels and roles. Obvious gaps like listing members, viewing bans, or getting a specific role/channel by ID are missing but can often be worked around.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      B
      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
      190 npm
      19
      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
      D
      maintenance
      Comprehensive Discord server management through MCP, enabling channel, role, permission, message, moderation, and automation tasks via natural language.
      4
      -
    • A
      license
      B
      quality
      D
      maintenance
      Enables Discord server moderation actions including kick, ban, timeout, role management, channel operations, audit logs, and member management through MCP tools.
      29
      7
      MIT