DJ Claude MCP 服务器
使用说明
项目简介
DJ Claude 的 MCP 服务器端实现,允许多代理/多客户端通过 MCP 进行资源读取、工具执行和提示模板渲染,以标准化的 JSON-RPC 方式与客户端通信,支持多传输通道(如 Stdio、SSE、WebSocket/HTTP 传输)。
主要功能点
- 注册并暴露大量音乐相关的 MCP 工具(如 play_music、jam、conduct、mix_analysis、now_playing 等)以及 MCP 资源(Strudel 参考、角色指南、示例等)。
- 资源与工具的统一管理:资源用于学习与参考,工具用于操作音序、混音与合成。
- 提供多传输协议支持:标准输入输出(STDIO) 与 HTTP/WebSocket 等,方便不同运行环境的客户端接入。
- 会话与状态管理:维护层(Layer)、上下文(Coding Context)、快照等状态,确保多人协作的一致性。
- Keyless 与 AI 辅助两种工作流:在无Anthropic API Key时,直接使用内置 Preset/层生成功能;在有Key时可通过 Claude 生成并合成音乐。
- 提供 MCP 资源供代理学习 Strudel 语法,并通过工具直接调用/查询。
安装与运行步骤
- 本地安装依赖并启动 MCP 服务:
- 通过 STDIO 启动:npx dj-claude-mcp
- 通过 HTTP 启动(多代理 Jam 会话):npx dj-claude-mcp-http
- 如需浏览器音频后端,请在命令中或环境变量中启用浏览器模式(DJ_CLAUDE_BROWSER=1 或 --browser 选项)。
- 运行时可选配置端口(HTTP 服务器)通过环境变量 DJ_CLAUDE_PORT 指定,例如 4321。
服务器配置(MCP 客户端连接信息)
以下 JSON 配置示例,描述 MCP 服务端的启动信息,供 MCP 客户端在项目中注册连接: { "serverName": "dj-claude-http", "command": "npx", "args": ["-y", "dj-claude-mcp-http"], "env": { "DJ_CLAUDE_PORT": "4321" } // 备注:如要使用 STDIO 传输,请将 serverName 替换为 dj-claude-stdio,并把 args 改为 ["-y", "dj-claude-mcp"] } 说明:
- serverName:MCP 服务器在本地或项目中的唯一标识名称。
- command:启动命令,这里使用 npm 运行的 npx。
- args:启动参数,指向对应的 MCP 服务实现脚本。
- env:可选的环境变量配置,示例中设置了 HTTP 服务端口。
- 客户端实际连接时需按各自 MCP 客户端的配置格式引用该服务器信息,JSON 仅为可读示例。
基本使用方法
- 启动 MCP 服务器(HTTP 版本示例):
- npx dj-claude-mcp-http
- 在 MCP 客户端(如 Cursor、Windsurf、Zed 等)中注册服务器,使用上面的连接信息:
- serverName: dj-claude-http
- type: http
- url: http://127.0.0.1:4321/mcp
- 客户端通过 MCP JSON-RPC 向服务器请求资源、调用工具、获取提示模板等,并接收服务器返回的 JSON-RPC 响应或通知。
- 如需多代理音乐协作,确保所有客户端使用同一音频引擎实例(在 HTTP 场景下由同一个后端服务实例提供音频引擎)。
- 浏览器音频优先级:如需要更高音质,请在启动时开启浏览器音频后端,或在运行时通过 DJ_CLAUDE_BROWSER=1 环境变量开启。
配置与使用要点
- 服务器可提供对 Strudel 资源、工具及提示模板的访问,代理可以直接调用工具或读取资源,形成多代理协作的音频合成场景。
- MCP 服务器端负责会话管理、能力声明以及对多种传输协议的支持,确保 LLM 客户端与后端之间的安全、可扩展通信。
关键词
实时音频合成, 多代理协作, Strudel 参考, JSON-RPC, 音乐工作流
<category_id>6</category_id>