MCP-Discord
Сервер Discord MCP (Model Context Protocol), позволяющий помощникам на основе искусственного интеллекта взаимодействовать с платформой Discord.
Обзор
MCP-Discord предоставляет следующие функции, связанные с Discord:
Войти в Discord-бот
Получить информацию о сервере
Чтение/удаление сообщений канала
Отправлять сообщения на указанные каналы
Получить списки каналов форума
Создание/удаление/ответ на сообщения форума
Создание/удаление текстовых каналов
Добавить/удалить реакции на сообщения
Создание/редактирование/удаление/использование вебхуков
Related MCP server: MCP-Discord
Оглавление
Предпосылки
Node.js (v16.0.0 или выше)
npm (v7.0.0 или выше)
Бот Discord с соответствующими разрешениями
Токен бота (можно получить на портале разработчиков Discord )
Включено намерение содержания сообщения
Намерение участников сервера включено
Намерение присутствия включено
Разрешения на вашем сервере Discord:
Отправить сообщения
Создать публичные темы
Отправить сообщения в темах
Управление потоками
Управление каналами
Добавить реакции
Установка
Установка через Smithery
Чтобы автоматически установить mcp-discord для Claude Desktop через Smithery :
npx -y @smithery/cli install @barryyip0625/mcp-discord --client claudeРучная установка
# Clone the repository
git clone https://github.com/barryyip0625/mcp-discord.git
cd mcp-discord
# Install dependencies
npm install
# Compile TypeScript
npm run buildКонфигурация
Для корректной работы требуется токен бота Discord. Вы можете предоставить его двумя способами:
Переменные среды:
DISCORD_TOKEN=your_discord_bot_token
DEFAULT_SERVER_ID=your_default_server_id # Optional
DEFAULT_CHANNEL_ID=your_default_channel_id # OptionalИспользование параметра
--configпри запуске:
node path/to/mcp-discord/build/index.js --config "{\"DISCORD_TOKEN\":\"your_discord_bot_token\"}"Улучшенный сценарий запуска
Проект включает в себя улучшенный скрипт запуска ( start-discord.js ), который обеспечивает лучшую отладку и обработку ошибок:
Загружает переменные среды из файла .env
Устанавливает идентификаторы сервера и канала по умолчанию, если они не указаны
Перенаправляет console.log в stderr, чтобы избежать проблем с анализом JSON в Claude Desktop
Проверяет соединение Discord непосредственно перед запуском сервера MCP
Предоставляет подробную информацию об ошибках, если что-то пойдет не так
Чтобы использовать этот скрипт:
node start-discord.jsИспользование с Клодом/Курсором
Клод
{ "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" } } } }Курсор
{ "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" } } } }
Инструменты Документация
Основные функции
discord_login: Войти в Discorddiscord_list_guilds: Список всех доступных серверов Discord (гильдий) с их каналамиdiscord_send: Отправить сообщение на указанный каналdiscord_get_server_info: Получить информацию о сервере Discord
Управление каналами
discord_create_text_channel: Создать текстовый каналdiscord_delete_channel: Удалить канал
Функции форума
discord_get_forum_channels: Получить список каналов форумаdiscord_create_forum_post: Создать сообщение на форумеdiscord_get_forum_post: Получить сообщение на форумеdiscord_reply_to_forum: Ответить на сообщение на форумеdiscord_delete_forum_post: Удалить сообщение на форуме
Сообщения и реакции
discord_read_messages: Чтение сообщений каналаdiscord_add_reaction: Добавить реакцию на сообщениеdiscord_add_multiple_reactions: Добавить несколько реакций на сообщениеdiscord_remove_reaction: Удалить реакцию из сообщенияdiscord_delete_message: Удалить определенное сообщение из канала
Управление веб-перехватчиками
discord_create_webhook: Создает новый вебхук для канала Discorddiscord_send_webhook_message: отправляет сообщение на канал Discord с помощью вебхукаdiscord_edit_webhook: Редактирует существующий вебхук для канала Discorddiscord_delete_webhook: Удаляет существующий вебхук для канала Discord
Разработка
# Development mode
npm run dev