Skip to main content
Glama

@devli13/mcp-discord

npm License: MIT

Un servidor MCP para Discord. Envía mensajes, modera, gestiona canales, inspecciona servidores — desde Claude Code, agentes de Paperclip, Gemini CLI o cualquier cliente compatible con MCP.

Wrapper REST puro. Sin Gateway. Sin base de datos. Solo la API v10 de Discord como 26 herramientas bien documentadas, con limitación de tasa por ruta y resultados de error estructurados.


Por qué

La API de Discord es extensa y poco amigable para los agentes cuando se llama mediante curl sin procesar. Los agentes alcanzan límites de tasa, gestionan mal los errores 429, manejan mal los motivos del registro de auditoría y olvidan los cursores de paginación. Este MCP soluciona eso de una vez, para que los agentes puedan centrarse en la intención: "eliminar ese mensaje de spam", "publicar el resumen diario en #mod-log", "silenciar a @usuario durante una hora".

También es genial para los humanos. Conectado a Claude Code, puedes decir "resume los últimos 50 mensajes en mi canal #dev de Discord" y Claude simplemente lo hace.


Related MCP server: Discord Bridge MCP Server

Instalación

npm install -g @devli13/mcp-discord

O mediante npx (sin instalación):

DISCORD_BOT_TOKEN=<your-token> npx -y @devli13/mcp-discord

Configuración

1. Crea un bot de Discord

  1. Ve a https://discord.com/developers/applicationsNew Application

  2. Añade un Bot a la aplicación

  3. Copia el token del bot — este es tu DISCORD_BOT_TOKEN

  4. Invita al bot a tu servidor usando el generador de URL OAuth2 (alcance: bot). Elige los permisos según lo que necesites que haga el MCP (p. ej., Gestionar mensajes para eliminarlos, Moderar miembros para silenciarlos)

2. Conéctalo a tu cliente MCP

Claude Code:

claude mcp add discord \
  --env DISCORD_BOT_TOKEN=<your-token> \
  -- npx -y @devli13/mcp-discord

Paperclip mcp-gateway (.mcp.json):

{
  "mcpServers": {
    "discord": {
      "command": "npx",
      "args": ["-y", "@devli13/mcp-discord"],
      "env": {
        "DISCORD_BOT_TOKEN": "<your-token>"
      }
    }
  }
}

Gemini CLI (~/.gemini/config.json):

{
  "mcpServers": {
    "discord": {
      "command": "npx",
      "args": ["-y", "@devli13/mcp-discord"]
    }
  }
}

3. (Opcional) Habilita los intents privilegiados

Si deseas listar los miembros del servidor (discord_list_members) o usar este MCP junto con el plugin complementario para eventos entrantes, habilita Server Members Intent y Message Content Intent en la configuración del Portal de Desarrolladores de tu bot. Estos no son necesarios para la mayoría de las operaciones de MCP, solo para puntos finales específicos.


Referencia de herramientas

Todas las herramientas tienen el prefijo discord_* y devuelven un blob JSON (en caso de éxito) o un mensaje de error formateado (en caso de fallo). Ninguna lanza excepciones: cada herramienta devuelve un resultado de cadena utilizable.

Mensajes (8)

Herramienta

Propósito

discord_send_message

Enviar a un canal. Admite embeds, respuestas, control de menciones

discord_edit_message

Editar el propio mensaje del bot

discord_delete_message

Eliminar un mensaje (por el bot u otros, con Gestionar mensajes)

discord_bulk_delete_messages

Eliminar de 2 a 100 mensajes (<14 días de antigüedad) en una llamada

discord_get_message

Obtener un mensaje por ID

discord_list_messages

Historial del canal paginado (cursores before/after/around)

discord_pin_message / discord_unpin_message

Gestionar pines

Reacciones (3)

Herramienta

Propósito

discord_add_reaction

El bot añade una reacción

discord_remove_reaction

Eliminar la reacción del bot o de un usuario

discord_get_reactions

Listar usuarios que reaccionaron con un emoji

Canales e hilos (5)

Herramienta

Propósito

discord_list_channels

Todos los canales en un servidor

discord_get_channel

Detalles de un solo canal

discord_create_thread

Crear un nuevo hilo (público o privado, anclado o independiente)

discord_list_active_threads

Todos los hilos activos en un servidor

discord_send_typing

Activar el indicador "el bot está escribiendo..."

Moderación (6)

Herramienta

Propósito

discord_get_member

Perfil de miembro (roles, fecha de unión, estado de silencio)

discord_list_members

Lista de miembros paginada (requiere el intent Server Members)

discord_timeout_user

Silenciar mediante communication_disabled_until (máx. 28 días, 0 para borrar)

discord_kick_user

Eliminar del servidor

discord_add_role / discord_remove_role

Gestión de roles

Información del servidor (4)

Herramienta

Propósito

discord_list_guilds

