MCP HubMCP Hub
hanweg

mcp-discord

by: hanweg

MCP server for discord bot

49created 28/12/2024
Visit
Discord
Bot

📌Overview

Purpose: The MCP Server aims to provide seamless integration capabilities between Discord and MCP clients, enhancing functionality and user interaction.

Overview: This Model Context Protocol (MCP) server facilitates various operations within Discord, allowing clients like Claude Desktop to manage server interactions effectively, covering everything from message management to server and role administration.

Key Features:

  • Server Information Management: Retrieve and list detailed server information and its members' roles, enabling quick access to organizational data.

  • Message Management: Control message interactions through sending, reading, and moderating messages, along with managing reactions, which enhances user engagement and content moderation.

  • Channel Management: Create and delete channels, providing flexibility in organizing communication spaces as needed.

  • Role Management: Manage user roles by adding or removing them, which aids in structuring permissions and access controls within the server.

  • Webhook Management: Create and manage webhooks for automated messaging and updates, streamlining communication processes and integrating external applications.


Discord MCP Server

A Model Context Protocol (MCP) server that provides Discord integration capabilities to MCP clients like Claude Desktop.

Available Tools

Server Information

  • get_server_info: Get detailed server information
  • list_members: List server members and their roles

Message Management

  • send_message: Send a message to a channel
  • read_messages: Read recent message history
  • add_reaction: Add a reaction to a message
  • remove_reaction: Remove a reaction from a message
  • moderate_message: Delete messages and timeout users

Channel Management

  • create_text_channel: Create a new text channel
  • delete_channel: Delete an existing channel

Role Management

  • add_role: Add a role to a user
  • remove_role: Remove a role from a user

Webhook Management

  • create_webhook: Create a new webhook
  • list_webhooks: List webhooks in a channel
  • send_webhook_message: Send messages via webhook
  • modify_webhook: Update webhook settings
  • delete_webhook: Delete a webhook

Installation

Installing via Smithery

To install Discord Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @hanweg/mcp-discord --client claude
  1. Set up your Discord bot:

    • Create a new application at Discord Developer Portal
    • Create a bot and copy the token
    • Enable required privileged intents:
      • MESSAGE CONTENT INTENT
      • PRESENCE INTENT
      • SERVER MEMBERS INTENT
    • Invite the bot to your server using OAuth2 URL Generator
  2. Clone and install the package:

# Clone the repository
git clone https://github.com/hanweg/mcp-discord.git
cd mcp-discord

# Create and activate virtual environment
uv venv
.venv\Scripts\activate

# Install the package
uv pip install -e .
  1. Configure Claude Desktop (%APPDATA%\Claude\claude_desktop_config.json on Windows, ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
  "discord": {
    "command": "uv",
    "args": [
      "--directory",
      "C:\\PATH\\TO\\mcp-discord",
      "run",
      "mcp-discord"
    ],
    "env": {
      "DISCORD_TOKEN": "your_bot_token"
    }
  }
}

License

MIT License - see LICENSE file for details.