Discordmcp

Discordmcp

🚀 模型上下文协议(MCP)Discord服务器

这是一个模型上下文协议(MCP)服务器,借助Discord的API实现消息的收发功能,允许像Claude这样的大语言模型(LLM)直接与Discord频道进行交互,同时保障用户的控制权和安全性。

🚀 快速开始

此MCP服务器可让LLM与Discord频道交互。使用前,需确保已完成先决条件设置,再按安装步骤操作,最后配置Claude桌面版即可使用。

✨ 主要特性

  • 💬 向Discord频道发送消息。
  • 👀 读取Discord频道的最新消息。
  • 🔍 自动发现服务器和频道。
  • 🆔 支持使用频道名称和ID。
  • ❌ 具备正确的错误处理和验证机制。

📦 安装指南

先决条件

  • Node.js 16.x或更高版本。
  • Discord机器人令牌。
  • 机器人必须以适当的权限邀请到您的服务器:
    • 阅读消息/查看频道
    • 发送消息
    • 阅读消息历史

安装步骤

  1. 克隆此仓库:
git clone https://github.com/yourusername/discordmcp.git
cd discordmcp
  1. 安装依赖项:
npm install
  1. 在根目录创建一个.env文件,包含您的Discord机器人令牌:
DISCORD_TOKEN=your_discord_bot_token_here
  1. 构建服务器:
npm run build

💻 使用示例

使用Claude桌面版

  1. 打开您的Claude桌面版配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 添加Discord MCP服务器配置:

{
"mcpServers": {
"discord": {
"command": "node",
"args": ["path/to/discordmcp/build/index.js"],
"env": {
"DISCORD_TOKEN": "your_discord_bot_token_here"
}
}
}
}
  1. 重启Claude桌面版

可用工具

send - message

向指定的Discord频道发送消息。 参数:

  • server(可选):服务器名称或ID(如果机器人在多个服务器中,则必需)
  • channel:频道名称(例如,“general”)或ID
  • message:要发送的消息内容

示例:

{
"channel": "general",
"message": "来自MCP的问候!"
}

read - messages

读取指定Discord频道的最新消息。 参数:

  • server(可选):服务器名称或ID(如果机器人在多个服务器中,则必需)
  • channel:频道名称(例如,“general”)或ID
  • limit(可选):要获取的消息数量(默认:50,最大:100)

示例:

{
"channel": "general",
"limit": 10
}

与Claude互动示例

以下是设置好Discord MCP服务器后可以尝试与Claude互动的一些示例:

  1. “你能读取通用频道的最后5条消息吗?”
  2. “请向公告频道发送一条消息,内容为‘会议将在10分钟后开始’”
  3. “开发频道关于最新版本的消息中最 recent的是什么?”

Claude将使用适当的工具与Discord交互,并在发送任何消息之前征求您的批准。

🔧 技术细节

开发

  1. 安装开发依赖项:
npm install --save-dev typescript @types/node
  1. 在开发模式下启动服务器:
npm run dev

测试

您可以通过MCP Inspector测试服务器:

npx @modelcontextprotocol/inspector node build/index.js

⚠️ 安全注意事项

  • 机器人需要适当的Discord权限才能运行。
  • 所有消息发送操作都需要明确的用户批准。
  • 环境变量应妥善保管。
  • 令牌绝不能提交到版本控制。
  • 频道访问仅限于机器人已获得访问权限的频道。

🤝 贡献

  1. 叉仓库。
  2. 创建功能分支(git checkout -b feature/amazing-feature)。
  3. 提交更改(git commit -m '添加一些惊人的功能')。
  4. 推送到分支(git push origin feature/amazing-feature)。
  5. 打开Pull Request。

📄 许可证

此项目根据MIT许可证发布,详细信息请参阅LICENSE文件。

🛠️ 支持

如果您遇到任何问题或有疑问:

  1. 检查GitHub Issues部分。
  2. 咨询MCP文档https://modelcontextprotocol.io。
  3. 使用详细的重现步骤打开新问题。
  • 0 关注
  • 0 收藏,28 浏览
  • system 提出于 2025-10-03 15:06

相似服务问题

相关AI产品