项目简介

MCP-Discord 是一个基于 Model Context Protocol (MCP) 构建的服务器,它充当 AI 助手与 Discord 平台之间的桥梁。通过 MCP 协议,AI 助手可以调用 MCP-Discord 提供的工具,从而实现与 Discord 的互动,例如发送消息、管理频道、参与论坛等。

主要功能点

  • Discord 登录: 允许 AI 助手通过 Discord 机器人账号登录到 Discord。
  • 消息发送: 支持 AI 助手向指定的 Discord 频道发送文本消息。
  • 服务器信息获取: 允许 AI 助手获取 Discord 服务器的各种信息。
  • 频道管理: 支持创建和删除文本频道。
  • 论坛功能: 提供论坛频道列表检索、论坛帖子创建、回复、删除和信息获取等功能。
  • 消息和反应: 支持读取频道消息,以及为消息添加和移除表情反应。

安装步骤

通过 Smithery 安装 (Claude Desktop 自动安装)

如果您使用 Claude Desktop,可以通过 Smithery 自动安装 MCP-Discord:

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

手动安装

  1. 克隆仓库:

    git clone https://github.com/barryyip0625/mcp-discord.git
    cd mcp-discord
  2. 安装依赖:

    npm install
  3. 编译 TypeScript:

    npm run build

服务器配置

MCP 服务器需要 Discord 机器人令牌 (Bot Token) 才能连接到 Discord。您需要先在 Discord Developer Portal 创建一个机器人应用,并启用 Message Content Intent, Server Members IntentPresence Intent

在 MCP 客户端(例如 Claude 或 Cursor)中,您需要配置 MCP 服务器的启动信息。以下是 Claude 和 Cursor 的配置示例,您需要根据实际情况修改 'path/to/mcp-discord/build/index.js' 为 MCP-Discord 服务器 'index.js' 文件的实际路径,并将 'your_discord_bot_token' 替换为您的 Discord 机器人令牌。

Claude 配置示例:

{
    "mcpServers": {
        "discord": {
            "command": "node",
            "args": [
                "path/to/mcp-discord/build/index.js"
            ],
            "env": {
                "DISCORD_TOKEN": "your_discord_bot_token"
            }
        }
    }
}
  • 'server name': 'discord' (服务器名称,可以自定义)
  • 'command': 'node' (启动命令,Node.js 运行环境)
  • 'args': '["path/to/mcp-discord/build/index.js"]' (启动参数,指向编译后的 index.js 文件路径)
  • 'env': '{"DISCORD_TOKEN": "your_discord_bot_token"}' (环境变量,用于设置 Discord 机器人令牌)

Cursor 配置示例:

{
    "mcpServers": {
        "discord": {
            "command": "cmd",
            "args": [
                "/c",
                "node",
                "path/to/mcp-discord/build/index.js"
            ],
            "env": {
                "DISCORD_TOKEN": "your_discord_bot_token"
            }
         }
     }
}
  • 'server name': 'discord' (服务器名称,可以自定义)
  • 'command': 'cmd' (启动命令,Windows 命令提示符)
  • 'args': '["/c", "node", "path/to/mcp-discord/build/index.js"]' (启动参数,'/c' 表示执行完命令后关闭 cmd 窗口,指向编译后的 index.js 文件路径)
  • 'env': '{"DISCORD_TOKEN": "your_discord_bot_token"}' (环境变量,用于设置 Discord 机器人令牌)

基本使用方法

  1. 启动 MCP-Discord 服务器: 根据您的 MCP 客户端配置启动 MCP-Discord 服务器。

  2. 在 AI 助手中使用工具: 您可以在支持 MCP 协议的 AI 助手中使用以下工具与 Discord 互动 (工具名称以 'discord_' 开头):

    • 'discord_login': 登录 Discord (通常在开始使用前调用一次)
    • 'discord_send': 发送消息到指定频道
    • 'discord_get_server_info': 获取服务器信息
    • 'discord_get_forum_channels': 获取论坛频道列表
    • 'discord_create_forum_post': 创建论坛帖子
    • 'discord_reply_to_forum': 回复论坛帖子
    • 'discord_read_messages': 读取频道消息
    • ... (更多工具请参考 Tools Documentation 章节)

    使用这些工具时,您需要提供相应的参数,例如频道 ID、服务器 ID、消息内容等。具体的参数说明请参考代码仓库中的 'src/index.ts' 文件中每个 'server.tool()' 定义的参数类型。

注意: 首次使用前,请确保已正确配置 Discord 机器人令牌,并已将 MCP-Discord 服务器添加到您的 MCP 客户端配置中。

信息

分类

通信与社交