返回 MCP 目录
public公开dns本地运行

mcp-discord

MCP-Discord是一个连接AI助手与Discord平台的服务器,提供消息收发、频道管理、论坛操作等Discord相关功能。

article

README

🚀 MCP-Discord

MCP-Discord 是一个 Discord MCP(模型上下文协议)服务器,它能让 AI 助手与 Discord 平台进行交互。

smithery badge

🚀 快速开始

MCP-Discord 提供了以下与 Discord 相关的功能:

  • 登录 Discord 机器人
  • 获取服务器信息
  • 读取/删除频道消息
  • 向指定频道发送消息
  • 获取论坛频道列表
  • 创建/删除/回复论坛帖子
  • 创建/删除文本频道
  • 添加/移除消息反应
  • 创建/编辑/删除/使用 Webhook

✨ 主要特性

基本功能

  • discord_login:登录 Discord
  • discord_list_guilds:列出所有可用的 Discord 服务器(公会)及其频道
  • discord_send:向指定频道发送消息
  • discord_get_server_info:获取 Discord 服务器信息

频道管理

  • discord_create_text_channel:创建文本频道
  • discord_delete_channel:删除频道

论坛功能

  • discord_get_forum_channels:获取论坛频道列表
  • discord_create_forum_post:创建论坛帖子
  • discord_get_forum_post:获取论坛帖子
  • discord_reply_to_forum:回复论坛帖子
  • discord_delete_forum_post:删除论坛帖子

消息与反应

  • discord_read_messages:读取频道消息
  • discord_add_reaction:为消息添加反应
  • discord_add_multiple_reactions:为消息添加多个反应
  • discord_remove_reaction:移除消息的反应
  • discord_delete_message:从频道中删除特定消息

Webhook 管理

  • discord_create_webhook:为 Discord 频道创建新的 Webhook
  • discord_send_webhook_message:使用 Webhook 向 Discord 频道发送消息
  • discord_edit_webhook:编辑现有的 Discord 频道 Webhook
  • discord_delete_webhook:删除现有的 Discord 频道 Webhook

📦 安装指南

通过 Smithery 安装

要通过 Smithery 为 Claude Desktop 自动安装 mcp-discord,请执行以下命令:

npx -y @smithery/cli install @barryyip0625/mcp-discord --client claude

手动安装

# 克隆仓库
git clone https://github.com/barryyip0625/mcp-discord.git
cd mcp-discord

# 安装依赖
npm install

# 编译 TypeScript
npm run build

📚 详细文档

前提条件

  • Node.js(v16.0.0 或更高版本)
  • npm(v7.0.0 或更高版本)
  • 具有适当权限的 Discord 机器人:
    • 机器人令牌(可从 Discord 开发者门户 获取)
    • 启用消息内容意图
    • 启用服务器成员意图
    • 启用在线状态意图
  • 在 Discord 服务器中需要以下权限:
    • 发送消息
    • 创建公共线程
    • 在线程中发送消息
    • 管理线程
    • 管理频道
    • 添加反应

配置

正常运行需要 Discord 机器人令牌。你可以通过以下两种方式提供:

  1. 环境变量:
DISCORD_TOKEN=your_discord_bot_token
DEFAULT_SERVER_ID=your_default_server_id  # 可选
DEFAULT_CHANNEL_ID=your_default_channel_id  # 可选
  1. 启动时使用 --config 参数:
node path/to/mcp-discord/build/index.js --config "{\"DISCORD_TOKEN\":\"your_discord_bot_token\"}"

增强启动脚本

项目包含一个增强的启动脚本 (start-discord.js),它提供了更好的调试和错误处理功能:

  • 从 .env 文件加载环境变量
  • 如果未提供,则设置默认服务器和频道 ID
  • 将 console.log 重定向到 stderr,以避免 Claude Desktop 中的 JSON 解析问题
  • 在启动 MCP 服务器之前直接测试 Discord 连接
  • 如果出现问题,提供详细的错误信息

使用此脚本:

node start-discord.js

与 Claude/Cursor 一起使用

  • Claude
{
    "mcpServers": {
        "discord": {
            "command": "node",
            "args": [
                "path/to/mcp-discord/start-discord.js"
            ],
            "env": {
                "DISCORD_TOKEN": "your_discord_bot_token",
                "DEFAULT_SERVER_ID": "your_default_server_id",
                "DEFAULT_CHANNEL_ID": "your_default_channel_id"
            }
        }
    }
}
  • Cursor
{
    "mcpServers": {
        "discord": {
            "command": "cmd",
            "args": [
                "/c",
                "node",
                "path/to/mcp-discord/start-discord.js"
            ],
            "env": {
                "DISCORD_TOKEN": "your_discord_bot_token",
                "DEFAULT_SERVER_ID": "your_default_server_id",
                "DEFAULT_CHANNEL_ID": "your_default_channel_id"
            }
        }
    }
}

开发

# 开发模式
npm run dev

📄 许可证

MIT 许可证

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端