Skip to main content
Glama
blackgirlbytes

Discord Community MCP

Discord Community MCP

A local-first Model Context Protocol server that gives AI agents read-only Discord search, conversation recall, community research, and growth analysis through a bot account. Sending messages and reactions is available only when explicitly enabled.

What it can do

  • Find conversations from a vague memory, even when the wording is uncertain

  • Reconstruct context around a matching message

  • Index selected Discord history in a local SQLite database

  • Analyze activity, response times, participation, concentration, reciprocity, and themes

  • Save member snapshots and analyze joins, departures, roles, and contributor growth

  • Optionally send messages, replies, and reactions

Related MCP server: Discord MCP Server

Requirements

  • Node.js 22.5 or newer

  • A Discord application and bot token

  • An MCP client that supports local stdio servers, such as Codex

1. Create a Discord bot

  1. Open the Discord Developer Portal and create an application.

  2. Open Bot, create the bot, and copy its token.

  3. Under Bot → Privileged Gateway Intents, enable:

    • Message Content Intent for message text and search

    • Server Members Intent for member snapshots, join dates, roles, and growth

  4. Presence Intent is not required.

  5. Under OAuth2 → URL Generator, select the bot scope.

  6. Give the bot View Channels and Read Message History. Add Send Messages or Add Reactions only if you plan to enable write tools.

  7. Open the generated URL and invite the bot to your Discord server.

The bot can only access channels its Discord role is allowed to view.

2. Install

git clone https://github.com/blackgirlbytes/discord-community-mcp.git
cd discord-community-mcp
npm ci
npm run build
cp .env.example .env

Open .env and replace the placeholder token:

DISCORD_BOT_TOKEN=replace-with-your-bot-token
DISCORD_ENABLE_WRITE=false

Keep .env private. It is excluded from git.

3. Add it to an MCP client

Codex CLI

Use absolute paths so the client can start the server from any directory:

codex mcp add discord-community -- \
  node \
  --env-file=/absolute/path/to/discord-community-mcp/.env \
  /absolute/path/to/discord-community-mcp/dist/index.js

Restart Codex after adding the server.

Generic stdio configuration

Clients that use an mcpServers JSON object can use:

{
  "mcpServers": {
    "discord-community": {
      "command": "node",
      "args": [
        "--env-file=/absolute/path/to/discord-community-mcp/.env",
        "/absolute/path/to/discord-community-mcp/dist/index.js"
      ]
    }
  }
}

Restart the MCP client after changing its configuration. You can then ask it to list the Discord servers and channels available to the bot.

Example questions

  • “Find the conversation where someone said onboarding felt like homework.”

  • “What did we decide about renaming the SDK last spring?”

  • “Why are beta testers responding slowly? Look for evidence across the last three months.”

  • “How has the community grown by month, and how does growth compare with participation?”

  • “Which support questions went unanswered last week?”

For broad analysis, the agent should first synchronize the relevant channels and date range, check index coverage, and then run community research. Behavioral explanations should be presented as hypotheses unless messages directly support them.

Available tools

Tool

Purpose

discord_list_guilds

List servers available to the bot

discord_list_channels

List channels in a server

discord_read_messages

Read recent messages with pagination

discord_find_messages

Search for a vaguely remembered conversation

discord_get_message_context

Read messages surrounding a match

discord_sync_community_history

Build or refresh the local message index

discord_research_community

Produce an evidence packet for a community question

discord_get_community_index_status

Check indexed channels, dates, and coverage

discord_sync_member_snapshot

Save current membership, join-date, and role data

discord_analyze_growth

Analyze membership and participation over time

discord_send_message

Send a message when writes are enabled

discord_reply_to_message

Reply when writes are enabled

discord_add_reaction

React when writes are enabled

Data and privacy

Message content and membership metadata are stored unencrypted in data/discord-analytics.sqlite by default. Override the location with DISCORD_ANALYTICS_DB.

DISCORD_ANALYTICS_DB=/absolute/private/path/discord-analytics.sqlite
  • Index only channels and date ranges needed for the analysis.

  • Protect and delete the database according to your community's privacy policy.

  • Give the bot the minimum Discord permissions it needs.

  • Keep DISCORD_ENABLE_WRITE=false unless sending content is intentional.

  • Rotate the bot token immediately if it is exposed.

Analysis limitations

  • A message archive can show behavioral patterns but cannot prove why people behaved that way.

  • Discord users may respond without using the Reply action, so reply metrics can undercount responses.

  • Historical role membership is not reconstructed; older messages use the latest observed role.

  • Exact departures are detected only between saved member snapshots.

  • A first member snapshot cannot recover people who left before the bot observed them.

  • Search and analytics cover only channels visible to the bot and history that was synchronized.

  • Direct messages are not supported.

Write access

Write tools are registered but blocked by default. To enable them, update .env:

DISCORD_ENABLE_WRITE=true

The bot must also have the corresponding Discord permissions. Keep writes disabled for research-only installations.

Development

npm ci
npm run check
npm test

The server writes operational logs to stderr because stdout is reserved for the MCP stdio protocol.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables interaction with Discord through natural language, including reading and sending messages, managing servers, and user actions.
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to interact with Discord through the REST API and real-time events, supporting message management, user info, channel operations, and more with security controls.
    13
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to send and read messages in Discord channels, manage servers, channels, and roles via Discord's API.
    16
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • Persistent docs and memory for AI agents — read, write, organize & search a shared workspace.

  • Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.

  • Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/blackgirlbytes/discord-community-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server