Discord智能问答机器人

一个集成Mastra MCP组件的Discord机器人服务器,提供智能问答和交互功能。

  • by mastra-ai
  • TypeScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 mastra-ai/discord-mcp-server

使用说明

Discord MCP Bot-服务器组件

与集成的Discord机器人服务器 Mastra的MCP机器人组件 提供智能协助并回答有关Mastra.ai的问题。

概述

此Discord机器人服务器与Mastra MCP组件配合使用,以:

  • 处理不一致的交互和消息路由
  • 管理机器人命令和权限
  • 提供Discord特定的功能,如线程和DM
  • 与Mastra组件的接口,用于智能响应

先决条件

入门指南

  1. 克隆存储库:

    git clone https://github.com/mastra-ai/discord-mcp-server
    cd discord-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 创建一个 .env 使用您的Discord凭据创建文件:

    DISCORD_BOT_TOKEN=your_discord_bot_token  
    DISCORD_CLIENT_ID=your_discord_client_id
    DISCORD_PUBLIC_KEY=your_discord_public_key
    MASTRA_URL=your_mastra_url
    
  4. 运行服务器:

    npm start
    

设置Discord Bot

  1. 创建Discord应用程序:

    • 首选 Discord开发者门户
    • 点击“新建应用程序”并为其命名
    • 导航到“Bot”选项卡,然后单击“添加Bot”
  2. 配置机器人权限:

    • 在“特权网关意图”下,启用:
      • 消息内容意图
      • 服务器成员意图
      • 直接消息意图
  3. 获取您的机器人令牌:

    • 在Bot选项卡中,单击“重置令牌”或“复制”以获取您的Bot令牌
    • 将此令牌添加到您的 .env 文件为 DISCORD_BOT_TOKEN
  4. 邀请机器人到您的服务器:

    • 转到“OAuth2”选项卡,然后转到“URL生成器”
    • 在范围下选择“bot”
    • 选择所需权限:
      • 阅读消息/查看频道
      • 发送消息
      • 读取消息历史记录
    • 复制生成的URL并在浏览器中打开
    • 选择您的服务器并授权机器人

特性

  • 直接消息支持:用户可以DM机器人提问
  • Slash命令:使用Discord的斜线命令与机器人交互
    • /ask:向机器人提问
    • /cleardm:清除用户DM中的机器人消息
  • 线程:使用Discord的线程提供更好的用户体验
  • 整合:与Mastra MCP组件无缝集成

项目结构

  • api/index.ts:主要机器人实现和Discord客户端设置
  • scripts/register-commands.ts:注册bot命令
  • scripts/delete-commands.ts:删除bot命令
  • scripts/list-commands.ts:列出bot命令

实现注意事项

服务器由以下组件构建:

  • Discord.js用于Discord集成
  • TypeScript用于类型安全和更好的开发体验
  • 与Mastra MCP组件集成,实现智能响应

对于生产部署,请考虑:

  • 设置适当的日志记录
  • 实施速率限制
  • 添加监控和错误跟踪
  • 设置流程管理器(PM2等)

相关项目