MCP 中继
该 MCP 服务器允许 Claude 向 Discord 频道发送消息和提示并接收回复。
设置说明
1. 创建 Discord 应用程序和机器人
- 前往Discord 开发者门户
- 单击“新建应用程序”并为其命名
- 前往左侧边栏的“机器人”部分
- 在机器人的令牌部分下,单击“重置令牌”并复制新令牌
- 在“特权网关意图”下,启用:
2. 邀请机器人加入你的服务器
- 转到左侧边栏中的“OAuth2”部分
- 选择“URL 生成器”
- 在“范围”下,选择:
- 在“机器人权限”下,选择:
- 复制生成的URL并在浏览器中打开
- 选择您的服务器并授权机器人
3. 获取频道ID
- 在 Discord 中,启用开发者模式:
- 转至用户设置 > 应用程序设置 > 高级
- 开启“开发者模式”
- 右键单击要使用的频道
- 点击“复制频道ID”
4. 配置 MCP 设置
该服务器需要在您的 MCP 设置文件中进行配置。请将以下内容添加到您的配置文件中:
{
"mcpServers": {
"discord-relay": {
"command": "node",
"args": [
"/ABSOLUTE/PATH/TO/MCP Relay/build/index.js"
],
"env": {
"DISCORD_TOKEN": "your_bot_token_here",
"DISCORD_CHANNEL_ID": "your_channel_id_here"
}
}
}
}
代替:
/ABSOLUTE/PATH/TO/MCP Relay
替换为您的 MCP Relay 项目的实际路径your_bot_token_here
是你的 Discord 机器人令牌your_channel_id_here
填写你的 Discord 频道 ID
注意:确保在配置中使用绝对路径。
用法
服务器提供了一个名为send-message
的工具,它接受以下参数:
{
type: 'prompt' | 'notification', // Type of message
title: string, // Message title
content: string, // Message content
actions?: Array<{ // Optional action buttons
label: string, // Button label
value: string // Value returned when clicked
}>,
timeout?: number // Optional timeout in milliseconds
}
消息类型
- 通知:不需要回复的简单消息
{
"type": "notification",
"title": "Hello",
"content": "This is a notification"
}
- 提示:等待响应的消息
{
"type": "prompt",
"title": "Question",
"content": "Do you want to proceed?",
"actions": [
{ "label": "Yes", "value": "yes" },
{ "label": "No", "value": "no" }
],
"timeout": 60000 // Optional: 1 minute timeout
}
笔记:
- 可以通过点击操作按钮或发送短信来回答提示
- 每个提示仅接受一个响应
- 如果指定了超时,则超时后提示将失败
- 通知不会等待响应并立即返回