{"_id":"@buzzicra/discord-mcp","name":"@buzzicra/discord-mcp","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@buzzicra/discord-mcp","version":"1.0.0","description":"Discord MCP server for Claude Code - Control Discord bots via Model Context Protocol","type":"module","main":"dist/index.js","bin":{"discord-mcp":"dist/index.js"},"scripts":{"build":"tsup src/index.ts --format esm --dts --clean","dev":"tsup src/index.ts --format esm --watch","start":"node dist/index.js","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"keywords":["discord","mcp","model-context-protocol","claude","anthropic","bot","discord-bot","ai"],"author":{"name":"Bora Esen"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/esenbora/discord-mcp.git"},"bugs":{"url":"https://github.com/esenbora/discord-mcp/issues"},"homepage":"https://github.com/esenbora/discord-mcp#readme","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","discord.js":"^14.14.1"},"devDependencies":{"@types/node":"^20.10.0","tsup":"^8.0.1","typescript":"^5.3.0"},"engines":{"node":">=18.0.0"},"_id":"@buzzicra/discord-mcp@1.0.0","gitHead":"5ffa946fac8380eef41a272d5b20094401c5a69c","types":"./dist/index.d.ts","_nodeVersion":"22.20.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-uxvNIDzTUwhA4AorJIadRbrc3RGCWZiah5V/ewkK681jL5oaLbidTAyiRFHpo3tAa5xgsht28dxD41GquZCjwQ==","shasum":"ab964b9fb5bcd3a72e08b729a1fb9363226755e7","tarball":"https://registry.npmjs.org/@buzzicra/discord-mcp/-/discord-mcp-1.0.0.tgz","fileCount":5,"unpackedSize":43892,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDPtKH2BTjuAb77BAjX3PMe+ifZDavtTW/ntRPV+Wo9bAIhAMElz7B7W4ns2z26Gor5RHxWfcA/pTkw/LI274fEmYoG"}]},"_npmUser":{"name":"buzzicra","email":"esenbora575@gmail.com"},"directories":{},"maintainers":[{"name":"buzzicra","email":"esenbora575@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/discord-mcp_1.0.0_1769688200618_0.2838918355909976"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-29T12:03:19.905Z","1.0.0":"2026-01-29T12:03:20.747Z","modified":"2026-01-29T12:03:20.979Z"},"maintainers":[{"name":"buzzicra","email":"esenbora575@gmail.com"}],"description":"Discord MCP server for Claude Code - Control Discord bots via Model Context Protocol","homepage":"https://github.com/esenbora/discord-mcp#readme","keywords":["discord","mcp","model-context-protocol","claude","anthropic","bot","discord-bot","ai"],"repository":{"type":"git","url":"git+https://github.com/esenbora/discord-mcp.git"},"author":{"name":"Bora Esen"},"bugs":{"url":"https://github.com/esenbora/discord-mcp/issues"},"license":"MIT","readme":"# Discord MCP Server\n\nA Model Context Protocol (MCP) server that exposes Discord bot capabilities to Claude.\n\n## Features\n\n- **26 tools** covering messaging, channels, servers, members, roles, and moderation\n- Full Discord.js v14 integration\n- TypeScript with strict typing\n\n## Prerequisites\n\n1. **Node.js 18+**\n2. **Discord Bot Token** - Create a bot at [Discord Developer Portal](https://discord.com/developers/applications)\n\n### Bot Permissions\n\nYour Discord bot needs these permissions:\n- Read Messages/View Channels\n- Send Messages\n- Manage Messages\n- Add Reactions\n- Manage Channels (for channel operations)\n- Kick Members\n- Ban Members\n- Moderate Members (for timeouts)\n- Manage Roles\n\n### Required Intents\n\nEnable these **Privileged Gateway Intents** in the Discord Developer Portal:\n- Server Members Intent\n- Message Content Intent\n\n## Installation\n\n```bash\n# Clone or navigate to the directory\ncd discord_mcp\n\n# Install dependencies\nnpm install\n\n# Build\nnpm run build\n```\n\n## Configuration\n\n### Environment Variable\n\nSet `DISCORD_BOT_TOKEN` in your environment:\n\n```bash\nexport DISCORD_BOT_TOKEN=\"your-bot-token\"\n```\n\n### Claude Code MCP Config\n\nAdd to your `~/.claude.json` or project's `.mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"discord\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/discord_mcp/dist/index.js\"],\n      \"env\": {\n        \"DISCORD_BOT_TOKEN\": \"your-bot-token\"\n      }\n    }\n  }\n}\n```\n\n## Available Tools\n\n### Messaging (6 tools)\n| Tool | Description |\n|------|-------------|\n| `send_message` | Send a message to a channel |\n| `get_messages` | Get recent messages from a channel |\n| `edit_message` | Edit an existing message |\n| `delete_message` | Delete a message |\n| `add_reaction` | Add reaction to a message |\n| `reply_to_message` | Reply to a specific message |\n\n### Channels (5 tools)\n| Tool | Description |\n|------|-------------|\n| `list_channels` | List all channels in a server |\n| `get_channel` | Get channel details |\n| `create_channel` | Create a new channel |\n| `delete_channel` | Delete a channel |\n| `update_channel` | Update channel settings |\n\n### Server (3 tools)\n| Tool | Description |\n|------|-------------|\n| `get_server_info` | Get server details |\n| `list_servers` | List all servers the bot is in |\n| `get_server_stats` | Get server statistics |\n\n### Members (4 tools)\n| Tool | Description |\n|------|-------------|\n| `list_members` | List server members |\n| `get_member` | Get member details |\n| `search_members` | Search members by username |\n| `get_member_roles` | Get roles for a member |\n\n### Roles (4 tools)\n| Tool | Description |\n|------|-------------|\n| `list_roles` | List all server roles |\n| `add_role` | Add role to member |\n| `remove_role` | Remove role from member |\n| `create_role` | Create a new role |\n\n### Moderation (4 tools)\n| Tool | Description |\n|------|-------------|\n| `kick_member` | Kick a member from server |\n| `ban_member` | Ban a member from server |\n| `unban_member` | Unban a user |\n| `timeout_member` | Timeout a member |\n\n## Usage Examples\n\nOnce configured, you can use natural language with Claude:\n\n- \"List all the servers my Discord bot is in\"\n- \"Send a message to channel 123456789 saying 'Hello!'\"\n- \"Get the last 10 messages from channel 123456789\"\n- \"Create a new text channel called 'announcements' in server 987654321\"\n- \"Timeout user 111222333 for 10 minutes\"\n\n## Development\n\n```bash\n# Watch mode for development\nnpm run dev\n\n# Type checking\nnpm run typecheck\n```\n\n## Troubleshooting\n\n### \"DISCORD_BOT_TOKEN environment variable is required\"\nMake sure you've set the token in your MCP config or environment.\n\n### \"Missing Access\" errors\nCheck that your bot has the required permissions and intents enabled.\n\n### Bot not responding to channel operations\nEnsure the bot has access to the specific channel and server.\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-f70ee1d142f7cc4e955c77ddc154369c"}