Discord Raw API MCP Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides raw Discord API access through a flexible tool, supporting both REST API calls and slash command syntax, allowing users to interact with Discord servers, create roles, send messages, and access server information.

Servidor MCP de la API de Discord Raw

Este servidor MCP proporciona acceso directo a la API de Discord mediante una única herramienta flexible. Admite llamadas a la API REST y la sintaxis de comandos slash.

Instalación

Instalación mediante herrería

Para instalar Discord Raw API para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @hanweg/mcp-discord-raw --client claude

Instalación manual

  1. Configura tu bot de Discord:
    • Crea una nueva aplicación en el Portal para desarrolladores de Discord
    • Crea un bot y copia el token
    • Habilitar intenciones privilegiadas requeridas:
      • INTENCIÓN DEL CONTENIDO DEL MENSAJE
      • INTENCIÓN DE PRESENCIA
      • INTENCIÓN DE LOS MIEMBROS DEL SERVIDOR
    • Invita al bot a tu servidor usando el generador de URL OAuth2
  2. Clonar e instalar el paquete:
# Clone the repository git clone https://github.com/hanweg/mcp-discord-raw.git cd mcp-discord-raw # Create and activate virtual environment uv venv .venv\Scripts\activate ### If using Python 3.13+ - install audioop library: `uv pip install audioop-lts` # Install the package uv pip install -e .

Configuración

Agregue esto a su claude_desktop_config.json

"discord-raw": { "command": "uv", "args": [ "--directory", "PATH/TO/mcp-discord-raw", "run", "discord-raw-mcp" ], "env": { "DISCORD_TOKEN": "YOUR-BOT-TOKEN" } }

Uso

Estilo de API REST

{ "method": "POST", "endpoint": "guilds/123456789/roles", "payload": { "name": "Bot Master", "permissions": "8", "color": 3447003, "mentionable": true } }

Estilo de comando de barra

{ "method": "POST", "endpoint": "/role create name:Bot_Master color:blue permissions:8 mentionable:true guild_id:123456789" }

Ejemplos

  1. Crear un rol:
{ "method": "POST", "endpoint": "/role create name:Moderator color:red permissions:moderate_members guild_id:123456789" }
  1. Enviar un mensaje:
{ "method": "POST", "endpoint": "channels/123456789/messages", "payload": { "content": "Hello from the API!" } }
  1. Obtener información del servidor:
{ "method": "GET", "endpoint": "guilds/123456789" }

Recomendaciones:

Coloque los identificadores de servidor, canal y usuario y algunos ejemplos en el conocimiento del proyecto para evitar tener que recordarle al modelo sobre ellos, junto con algo como esto para comenzar:

A continuación, se explica cómo usar eficazmente la herramienta Discord Raw API: La herramienta se llama discord_api y acepta tres parámetros:

  1. método: método HTTP ("GET", "POST", "PUT", "PATCH", "DELETE")
  2. punto final: punto final de la API de Discord (por ejemplo, "guilds/{guild.id}/roles")
  3. carga útil: objeto JSON opcional para el cuerpo de la solicitud Ejemplos clave que he utilizado:
  4. Creación de roles:
discord_api method: POST endpoint: guilds/{server_id}/roles payload: { "name": "Role Name", "color": 3447003, // Blue color in decimal "mentionable": true }
  1. Creación de categorías y canales:
// Category discord_api method: POST endpoint: guilds/{server_id}/channels payload: { "name": "Category Name", "type": 4 // 4 = category } // Text channel in category discord_api method: POST endpoint: guilds/{server_id}/channels payload: { "name": "channel-name", "type": 0, // 0 = text channel "parent_id": "category_id", "topic": "Channel description" }
  1. Mover canales a categorías:
discord_api method: PATCH endpoint: channels/{channel_id} payload: { "parent_id": "category_id" }
  1. Envío de mensajes:
discord_api method: POST endpoint: channels/{channel_id}/messages payload: { "content": "Message text with emojis \ud83d\ude04" }
  1. Asignación de roles:
discord_api method: PUT endpoint: guilds/{server_id}/members/{user_id}/roles/{role_id} payload: {}

La herramienta es compatible con la API de Discord completa, por lo que puedes consultar la documentación de la API de Discord para obtener más puntos de conexión y funciones. Las respuestas incluyen ID y otros metadatos que puedes usar en solicitudes posteriores. Consejos profesionales:

  • Guardar los ID devueltos de las solicitudes de creación para utilizarlos en solicitudes de seguimiento
  • ¿Se pueden incluir emojis Unicode directamente en el contenido del mensaje? ¿Indicar al modelo que use emojis de Discord como :champagne_glass:? ¿Los mensajes con emojis Unicode bloquean Claude Desktop?
  • Tipos de canal: 0 = texto, 2 = voz, 4 = categoría, 13 = escenario
  • Los colores de los roles están en formato decimal (no hexadecimal)
  • La mayoría de los puntos finales de modificación utilizan el método PATCH
  • Las cargas útiles vacías deben ser {} y no nulas"

Licencia

Licencia MIT

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Permite la interacción directa con la API de Discord mediante llamadas a la API REST y sintaxis de comando slash para la administración de bots, la configuración del servidor y las operaciones de mensajes.

  1. Installation
    1. Installing via Smithery
    2. Manual Installation
  2. Configuration
    1. Usage
      1. REST API Style
      2. Slash Command Style
    2. Examples
      1. Recommendations:
        1. License
      ID: ct3fi5s557