communicationoauth2

Discord

Community chat, voice, and bots.

Verdict

Discord via MCP is the integration that lets the model see and (with care) post in your community. Most useful for community managers, developer-relations teams, and orgs running their primary chat outside Slack. What we notice: read operations work cleanly — search messages, summarise channel activity, list members, fetch reactions. The model can answer "what was the most-discussed topic in #general this week" or "how many DAUs do we have based on recent activity." Posting requires careful prompting and human review — Discord's social register is informal and the model can land in the wrong tone. Best for: community managers running developer or product communities who want AI summaries of high-volume channels; DevRel teams tracking engagement and sentiment across a Discord; surfacing recurring questions that should become docs; spotting moderation issues before they escalate. Avoid for: unreviewed posting in user-facing channels (community trust is the asset, AI tone misses cost it); compliance-sensitive deployments where Discord PII handling is the issue; replacing dedicated community-management tools (Discord's own features + a dedicated tool like Common Room cover more than the MCP alone). Practical frame: free with a Discord account, requires bot permissions. Token cost depends on channel activity — summarising a busy week in a popular channel runs $0.30-2.00 in tokens.

Common use cases

  • Verify which servers a support user belongs to
  • Audit invite codes before sharing publicly
  • Pull connected accounts for identity checks
  • List guild memberships during onboarding reviews
  • Confirm OAuth scopes granted to the app

Integration

Vendor
Discord
Category
communication
Auth
OAUTH2
Tools
6
Composio slug
discord

Tools

  • Get Invite

    Tool to retrieve information about a specific invite code. use when you need to get details about a guild or channel associated with an invite.

  • Get my guild member

    Retrieves the guild member object for the currently authenticated user within a specified guild, provided they are a member of that guild.

  • 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.

  • List my guilds

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

  • Retrieve user connections

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

Setup

Setup guide

  1. 11. Inside any Space, type '@Discord' and click 'Connect Discord' in the suggestion dropdown. 2. You'll land on Discord's OAuth consent screen—grant the 'identify', 'guilds', and 'connections' scopes so Switchy can read your profile and server list. 3. After you authorize, Discord redirects you back to Switchy and the MCP appears in your workspace's integrations list. 4. Return to the Space and type '@Discord list my guilds'—if you see a JSON response with server names and IDs, the connection works. 5. To invoke any tool, start your message with '@Discord' followed by the task ('get invite <code>' or 'get my user'), and the AI routes the request through the MCP. 6. Other teammates repeat steps 1–3 with their own Discord accounts if they want to query their guilds or profiles.

What teammates see: by default, memories from Discord are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.

Works well with

Top models

Compatibility data appears once enough Spaces have used this MCP together with a given model.

How Switchy teams use it

Not enough Spaces yet to publish anonymised usage stats (we require ≥ 50 Spaces per week).

Starter prompts

List My Servers

@Discord list my guilds and format the results as a table with columns for server name, ID, and whether I'm the owner.
Open in a Space →

Inspect Invite Code

@Discord get invite details for code 'abc123XYZ' and tell me the server name, member count, and expiration timestamp.
Open in a Space →

Check My Profile

@Discord get my user profile and show my username, email address, and account creation date.
Open in a Space →

Show Connected Accounts

@Discord retrieve my connected accounts and list each service name, account ID, and whether it's verified.
Open in a Space →

Verify Guild Membership

@Discord get my guild member object for server ID '123456789012345678' and display my roles and join timestamp.
Open in a Space →

Example outputs

Illustrative - representative of the model's voice and quality, not literal recordings.

Prompt

@discord show me which servers I'm in and my role in each one

Output

You're a member of 8 Discord servers. Here's a summary: In 'Engineering Team' you have admin permissions and joined 14 months ago. In 'Product Design' you're a regular member with no elevated roles. In 'Company All-Hands' you have moderator status. The other 5 servers ('Weekend Gaming', 'Open Source Contributors', etc.) show standard member access. Would you like details about a specific server's channels or your permissions there?

Notes

This example combines the List my guilds and Get my guild member tools to show membership overview. Requires the 'guilds' OAuth2 scope. The MCP returns partial guild data by default — full channel lists or detailed permission breakdowns require follow-up queries to Discord's API.

Prompt

@discord what's my current Discord profile info including connected accounts?

Output

Your Discord profile shows username 'alex_pm' with discriminator #4821, email verified at alex@company.com. Account created March 2019. You have 3 connected accounts: GitHub (alex-codes), Twitter (@alex_product), and Spotify (premium tier). Your current OAuth2 session grants 'identify', 'email', and 'connections' scopes, expiring in 6 days. Avatar URL and banner color also available if needed for integration work.

