Discord MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Discord MCP or direct API to send messages, fetch channel history, manage roles, and automate server tasks through natural language.

Discord logoDiscord
Oauth2

Discord is a real-time messaging and VoIP platform for communities and teams. It lets users chat, share media, and collaborate across public and private channels.

23 Tools1 Triggers

Try Discord now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
Discord
Try asking
TOOLS & TRIGGERS

Supported Tools and Triggers

Every Discord action and event your agent gets out of the box.

Delete User Application Role Connection

Deletes the current user's application role connection for the specified application.

Edit Application Command Permissions

Edits the permissions for a specific application command in a guild.

Get Application Command Permissions

Retrieves the permissions for a specific application command in a guild.

Get Batch Application Command Permissions

Retrieves permissions for all commands of an application in a guild.

Get Current User Application Entitlements

Retrieves a page of entitlements for the current user and application, with optional SKU and guild filters and controls for ended or deleted entitlements.

Get Gateway

Tool to retrieve a valid WebSocket (wss) URL for establishing a Gateway connection to Discord.

Get Guild Template

Tool to retrieve information about a Discord guild template using its unique template code.

Get Guild Widget

Tool to retrieve the guild widget in JSON format.

Get Guild Widget PNG

Tool to retrieve a PNG image widget for a Discord guild.

Get my guild member

Retrieves the guild member object for the currently authenticated user within a specified guild, including roles, nickname, join date, and permissions.

Get my OAuth2 authorization

Retrieves current OAuth2 authorization details for the application, including app info, scopes, token expiration, and user data (contingent on scopes like 'identify').

Get My User

Fetches comprehensive profile information for the currently authenticated Discord user, including email if the 'email' scope is granted.

Get OpenID Connect userinfo

Retrieve OpenID Connect compliant user information for the authenticated user.

Get Public Keys

Tool to retrieve Discord OAuth2 public keys.

Get SKU Subscription

Retrieves a specific subscription by ID for a given SKU.

Get User

Retrieve information about a Discord user.

Get User Application Role Connection

Retrieves the application role connection for the currently authenticated user for a specified application.

Resolve Invite

Tool to resolve and retrieve information about a Discord invite code.

List My Connections

Retrieves a list of the authenticated user's connected third-party accounts on Discord.

List My Guilds

Lists the current user's guilds, returning partial data for each; primarily used for displaying server lists or verifying memberships.

List SKU Subscriptions

Lists all subscriptions for a given SKU.

List Sticker Packs

Tool to retrieve all available Discord Nitro sticker packs.

Update User Application Role Connection

Updates the application role connection for the currently authenticated user for a specified application.

SETUP GUIDE

Connect Discord MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["discord"],
  mcp: true,
});
Create a session scoped to Discord and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "List all Discord servers I belong to",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a Discord request
SETUP GUIDE

Connect Discord API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["discord"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to Discord
3

Run Discord tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "List all Discord servers I belong to" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the Discord tool calls through the session, and print the final answer
Guide

Connect multiple Discord accounts to Claude and tell it which one to use by name.

Read the guide

Why Use Composio?

AI Native Discord Integration

  • Supports both Discord MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for reading, writing, and querying your Discord data

Managed Auth

  • Built-in OAuth handling with automatic token refresh and rotation
  • Central place to manage, scope, and revoke Discord access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Discord
  • Scoped, least privilege access to Discord resources
  • Full audit trail of agent actions to support review and compliance

Rolling this out across your team?

Give your team centralized access control across every framework with Composio’s MCP Gateway.

EXPLORE MCP GATEWAY
FAQ

Frequently asked questions

Start with Discord.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Discord tool your agent needs.Free to start.

Start building