MCP-Discord

by jar285
MIT License
  • Linux
  • Apple

Integrations

  • Enables AI assistants to interact with Discord, including logging in as a bot, managing servers and channels, sending/reading/deleting messages, creating and managing forum posts, adding reactions to messages, and creating/managing webhooks.

MCP-Discord

A Discord MCP (Model Context Protocol) server that enables AI assistants to interact with the Discord platform.

Overview

MCP-Discord provides the following Discord-related functionalities:

  • Login to Discord bot
  • Get server information
  • Read/delete channel messages
  • Send messages to specified channels
  • Retrieve forum channel lists
  • Create/delete/reply to forum posts
  • Create/delete text channels
  • Add/remove message reactions
  • Create/edit/delete/use webhooks

Table of Contents

Prerequisites

  • Node.js (v16.0.0 or higher)
  • npm (v7.0.0 or higher)
  • A Discord bot with appropriate permissions
    • Bot token (obtainable from the Discord Developer Portal)
    • Message Content Intent enabled
    • Server Members Intent enabled
    • Presence Intent enabled
  • Permissions in your Discord server:
    • Send Messages
    • Create Public Threads
    • Send Messages in Threads
    • Manage Threads
    • Manage Channels
    • Add Reactions

Installation

Installing via Smithery

To install mcp-discord for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @barryyip0625/mcp-discord --client claude

Manual Installation

# Clone the repository git clone https://github.com/barryyip0625/mcp-discord.git cd mcp-discord # Install dependencies npm install # Compile TypeScript npm run build

Configuration

A Discord bot token is required for proper operation. You can provide it in two ways:

  1. Environment variables:
DISCORD_TOKEN=your_discord_bot_token DEFAULT_SERVER_ID=your_default_server_id # Optional DEFAULT_CHANNEL_ID=your_default_channel_id # Optional
  1. Using the --config parameter when launching:
node path/to/mcp-discord/build/index.js --config "{\"DISCORD_TOKEN\":\"your_discord_bot_token\"}"

Enhanced Startup Script

The project includes an enhanced startup script (start-discord.js) that provides better debugging and error handling:

  • Loads environment variables from the .env file
  • Sets default server and channel IDs if not provided
  • Redirects console.log to stderr to avoid JSON parsing issues in Claude Desktop
  • Tests the Discord connection directly before starting the MCP server
  • Provides detailed error information if anything goes wrong

To use this script:

node start-discord.js

Usage with Claude/Cursor

  • Claude
    { "mcpServers": { "discord": { "command": "node", "args": [ "path/to/mcp-discord/start-discord.js" ], "env": { "DISCORD_TOKEN": "your_discord_bot_token", "DEFAULT_SERVER_ID": "your_default_server_id", "DEFAULT_CHANNEL_ID": "your_default_channel_id" } } } }
  • Cursor
    { "mcpServers": { "discord": { "command": "cmd", "args": [ "/c", "node", "path/to/mcp-discord/start-discord.js" ], "env": { "DISCORD_TOKEN": "your_discord_bot_token", "DEFAULT_SERVER_ID": "your_default_server_id", "DEFAULT_CHANNEL_ID": "your_default_channel_id" } } } }

Tools Documentation

Basic Functions

  • discord_login: Login to Discord
  • discord_list_guilds: List all available Discord servers (guilds) with their channels
  • discord_send: Send a message to a specified channel
  • discord_get_server_info: Get Discord server information

Channel Management

  • discord_create_text_channel: Create a text channel
  • discord_delete_channel: Delete a channel

Forum Functions

  • discord_get_forum_channels: Get a list of forum channels
  • discord_create_forum_post: Create a forum post
  • discord_get_forum_post: Get a forum post
  • discord_reply_to_forum: Reply to a forum post
  • discord_delete_forum_post: Delete a forum post

Messages and Reactions

  • discord_read_messages: Read channel messages
  • discord_add_reaction: Add a reaction to a message
  • discord_add_multiple_reactions: Add multiple reactions to a message
  • discord_remove_reaction: Remove a reaction from a message
  • discord_delete_message: Delete a specific message from a channel

Webhook Management

  • discord_create_webhook: Creates a new webhook for a Discord channel
  • discord_send_webhook_message: Sends a message to a Discord channel using a webhook
  • discord_edit_webhook: Edits an existing webhook for a Discord channel
  • discord_delete_webhook: Deletes an existing webhook for a Discord channel

Development

# Development mode npm run dev

License

MIT License

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

A Discord MCP server that enables AI assistants to interact with Discord platforms, providing functionalities like sending messages, managing channels, creating forum posts, and handling webhooks.

  1. Overview
    1. Table of Contents
      1. Prerequisites
        1. Installation
          1. Installing via Smithery
          2. Manual Installation
        2. Configuration
          1. Enhanced Startup Script
        3. Usage with Claude/Cursor
          1. Tools Documentation
            1. Basic Functions
            2. Channel Management
            3. Forum Functions
            4. Messages and Reactions
            5. Webhook Management
          2. Development
            1. License

              Related MCP Servers

              • A
                security
                A
                license
                A
                quality
                An MCP server that enables posting messages to Discord webhooks, allowing customization of content, username, and avatar URL.
                Last updated -
                1
                0
                JavaScript
                MIT License
              • -
                security
                A
                license
                -
                quality
                An MCP server that helps AI assistants access text content from websites that implement bot detection, bridging the gap between what you can see in your browser and what the AI can access.
                Last updated -
                1
                Python
                Apache 2.0
              • -
                security
                -
                license
                -
                quality
                A specialized MCP server that enables AI agents to interact with Reddit, including reading posts, creating content, and managing subreddit configurations.
                Last updated -
                31
                1
                TypeScript
              • A
                security
                A
                license
                A
                quality
                A Discord Model Context Protocol server that enables AI assistants to interact with Discord, providing functionality for sending messages, managing channels, handling forum posts, and working with reactions.
                Last updated -
                15
                11
                TypeScript
                MIT License
                • Linux
                • Apple

              View all related MCP servers

              ID: 4k20oqxijs