Notes

This read-heavy example demonstrates the Get my user and Retrieve user connections tools together. Requires 'identify', 'email', and 'connections' scopes during OAuth2 setup. Useful for onboarding flows or profile sync features, but be mindful that email access is a privileged scope users may decline.

Prompt

@discord check if this invite link discord.gg/abc123xyz is still valid and tell me what server it's for

Output

The invite code 'abc123xyz' is active and leads to the 'Design Systems Community' server (guild ID 98765). The invite was created by user 'sarah_moderator' and is set to expire in 2 days with a max of 50 uses (currently 23 used). The target channel is '#general-chat'. The guild has approximately 1,200 members. This is a temporary invite, so it won't work after the expiration window.

Notes

Showcases the Get Invite tool for validating and inspecting invite links before sharing them in team docs or onboarding materials. No special scopes needed beyond basic OAuth2 authentication. Helpful for auditing invite links in wikis or Slack threads, but note that invite metadata (usage count, expiration) reflects the moment of the query and can change rapidly.

Use-case deep-dives

Community onboarding automation

When Discord MCP streamlines member intake for support teams

A 5-person customer success team runs a 2,000-member Discord for SaaS users. New members join via invite links, and the team needs to verify guild membership before granting access to private channels or support tickets. The Discord MCP's Get Invite and Get my guild member tools let an AI agent check invite validity and confirm a user's server presence in real time during onboarding flows. This works well when your team processes 20-50 new members daily and needs to route them based on their Discord profile or connected accounts. If you're onboarding hundreds per hour, you'll hit rate limits and need Discord's bot API instead. For small-to-mid scale community ops, this MCP turns Discord membership checks into a one-call lookup.

Cross-platform identity verification

Use this MCP to link Discord profiles with internal user records

A 3-person dev team building a gaming tournament platform needs to match Discord users to their in-app accounts. Players authenticate via OAuth2, and the team uses Retrieve user connections to pull linked Steam, Twitch, or GitHub profiles from Discord. The MCP's Get my OAuth2 authorization tool confirms token scopes and expiration, so the agent knows when to prompt re-auth. This setup shines when you're managing under 10,000 users and need to merge Discord identity with your own database without running a full bot. Beyond that scale, you'll want Discord's gateway events for real-time presence. For early-stage platforms where identity stitching is manual today, this MCP cuts the lookup time from minutes to seconds.

Guild membership audit for access control

When to use Discord MCP for role-based workspace gating

A 6-person agency runs a private Slack workspace and a Discord server for freelancers. They want to auto-approve Slack invites only if the requester is already in their Discord guild. An AI agent calls List my guilds to check the user's server list, then Get my guild member to verify they hold a specific role (like 'Verified Contractor'). This works when you're vetting 5-15 access requests per week and your Discord has under 500 active members. If your guild is larger or roles change hourly, the MCP's snapshot approach lags behind real-time bot webhooks. For small teams doing periodic access reviews, this MCP turns Discord into a lightweight SSO check without deploying infrastructure.

Frequently asked

What can the Discord MCP do in Switchy?

The Discord MCP lets your AI assistant read your Discord profile, list servers you're in, check invite details, and view connected accounts. It can't send messages or manage channels — it's read-only access to your Discord identity and memberships, useful for context about where your team hangs out.

Which OAuth scopes does the Discord MCP request?

It requests standard Discord OAuth2 scopes like 'identify' for profile data and 'email' if you want the AI to see your email address. You'll authorize through Discord's OAuth flow, which shows exactly what Switchy can access. No admin permissions required — just your own account.

Can the Discord MCP post messages or create channels?

No. This MCP only reads information — your guilds, member status, invite metadata. If you need to send messages or manage Discord from Switchy, you'd use Discord's bot API separately or a different integration. This is purely for pulling context into your AI workspace.

Why use this instead of just opening Discord?

You use this when you want your AI assistant to know which Discord servers you're in or check invite codes without leaving Switchy. It's about giving the AI context, not replacing Discord. For actual conversations or moderation, you still use Discord directly or a bot.

Does connecting Discord count against my Switchy plan limits?

MCP connections themselves don't consume plan limits — you're capped by total AI requests and workspace seats, not by how many integrations you enable. Each team member connects their own Discord account via OAuth, so there's no shared credential to manage.

Compare with

Compare with anything else →
Data last verified 7 hours ago.Sources aggregated hourly to weekly. See docs/architecture/model-directory.md.