# Cloud Discord

> 59-tool Discord MCP server on Cloudflare Workers — full admin control for AI agents

- **Type:** MCP server
- **Install:** `agentstack add mcp-codependentai-cloud-discord`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [codependentai](https://agentstack.voostack.com/s/codependentai)
- **Installs:** 0
- **Category:** [Cloud & Infrastructure](https://agentstack.voostack.com/c/cloud-infrastructure)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [codependentai](https://github.com/codependentai)
- **Source:** https://github.com/codependentai/cloud-discord

## Install

```sh
agentstack add mcp-codependentai-cloud-discord
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Cloud Discord

A full-featured Discord MCP (Model Context Protocol) server that runs on Cloudflare Workers. Gives AI agents complete admin control over Discord servers — 59 tools covering messaging, moderation, forums, roles, files, voice notes, and more.

Deploy once, connect from any MCP-compatible client (Claude Code, Claude Desktop, Cursor, etc.).

## Features

**59 tools** across 12 categories:

| Category | Tools | What You Can Do |
|----------|-------|----------------|
| **Messaging** | 8 | Send, edit, delete, bulk delete, read history, send embeds, read/send DMs |
| **Moderation** | 4 | Kick, ban, unban, timeout members |
| **Roles** | 7 | Create, edit, delete, assign, remove roles, list member roles |
| **Channels** | 6 | Create, edit, delete channels, set slowmode, set permissions, list all |
| **Threads** | 3 | Create, manage (archive/lock), delete threads |
| **Forums** | 9 | Create/edit/list posts, manage tags, set layout/sort/guidelines |
| **Reactions** | 3 | Add, remove, get reactions |
| **Pins** | 3 | Pin, unpin, list pinned messages |
| **Files** | 2 | Send files to channels or DMs (via URL or base64) |
| **Voice** | 1 | Text-to-speech voice notes via ElevenLabs (optional) |
| **Server** | 4 | Guild info, audit log, list servers, member list |
| **Invites** | 3 | Create, list, delete invites |
| **Polls** | 1 | Create native Discord polls |

Plus:
- `/vibe` slash command — AI-powered channel vibe check (requires Anthropic API key)
- Direct file upload endpoint — send files from your machine without base64 encoding
- Secret-path authentication — your MCP endpoint is only accessible with your secret URL
- Rate limit handling with automatic retry

## Prerequisites

- A [Cloudflare account](https://dash.cloudflare.com/sign-up) (free tier works)
- [Node.js](https://nodejs.org/) 18+
- A Discord bot with appropriate permissions

## Setup

### 1. Create a Discord Bot

1. Go to the [Discord Developer Portal](https://discord.com/developers/applications)
2. Click **New Application**, give it a name
3. Go to the **Bot** tab:
   - Click **Reset Token** and save the token — you'll need it later
   - Enable **Message Content Intent** under Privileged Gateway Intents
4. Go to the **General Information** tab:
   - Copy the **Application ID** (you'll need this for the `/vibe` command)
   - Copy the **Public Key** (you'll need this for `wrangler.toml`)
5. Go to **OAuth2 > URL Generator**:
   - Select scopes: `bot`, `applications.commands`
   - Select bot permissions: `Administrator` (or select individual permissions you need)
   - Copy the generated URL and open it in your browser to invite the bot to your server

### 2. Clone and Install

```bash
git clone https://github.com/codependentai/cloud-discord.git
cd cloud-discord
npm install
```

### 3. Configure

Edit `wrangler.toml`:

```toml
[vars]
# Generate a random secret: openssl rand -base64 24
MCP_SECRET_PATH = "your-random-secret-here"

# From Discord Developer Portal > General Information > Public Key
DISCORD_PUBLIC_KEY = "your-public-key-here"
```

### 4. Add Secrets

These are stored securely in Cloudflare — they never appear in your code:

```bash
# Required — your Discord bot token
npx wrangler secret put DISCORD_BOT_TOKEN
# Paste your bot token when prompted

# Optional — needed for the /vibe slash command
npx wrangler secret put ANTHROPIC_API_KEY

# Optional — needed for voice notes (discord_send_voice_note)
npx wrangler secret put ELEVENLABS_API_KEY
```

### 5. Deploy

```bash
npx wrangler deploy
```

Your MCP server is now live at:
```
https://cloud-discord..workers.dev/mcp/
```

### 6. Connect to Your MCP Client

Add the server to your MCP client's configuration. For example, in Claude Code's `.mcp.json`:

```json
{
  "mcpServers": {
    "discord": {
      "type": "url",
      "url": "https://cloud-discord..workers.dev/mcp/"
    }
  }
}
```

For Claude Desktop, add it to `claude_desktop_config.json` under `mcpServers` with the same format.

## Optional: Register the /vibe Slash Command

The `/vibe` command lets anyone in your Discord server run an AI-powered vibe check on the current channel. It reads the last 20 messages and summarizes what's happening.

Requires `ANTHROPIC_API_KEY` to be set.

```bash
DISCORD_APP_ID=your_app_id DISCORD_BOT_TOKEN=your_token npx tsx src/register-commands.ts
```

Then in Discord Developer Portal, set the **Interactions Endpoint URL** to:
```
https://cloud-discord..workers.dev/interactions
```

## Optional: Voice Notes

The `discord_send_voice_note` tool generates speech using [ElevenLabs](https://elevenlabs.io/) and sends it as an audio file to Discord.

1. Sign up at [ElevenLabs](https://elevenlabs.io/) and get an API key
2. Add the secret: `npx wrangler secret put ELEVENLABS_API_KEY`
3. Find your voice ID in the [Voice Lab](https://elevenlabs.io/app/voice-lab)
4. Use the tool with `voice_id` and `text` parameters

If `ELEVENLABS_API_KEY` is not set, the tool will return an error when called but won't affect any other tools.

## Direct File Upload

For sending local files (images, audio, documents) without base64 encoding, use the direct upload endpoint:

```bash
# Send to a channel
curl -F "channel_id=CHANNEL_ID" \
     -F "file=@/path/to/file.mp3" \
     -F "message=Optional message" \
     https://cloud-discord..workers.dev/mcp//upload

# Send as DM
curl -F "user_id=USER_ID" \
     -F "file=@/path/to/image.png" \
     https://cloud-discord..workers.dev/mcp//upload
```

This is useful when the MCP tool's base64 parameter would be too large (e.g., audio files).

## Tool Reference

### Messaging
| Tool | Description |
|------|-------------|
| `discord_read_messages` | Read channel message history (1-100 messages) |
| `discord_read_dm_messages` | Read DM history with a user |
| `discord_send_message` | Send a message, optionally as a reply |
| `discord_send_dm` | Send a direct message to a user |
| `discord_edit_message` | Edit a bot message |
| `discord_delete_message` | Delete a message |
| `discord_bulk_delete_messages` | Delete 2-100 messages at once (must be `
2. Translates tool calls into Discord REST API requests
3. Returns formatted results to the MCP client

No database, no state, no containers. Auth is handled by the secret path in the URL — anyone with the URL can use all tools, so treat it like an API key.

The `/vibe` slash command handles Discord interactions at `/interactions` using signature verification.

## Development

```bash
# Run locally
npx wrangler dev

# Type check
npx tsc --noEmit

# Deploy
npx wrangler deploy
```

## License

MIT — see [LICENSE](LICENSE).

Built by [Codependent AI](https://codependentai.io).

## Support

Built by [Codependent AI](https://codependentai.io).

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [codependentai](https://github.com/codependentai)
- **Source:** [codependentai/cloud-discord](https://github.com/codependentai/cloud-discord)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-codependentai-cloud-discord
- Seller: https://agentstack.voostack.com/s/codependentai
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
