๐
Discord CLI
Discord CLI + MCP Server โ sync, search, and send Discord messages from your terminal. Built for developers and AI agents.
0 installs
Trust: 34 โ Low
Search
Ask AI about Discord CLI
Powered by Claude ยท Grounded in docs
I know everything about Discord CLI. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Loading tools...
Reviews
Documentation
๐ฎ discocli โ Discord CLI + MCP Server
Interact with Discord from your terminal. Built for developers and AI agents.
discocli sync --follow # real-time message capture
discocli search "deployment" # offline full-text search
discocli send --to "#general" --text "Build passed โ
"
discocli serve # start MCP server for AI agents
Install
Homebrew (macOS & Linux)
brew install virat-mankali/tap/discocli
Build from source
git clone https://github.com/virat-mankali/discord-cli
cd discord-cli
go build -o discocli ./cmd/discocli/
Quick Start
# 1. Authenticate (bot token or user token)
discocli auth
# 2. Sync messages
discocli sync
# 3. Search offline
discocli search "standup notes"
# 4. Send a message
discocli send --to "#general" --text "Hello from the terminal!"
Commands
| Command | Description |
|---|---|
discocli auth | Authenticate with Discord (bot or user token) |
discocli whoami | Show the currently authenticated user |
discocli sync | Sync message history to local SQLite database |
discocli sync --follow | Real-time sync via Discord Gateway |
discocli search <query> | Full-text search across synced messages |
discocli send --to <target> --text <msg> | Send message to channel, DM, or thread |
discocli guilds | List all servers you're in |
discocli channels --guild <name> | List channels in a server |
discocli serve | Start MCP server for AI agents |
MCP Server (AI Agents)
Add to your mcp.json:
{
"mcpServers": {
"discocli": {
"command": "discocli",
"args": ["serve"],
"env": {},
"disabled": false,
"autoApprove": [
"search_messages",
"list_guilds",
"list_channels",
"get_sync_status"
]
}
}
}
Available MCP Tools
| Tool | Description | Auto-approve? |
|---|---|---|
search_messages | Full-text search across synced messages | โ |
list_guilds | List all Discord servers | โ |
list_channels | List channels in a server | โ |
get_sync_status | Show sync status and message counts | โ |
send_message | Send a message to a channel | โ |
sync_channel | Sync a channel's history | โ |
- You can optionally add
send_messageandsync_channelto theautoApprovearray in yourmcp.jsonif you want your AI agent to use them without confirmation. They're excluded by default since they perform write operations.
How It Works
- Messages are synced from Discord into a local SQLite database with FTS5 full-text search
- All searches are offline โ fast and private
- Incremental sync only fetches new messages on subsequent runs
- The MCP server exposes the same functionality over stdio for AI agents
- Pure Go binary, no CGO โ works on all platforms
Token Setup
Bot Token (Recommended)
- Go to Discord Developer Portal
- Create application โ Bot โ Reset Token
- Enable Message Content Intent under Privileged Gateway Intents
- Invite bot to your server with
Read Messages,Send Messages,Read Message History,Attach Filespermissions
User Token (Personal Use)
- Open Discord in browser
- DevTools โ Network โ any API request โ Authorization header
โ ๏ธ Important: Bot tokens are always the safer choice. User tokens violate Discord's Terms of Service if used for automation at scale. They're fine for personal/local use and AI agents acting on your behalf, but bot tokens are more stable, officially supported, and won't risk your account. When in doubt, use a bot token.
Inspired By
- steipete/wacli โ WhatsApp CLI by Peter Steinberger
- virat-mankali/telegram-cli โ Telegram CLI
License
MIT
