mcpField
D
Discord MCP Bot - Server Component

Discord MCP Bot - Server Component

Local
github.com/mastra-aiCommunication2Updated 83w ago

About Discord MCP Bot - Server Component

A Discord bot server for teams that want to provide Mastra.ai question answering in Discord. It handles commands, permissions, DMs, and threads, then routes questions to the Mastra MCP component for responses.

Key features

  1. 01Handles Discord messages and interactions
  2. 02Supports /ask and /cleardm slash commands
  3. 03Supports DMs and threads
  4. 04Manages bot commands and permissions
  5. 05Connects to the Mastra MCP component

Use cases

  1. 01Ask the bot questions in Discord DMs
  2. 02Get answers in a server with /ask
  3. 03Organize bot conversations in threads

MCP support

The server connects to the Mastra MCP component, routing questions from Discord to it and returning responses to users.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Discord MCP Bot - Server Component

A Discord bot server that integrates with Mastra's MCP Bot component to provide intelligent assistance and answer questions about Mastra.ai.

Overview

This Discord bot server works with the Mastra MCP component to:

  • Handle Discord interactions and message routing
  • Manage bot commands and permissions
  • Provide Discord-specific functionality like threads and DMs
  • Interface with the Mastra component for intelligent responses

Prerequisites

Getting Started

  1. Clone the repository:

    git clone https://github.com/mastra-ai/discord-mcp-server
    cd discord-mcp-server
    
  2. Install dependencies:

    npm install
    
  3. Create a .env file with your Discord credentials:

    DISCORD_BOT_TOKEN=your_discord_bot_token  
    DISCORD_CLIENT_ID=your_discord_client_id
    DISCORD_PUBLIC_KEY=your_discord_public_key
    MASTRA_URL=your_mastra_url
    
  4. Run the server:

    npm start
    

Setting Up a Discord Bot

  1. Create a Discord application:

    • Go to Discord Developer Portal
    • Click "New Application" and give it a name
    • Navigate to the "Bot" tab and click "Add Bot"
  2. Configure bot permissions:

    • Under "Privileged Gateway Intents", enable:
      • Message Content Intent
      • Server Members Intent
      • Direct Message Intent
  3. Get your bot token:

    • In the Bot tab, click "Reset Token" or "Copy" to get your bot token
    • Add this token to your .env file as DISCORD_BOT_TOKEN
  4. Invite the bot to your server:

    • Go to the "OAuth2" tab, then "URL Generator"
    • Select "bot" under scopes
    • Select required permissions:
      • Read Messages/View Channels
      • Send Messages
      • Read Message History
    • Copy the generated URL and open it in your browser
    • Select your server and authorize the bot

Features

  • Direct Message Support: Users can DM the bot to ask questions
  • Slash Commands: Uses Discord's slash commands to interact with the bot
    • /ask: Ask the bot a question
    • /cleardm: Clear the bot messages in the user's DMs
  • Threads: Uses Discord's threads to provide a better user experience
  • Integration: Seamless integration with the Mastra MCP component

Project Structure

  • api/index.ts: Main bot implementation and Discord client setup
  • scripts/register-commands.ts: Register the bot commands
  • scripts/delete-commands.ts: Delete the bot commands
  • scripts/list-commands.ts: List the bot commands

Implementation Notes

The server is built with:

  • Discord.js for Discord integration
  • TypeScript for type safety and better development experience
  • Integration with Mastra MCP component for intelligent responses

For production deployment, consider:

  • Setting up proper logging
  • Implementing rate limiting
  • Adding monitoring and error tracking
  • Setting up a process manager (PM2, etc.)

Related Projects

  • discord-mcp-bot: Handles Mastra-specific functionality and intelligent responses

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.