Discord MCP
Provides tools for interacting with Discord servers, including listing servers and channels, sending messages, managing reaction-based opt-in campaigns and reminders.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Discord MCPlist all my Discord servers and their channels"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Discord MCP Server
ā ļø ALPHA SOFTWARE - This project is in early alpha development. Features may be incomplete or buggy. Use at your own risk.
A Model Context Protocol (MCP) server that provides Discord integration tools for AI assistants like Claude.
Current Version: 0.0.1-alpha1 (Local Development)
Project Status
š¬ Phase: Local Development - Testing with MCP Inspector
š Next: Alpha Release - Publish to PyPI for Claude Desktop testing
šÆ Future: Beta & v1.0 - Feature-complete and stable
See specs/ROADMAP.md for version planning.
Related MCP server: Discord MCP Server
Overview
This MCP server enables AI assistants to interact with Discord servers through tools for:
ā Core Operations: List servers, channels, send messages
ā Campaign System: Reaction-based opt-in campaigns with reminders
š§ Future Features: Role management, member analytics, thread support, and more
Development Setup
Prerequisites
Python 3.10+ with
uvpackage managerDiscord Bot: Create at Discord Developer Portal
Node.js (for MCP Inspector)
Installation
# Clone repository
git clone https://github.com/yourusername/mcp-discord.git
cd mcp-discord
# Install with uv
uv pip install -e ".[dev]"Configuration
Create a .env file:
DISCORD_TOKEN=your_discord_bot_token_here
MCP_DISCORD_DB_PATH=discord_mcp.db
LOG_LEVEL=INFO
DRY_RUN=false # Set to true for testing without Discord APITesting with MCP Inspector
The MCP Inspector lets you test tools locally before deploying.
1. Start the MCP Inspector
npx @modelcontextprotocol/inspector python -m discord_mcpThis will:
Start your Discord MCP server
Launch the MCP Inspector web UI
Open in your browser (usually http://localhost:5173)
2. Test Available Tools
In the inspector, you can test:
discord_list_servers- See all servers your bot is indiscord_list_channels- List channels in a serverdiscord_send_message- Send test messagesdiscord_create_campaign- Create reaction campaignsAnd more...
3. Alternative: Direct Module Run
# Run server directly (for stdio transport)
python -m discord_mcp
# Run with development script
python dev.py server
# Run with inspector mode
python dev.py inspectorClaude Desktop Configuration (Alpha/Beta Only)
ā ļø Not ready yet - First test locally with inspector, then we'll publish to PyPI
Once published to PyPI, you can configure Claude Desktop:
Windows: Edit %APPDATA%\Claude\claude_desktop_config.json
Mac: Edit ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"discord": {
"command": "python",
"args": ["-m", "discord_mcp"],
"env": {
"DISCORD_TOKEN": "your_token_here",
"MCP_DISCORD_DB_PATH": "C:\\path\\to\\discord_mcp.db",
"LOG_LEVEL": "INFO"
}
}
}
}Restart Claude Desktop to load the server.
Available Tools (v0.0.1-alpha)
Core Discord Tools
discord_list_servers- List all Discord serversdiscord_list_channels- List channels with type filteringdiscord_get_channel_info- Get detailed channel informationdiscord_bot_status- Check bot connection statusdiscord_get_recent_messages- Retrieve recent messagesdiscord_get_message- Get specific message by IDdiscord_send_message- Send messages with reply support
Campaign & Reminder Tools
discord_create_campaign- Create reaction opt-in campaignsdiscord_tally_optins- Track campaign participantsdiscord_list_optins- List opt-ins with paginationdiscord_build_reminder- Build reminder messagesdiscord_send_reminder- Send reminders with rate limitingdiscord_run_due_reminders- Process scheduled reminders
See specs/implemented/core_tools.md for detailed documentation.
Environment Variables
Variable | Required | Default | Description |
| Yes | - | Discord bot token |
| No |
| SQLite database path |
| No | - | Comma-separated server IDs to restrict access |
| No |
| Logging level (DEBUG, INFO, WARNING, ERROR) |
| No |
| Test mode without Discord API calls |
Development Commands
# Run tests
uv run pytest
# Format code
uv run black src/ tests/
uv run isort src/ tests/
# Build package
uv build
# Run MCP inspector
npx @modelcontextprotocol/inspector python -m discord_mcpProject Structure
discord-mcp/
āāā src/discord_mcp/ # Main package
ā āāā server.py # MCP server entry point
ā āāā __main__.py # Module runner (python -m discord_mcp)
ā āāā config.py # Configuration
ā āāā discord_client/ # Discord bot implementation
ā āāā database/ # SQLite models & repos
ā āāā tools/ # MCP tool implementations
ā āāā server_registry/ # Legacy entity registry
āāā tests/ # Test suite
āāā specs/ # Documentation
ā āāā implemented/ # Current features
ā āāā future/ # Planned features
ā āāā ROADMAP.md # Version roadmap
āāā pyproject.toml # Package configuration
āāā README.md # This fileKnown Issues & Limitations
ā ļø Alpha quality - Bugs expected
ā ļø Limited features - Only basic tools implemented
ā ļø No error recovery - Some edge cases not handled
ā ļø Database migrations - Manual schema updates may be needed
See GitHub Issues for known bugs.
Contributing
This is an alpha project - contributions welcome but expect things to change!
Test locally with MCP Inspector first
Check specs/ROADMAP.md for planned features
Open an issue to discuss changes
Submit PR against
developbranch
Release Stages
Now (Local): Testing with MCP Inspector only
Alpha (0.0.x): Published to PyPI, testing with Claude Desktop
Beta (0.1.x): Feature-complete, polishing bugs
Release (1.0.0): Stable, production-ready
License
MIT License - see LICENSE file.
Support
š Documentation: specs/ directory
š Bug Reports: GitHub Issues
š¬ Discussions: GitHub Discussions
Remember: This is alpha software. Always test in a non-production Discord server first!
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Messaging tools for AI agents: send messages, manage chats, groups and channels.
Connect any AI agent to 1,000+ apps and 27,000+ actions through one remote MCP server (OAuth).
- ChamadeOAuthio.chamade
Voice and chat for AI agents ā Discord, Teams, Meet, Slack, Zoom, Telegram, WhatsApp, NC Talk, SIP
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with Discord servers through a bot, supporting channel management, messaging, forum operations, reactions, and webhooks.22688 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables 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.22 npm1MIT
- AlicenseNot gradedqualityDmaintenanceEnables LLMs to send and read messages in Discord channels, manage servers, channels, and roles via Discord's API.33 npm2MIT
- AlicenseNot gradedqualityDmaintenanceEnables LLMs to send and read messages in Discord channels through the Discord API, with server and channel discovery.33 npmMIT