discord-py-self-mcp

使用说明(Markdown 格式)

  • 项目简介

    • 这是一个基于 MCP(Model Context Protocol)的服务器端实现,专门将 Discord 自助机器人场景下的资源、工具和提示模板等以标准化接口暴露给 LLM 客户端。服务器通过标准的 MCP JSON‑RPC 协议处理请求,支持多种传输方式(如 stdio),并在服务器端管理会话与能力。
  • 主要功能点

    • 资源与数据访问:通过 MCP 机制托管与管理资源,便于 LLM 客户端读取和使用。
    • 工具注册与执行:提供多种工具,LLM 可以通过接口调用外部功能,执行对 Discord 的操作(如发送消息、读取历史、管理成员等)。
    • 提示与模板渲染:通过统一的工具集合与配置,支持提示模板的渲染和对话模式的自定义。
    • JSON‑RPC 通信:遵循 MCP 的请求/响应格式,服务器端返回标准化的 JSON 数据或通知。
    • 本地化服务与会话管理:基于本地 MCP 服务器实现,适用于本地开发、测试和自托管场景。
    • 多传输支持:设计初衷支持如 Stdio、SSE、WebSocket 等传输协议,从而适配不同的前端/客户端环境。
  • 安装步骤

    • 获取代码后确保已满足运行环境(Python 3.10+、必要依赖)。
    • 安装依赖并准备运行入口,运行主模块以启动 MCP 服务器(示例: python3 -m discord_py_self_mcp.main)。
    • 如需使用 npm 包裹的 Python 实现,可通过 npm wrapper 安装并启动对应服务。
  • 服务器配置

    • MCP 客户端需要提供服务器启动信息(至少包含启动命令和参数),以便建立与 MCP 服务器的连接。下面给出符合本仓库信息的示例配置说明(以文本形式呈现,不作为代码块):
    • 服务器名称(server name): discord-py-self
    • 启动命令(command): python3
    • 参数(args): -m discord_py_self_mcp.main
    • 环境变量(env): DISCORD_TOKEN=你的 Discord 令牌(此处需由客户端注入,避免在服务器端硬编码)
    • 说明:该配置会让 MCP 客户端在本地启动 Discord 自助机器人 MCP 服务器,客户端通过环境变量注入 DISCORD_TOKEN,并与 MCP 服务器进行 JSON‑RPC 交互。仓库还提供了其它启动方式(如 npm 封装/本地脚本等),具体选择可结合客户端环境与偏好进行配置。
  • 基本使用方法

    • 启动服务器后,MCP 客户端可通过 JSON‑RPC 请求获取工具列表、调用工具以及获取资源信息。
    • 使用时请确保 DISCORD_TOKEN 正确注入到客户端配置中,服务器端不应直接暴露 token。
    • 通过客户端调用 list_tools/ call_tool 等接口来实现对 Discord 账户的受控操作,注意遵守 Discord 的使用政策与相关条款。

服务器信息