Todos los servidores en los que está el bot

discord_get_guild

Detalles de un solo servidor

discord_list_roles

Todos los roles, ordenados por posición

discord_get_audit_log

Entradas recientes del registro de auditoría (filtrar por usuario, acción, etc.)

No incluido (por diseño):

  • ban/unban — deliberado. Usa la interfaz de Discord; las acciones irreversibles no deberían estar a una llamada de agente de distancia

  • Crear/eliminar/editar canales — alto radio de impacto, usa la interfaz

  • CRUD de Webhooks — no es necesario para la mayoría de los flujos de agentes; se puede añadir en una versión futura

  • Operaciones de voz, gestión de stickers/emojis — fuera del alcance de la v0.1


Ejemplo: resumir un canal mediante Claude Code

User: Summarize the last 30 messages in the #dev channel of my Discord server, guild ID 1234...

Claude (calls discord_list_channels → finds #dev → calls discord_list_messages → writes summary)

Ejemplo: resumen diario del agente de Paperclip

// From an agent's prompt:
"Post the daily digest to channel 1234. Summarize the last 24h of activity
using discord_list_messages with limit=100, then format as an embed via
discord_send_message."

Manejo de errores

Cada herramienta devuelve un resultado de texto utilizable. En caso de error:

Error (DISCORD_50001, HTTP 403): Missing Access
Details: [...]
(This error is transient and may succeed on retry.)

El MCP ya maneja los reintentos internamente para 429 (límites de tasa) y 5xx (errores del servidor), con retroceso exponencial.


Límites de tasa

Discord tiene dos capas de límites de tasa:

  1. Por ruta — cada punto final de la API tiene buckets independientes. Este MCP serializa las solicitudes por (método + plantilla de ruta) para evitar superar el límite de 429.

  2. Global — por bot, en todos los puntos finales. El MCP respeta los encabezados Retry-After globalmente.

No deberías tener que pensar en esto. Si alcanzas el límite global repetidamente, probablemente estés haciendo algo que requiere intervención humana.


Seguridad

  • Nunca subas tu token de bot. Este MCP lo lee de la variable de entorno DISCORD_BOT_TOKEN al iniciarse.

  • Usa URLs de invitación con el mínimo privilegio. No des permisos de Administrador a los bots si solo necesitas Gestionar mensajes.

  • Motivos del registro de auditoría — todas las herramientas de moderación aceptan un argumento reason que aparece en el registro de auditoría de Discord. Úsalo.


Desarrollo

git clone https://github.com/devli13/mcp-discord.git
cd mcp-discord
npm install
npm test           # smoke tests (no live Discord calls)
npm run lint       # syntax check all files
npm start          # boot server over stdio (needs DISCORD_BOT_TOKEN)

Proyecto complementario — eventos entrantes

Este MCP maneja llamadas REST salientes (enviar, eliminar, moderar). No mantiene un WebSocket de Discord Gateway, por lo que no puede reaccionar a eventos entrantes (un usuario mencionando al bot, mensajes directos, nuevos miembros uniéndose).

Para eventos de Discord entrantes en una configuración de Paperclip, usa @devli13/paperclip-plugin-discord — un fork de @mvanhorn/paperclip-plugin-discord con enrutamiento de menciones de forma libre, soporte para mensajes directos, una cola de mensajes serializada por contexto y relleno de menciones durante el tiempo de inactividad.

Los dos proyectos están diseñados para trabajar juntos: el plugin recibe eventos e invoca a tu agente; el agente usa este MCP para responder y moderar. Usa uno o ambos dependiendo de tu configuración.

Atribución

Consulta ATTRIBUTION.md. Versión corta: construido junto al fork de paperclip-plugin-discord de @mvanhorn, cuyo manejo de Gateway inspiró los patrones de diseño aquí.

Licencia

MIT — consulta LICENSE.

Install Server
A
license - permissive license
A
quality
D
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

  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that allows Claude to interact with Discord by providing tools for sending/reading messages and managing server resources through Discord's API.
    6
    19
    159
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that provides native Discord tools for Claude Code, enabling bidirectional communication with remote agents or humans via the Discord REST API. It allows users to send messages, read channel history, and manage reactions directly from their local environment.
    6
    22
    3
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    An MCP server that enables Claude Desktop to interact with Discord through a dedicated bot. It allows users to list channels, read message history, and send messages directly from the AI interface.
    2
  • A
    license
    -
    quality
    D
    maintenance
    Comprehensive Discord MCP server with 66 tools that provides rich message context including emoji reactions, thread indicators, and attachment metadata inline. Enables AI assistants to interact with Discord servers for messaging, moderation, roles, channels, and more.
    159
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.

  • Augments MCP Server - A comprehensive framework documentation provider for Claude Code

  • An MCP server that integrates with Discord to provide AI-powered features.

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/devli13/mcp-discord'

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