record_safer_pro_mcp 1.0.32 → 1.0.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +355 -30
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Record Safer Pro MCP
2
2
 
3
+ Language: [中文](#zh-cn) | [English](#english)
4
+
5
+ <a id="zh-cn"></a>
6
+ ## 中文
7
+
3
8
  Record Safer Pro 的官方 MCP Server。它让具备本机执行能力的 AI 客户端,可以直接接入专业多通道录音工作流,完成设备发现、录音准备、开始/停止录音、通道调整、标记管理等核心操作。
4
9
 
5
10
  由 **DADAO 大道声学(北京大道创响科技有限公司)** 开发。
@@ -13,20 +18,20 @@ Record Safer Pro 的官方 MCP Server。它让具备本机执行能力的 AI 客
13
18
  >
14
19
  > 对大多数用户,这就是最快、最稳妥、最接近“零配置”的安装方式。
15
20
 
16
- ## 为什么优先用 `INSTALL_AI.md`
21
+ ### 为什么优先用 `INSTALL_AI.md`
17
22
 
18
23
  `INSTALL_AI.md` 不是一份给人手动照着点的普通说明书,而是一份为 AI Agent 编写的可执行安装指令。它的设计目标很明确:让 AI 在尽量少打扰用户的前提下,完成一次可靠、选择性、可验证的 MCP 接入。
19
24
 
20
25
  它会指导 AI:
21
26
 
22
- - 先识别你当前正在使用的客户端,而不是对所有平台一股脑写配置。
23
- - 统一使用 `npx -y record_safer_pro_mcp@latest`,避免全局安装、PATH、缓存版本不一致等常见问题。
24
- - 对 JSON 配置做结构化合并,尽量不破坏现有配置。
25
- - 在安装完成后执行 `--doctor` 做有效性验证,而不是只停留在“看起来写进去了”。
27
+ - 先识别你当前正在使用的客户端,而不是对所有平台一股脑写配置
28
+ - 统一使用 `npx -y record_safer_pro_mcp@latest`,避免全局安装、PATH、缓存版本不一致等常见问题
29
+ - 对 JSON 配置做结构化合并,尽量不破坏现有配置
30
+ - 在安装完成后执行 `--doctor` 做有效性验证,而不是只停留在“看起来写进去了”
26
31
 
27
32
  如果你的 AI 具备本机命令执行和文件写入能力,这种方式通常比人工逐项配置更快,也更不容易出错。
28
33
 
29
- ## 适用对象
34
+ ### 适用对象
30
35
 
31
36
  这种 AI 直装方式适用于:
32
37
 
@@ -43,15 +48,15 @@ Record Safer Pro 的官方 MCP Server。它让具备本机执行能力的 AI 客
43
48
  - 已安装并可启动 Record Safer Pro 桌面应用
44
49
  - 你使用的 AI Agent 具备本机终端执行和本地配置文件修改能力
45
50
 
46
- ## 标准使用方式
51
+ ### 标准使用方式
47
52
 
48
53
  最推荐的做法只有两步:
49
54
 
50
- ### 1. 把安装说明直接喂给 AI
55
+ #### 1. 把安装说明直接喂给 AI
51
56
 
52
57
  打开 [`INSTALL_AI.md`](./INSTALL_AI.md),将全文粘贴给你的 AI Agent。
53
58
 
54
- ### 2. 追加一句明确指令
59
+ #### 2. 追加一句明确指令
55
60
 
56
61
  可以直接使用下面这段话:
57
62
 
@@ -67,17 +72,17 @@ Record Safer Pro 的官方 MCP Server。它让具备本机执行能力的 AI 客
67
72
 
68
73
  这套方式的核心价值不是“让用户少看文档”,而是把安装本身变成一项可以交付给 AI 的标准化动作。
69
74
 
70
- ## AI 安装完成后应有的结果
75
+ ### AI 安装完成后应有的结果
71
76
 
72
77
  一个合格的安装结果,通常会同时满足以下几点:
73
78
 
74
- - AI 只修改了与你当前环境相关的 MCP 配置文件。
75
- - MCP 启动命令统一为 `npx -y record_safer_pro_mcp@latest`。
76
- - 需要重启或 reload 的客户端,AI 已明确提示你执行。
77
- - `npx -y record_safer_pro_mcp@latest --doctor` 返回成功结果。
78
- - Record Safer Pro 桌面应用可以被正常发现,且无需手动填写本地端口。
79
+ - AI 只修改了与你当前环境相关的 MCP 配置文件
80
+ - MCP 启动命令统一为 `npx -y record_safer_pro_mcp@latest`
81
+ - 需要重启或 reload 的客户端,AI 已明确提示你执行
82
+ - `npx -y record_safer_pro_mcp@latest --doctor` 返回成功结果
83
+ - Record Safer Pro 桌面应用可以被正常发现,且无需手动填写本地端口
79
84
 
80
- ## 手动配置
85
+ ### 手动配置
81
86
 
82
87
  只有在你的 AI 无法直接改本机文件,或者你明确希望人工接入时,才建议使用手动方式。
83
88
 
@@ -134,7 +139,7 @@ OpenCode 使用的结构略有不同:
134
139
 
135
140
  更完整的平台级安装细节,直接参考 [`INSTALL_AI.md`](./INSTALL_AI.md)。
136
141
 
137
- ## 安装验证
142
+ ### 安装验证
138
143
 
139
144
  不要把终端里运行 `npx -y record_safer_pro_mcp@latest` 后“没有输出”误判为失败。
140
145
 
@@ -152,7 +157,7 @@ npx -y record_safer_pro_mcp@latest --doctor
152
157
 
153
158
  如果这两个命令正常,说明安装链路和启动链路基本可用。
154
159
 
155
- ## 运行机制
160
+ ### 运行机制
156
161
 
157
162
  当前默认接入方式是本地 `stdio`。
158
163
 
@@ -168,7 +173,7 @@ npx -y record_safer_pro_mcp@latest --doctor
168
173
  - macOS 下,部分非只读控制操作在后端暂时不可达时,会尝试自动拉起桌面应用
169
174
  - 只读查询工具更适合在桌面应用已打开的前提下使用
170
175
 
171
- ## 能力范围
176
+ ### 能力范围
172
177
 
173
178
  当前 MCP Server 聚焦高频核心录音能力,适合在实际录音现场由 AI 协助完成以下工作:
174
179
 
@@ -189,15 +194,15 @@ npx -y record_safer_pro_mcp@latest --doctor
189
194
  - 存储管理
190
195
  - 文件分割等扩展功能
191
196
 
192
- ## 关键行为边界
197
+ ### 关键行为边界
193
198
 
194
199
  为了让 AI 在录音流程中表现稳定,以下语义边界很重要:
195
200
 
196
- - `start_record_mcp` 的职责是打开录音界面并准备本次会话,不等于真正开始录音。
197
- - 真正开始录音需要后续显式调用 `start_recording`。
198
- - 如果 `get_status` 已返回 `ready=true`,应优先沿用当前已准备好的会话,而不是重复初始化。
199
- - 如果你没有指定声卡,AI 应先调用 `list_audio_devices`,再让你选择。
200
- - 如果你没有指定通道,默认使用所选声卡的全部输入通道。
201
+ - `start_record_mcp` 的职责是打开录音界面并准备本次会话,不等于真正开始录音
202
+ - 真正开始录音需要后续显式调用 `start_recording`
203
+ - 如果 `get_status` 已返回 `ready=true`,应优先沿用当前已准备好的会话,而不是重复初始化
204
+ - 如果你没有指定声卡,AI 应先调用 `list_audio_devices`,再让你选择
205
+ - 如果你没有指定通道,默认使用所选声卡的全部输入通道
201
206
 
202
207
  默认录音设置为:
203
208
 
@@ -207,7 +212,7 @@ npx -y record_safer_pro_mcp@latest --doctor
207
212
  - 安全模式
208
213
  - `~/Desktop`
209
214
 
210
- ## 使用示例
215
+ ### 使用示例
211
216
 
212
217
  安装完成后,可以直接让 AI 这样操作:
213
218
 
@@ -219,7 +224,7 @@ npx -y record_safer_pro_mcp@latest --doctor
219
224
  - “在当前位置添加一个标记,命名为‘第二段’”
220
225
  - “停止录音”
221
226
 
222
- ## 本地开发与离线模式
227
+ ### 本地开发与离线模式
223
228
 
224
229
  如果你在本地开发 `record_safer_mcp`,或者所处环境无法使用 npm 在线拉取包,可以直接指向本地 `dist/index.js`:
225
230
 
@@ -256,7 +261,7 @@ node /absolute/path/to/record_safer_mcp/dist/index.js
256
261
  }
257
262
  ```
258
263
 
259
- ## Streamable HTTP 远程模式
264
+ ### Streamable HTTP 远程模式
260
265
 
261
266
  当前代码也支持可选的 `streamable-http` 传输,适用于 OpenAI Developer Mode 或需要远程暴露 MCP 的场景。
262
267
 
@@ -288,7 +293,7 @@ npx -y record_safer_pro_mcp@latest
288
293
  - 对公网客户端暴露时,必须通过 HTTPS 反向代理对外提供服务
289
294
  - 如果 `RECORD_SAFER_URL` 指向非回环地址,默认不会把本机 `~/.record_safer/auth_token` 自动发送到远端
290
295
 
291
- ## 常见问题
296
+ ### 常见问题
292
297
 
293
298
  **Q: AI 提示无法连接 Record Safer Pro?**
294
299
 
@@ -317,4 +322,324 @@ npx -v
317
322
 
318
323
  ---
319
324
 
320
- Copyright © DADAO 大道声学(北京大道创响科技有限公司)
325
+ <a id="english"></a>
326
+ ## English
327
+
328
+ The official MCP server for Record Safer Pro. It allows AI clients with local execution capability to connect directly to a professional multichannel recording workflow and handle core tasks such as device discovery, recording preparation, start/stop recording, channel control, and marker management.
329
+
330
+ Built by **DADAO Audio (Beijing Dadao Chuangxiang Technology Co., Ltd.)**.
331
+ Website: [www.dadaoaudio.com](https://www.dadaoaudio.com)
332
+
333
+ > **Recommended installation path: AI Direct Install**
334
+ >
335
+ > Send the full contents of [`INSTALL_AI.md`](./INSTALL_AI.md) directly to your AI agent, then add this instruction:
336
+ >
337
+ > `Please install Record Safer Pro MCP based on this guide, configure only the client I currently use, run doctor after setup, and tell me the result.`
338
+ >
339
+ > For most users, this is the fastest, safest, and closest-to-zero-config installation path.
340
+
341
+ ### Why `INSTALL_AI.md` Comes First
342
+
343
+ `INSTALL_AI.md` is not a conventional step-by-step document written for manual setup. It is an executable installation brief written for AI agents. Its purpose is clear: let AI complete a reliable, selective, and verifiable MCP setup with minimal user interruption.
344
+
345
+ It tells the AI to:
346
+
347
+ - detect the client you actually use instead of writing configuration for every platform
348
+ - standardize on `npx -y record_safer_pro_mcp@latest` to avoid global install issues, PATH problems, and stale cached versions
349
+ - merge JSON configuration safely instead of overwriting or breaking existing files
350
+ - run `--doctor` after setup so installation is verified, not just "apparently written"
351
+
352
+ If your AI can run local commands and edit local files, this approach is usually faster and more reliable than manual configuration.
353
+
354
+ ### Who This Is For
355
+
356
+ This AI-driven installation flow is designed for:
357
+
358
+ - Claude Code
359
+ - Cursor
360
+ - Gemini CLI
361
+ - OpenCode
362
+ - Kiro
363
+ - Windsurf
364
+
365
+ Prerequisites:
366
+
367
+ - Node.js `>= 18` is installed
368
+ - The Record Safer Pro desktop application is installed and can be launched
369
+ - Your AI agent has permission to run local terminal commands and edit local configuration files
370
+
371
+ ### Recommended Workflow
372
+
373
+ The recommended setup has only two steps.
374
+
375
+ #### 1. Feed the installation guide directly to AI
376
+
377
+ Open [`INSTALL_AI.md`](./INSTALL_AI.md) and paste the full file into your AI agent.
378
+
379
+ #### 2. Add an explicit execution instruction
380
+
381
+ You can use this exact prompt:
382
+
383
+ ```text
384
+ Please install Record Safer Pro MCP based on this INSTALL_AI.md.
385
+ Requirements:
386
+ 1. Configure only the AI client I currently use or already have installed.
387
+ 2. Do not modify configuration for platforms I do not use.
388
+ 3. Use npx -y record_safer_pro_mcp@latest consistently.
389
+ 4. Keep all edited JSON files valid.
390
+ 5. Run --doctor after installation and tell me the result.
391
+ ```
392
+
393
+ The value of this workflow is not merely that the user reads less documentation. The real value is that installation becomes a standardized task that can be delegated to AI and executed consistently.
394
+
395
+ ### What a Successful AI Installation Looks Like
396
+
397
+ A good installation outcome should usually meet all of the following:
398
+
399
+ - the AI edits only MCP configuration files relevant to your actual environment
400
+ - the launch command is standardized as `npx -y record_safer_pro_mcp@latest`
401
+ - any required restart or reload step is clearly communicated
402
+ - `npx -y record_safer_pro_mcp@latest --doctor` completes successfully
403
+ - the Record Safer Pro desktop app is discovered automatically without manual port configuration
404
+
405
+ ### Manual Setup
406
+
407
+ Manual setup is recommended only when your AI cannot modify local files directly or when you explicitly want to wire it by hand.
408
+
409
+ The current npm package name and CLI command are:
410
+
411
+ ```bash
412
+ record_safer_pro_mcp
413
+ ```
414
+
415
+ Recommended standard command:
416
+
417
+ ```bash
418
+ npx -y record_safer_pro_mcp@latest
419
+ ```
420
+
421
+ Common integration points:
422
+
423
+ | Client | Common config location | Integration method |
424
+ | --- | --- | --- |
425
+ | Gemini CLI | command line | `gemini mcp add record-safer-pro --scope user npx -y record_safer_pro_mcp@latest` |
426
+ | Claude Desktop | `~/Library/Application Support/Claude/claude_desktop_config.json` | add `record-safer-pro` under `mcpServers` |
427
+ | Cursor | `~/.cursor/mcp.json` or project `.cursor/mcp.json` | add `record-safer-pro` under `mcpServers` |
428
+ | Windsurf | `~/.codeium/windsurf/mcp_config.json` | add `record-safer-pro` under `mcpServers` |
429
+ | Kiro | `~/.kiro/settings/mcp.json` or project `.kiro/settings/mcp.json` | add `record-safer-pro` under `mcpServers` |
430
+ | OpenCode | `~/.config/opencode/opencode.json(.jsonc)`, project `opencode.json`, or `.mcp.json` | add `record-safer-pro` under `mcp` |
431
+
432
+ Standard `stdio` shape:
433
+
434
+ ```json
435
+ {
436
+ "mcpServers": {
437
+ "record-safer-pro": {
438
+ "command": "npx",
439
+ "args": ["-y", "record_safer_pro_mcp@latest"]
440
+ }
441
+ }
442
+ }
443
+ ```
444
+
445
+ OpenCode uses a slightly different structure:
446
+
447
+ ```json
448
+ {
449
+ "$schema": "https://opencode.ai/config.json",
450
+ "mcp": {
451
+ "record-safer-pro": {
452
+ "type": "local",
453
+ "command": ["npx", "-y", "record_safer_pro_mcp@latest"],
454
+ "enabled": true
455
+ }
456
+ }
457
+ }
458
+ ```
459
+
460
+ For full platform-specific installation details, refer to [`INSTALL_AI.md`](./INSTALL_AI.md).
461
+
462
+ ### Installation Verification
463
+
464
+ Do not treat "no output" from `npx -y record_safer_pro_mcp@latest` as an installation failure.
465
+
466
+ By default, the server starts in `stdio` mode and waits for the client to attach, so the terminal may appear to hang. The correct way to validate installation is:
467
+
468
+ ```bash
469
+ npx -y record_safer_pro_mcp@latest --version
470
+ npx -y record_safer_pro_mcp@latest --doctor
471
+ ```
472
+
473
+ Expected behavior:
474
+
475
+ - `--version` prints the installed version
476
+ - `--doctor` prints diagnostic JSON
477
+
478
+ If both commands succeed, the install and startup path is generally working.
479
+
480
+ ### How It Works
481
+
482
+ The default integration mode is local `stdio`.
483
+
484
+ The server automatically discovers the local Record Safer Pro backend address and auth token, so manual port input is not required in the normal local workflow. For most users, installation is followed by only three actions:
485
+
486
+ - launch the Record Safer Pro desktop app
487
+ - restart or reload your AI client
488
+ - start using natural-language recording commands
489
+
490
+ Current runtime behavior:
491
+
492
+ - local port and auth token are discovered automatically from `~/.record_safer`
493
+ - on macOS, some non-read-only control actions may attempt to auto-launch the desktop app if the backend is temporarily unavailable
494
+ - read-only inspection tools work best when the desktop app is already running
495
+
496
+ ### Capability Scope
497
+
498
+ The current MCP server is intentionally focused on high-frequency recording tasks that are practical during real sessions:
499
+
500
+ | Category | Capability |
501
+ | --- | --- |
502
+ | Pre-record setup | preview setup, confirm setup, open recording screen |
503
+ | Device discovery | list currently available audio input devices |
504
+ | Recording control | start recording, stop recording, scheduled start, scheduled stop, cancel schedule |
505
+ | Recording status | retrieve channels, mix, health, and minimal status |
506
+ | Channel operations | rename channel, set color, volume, pan, solo, mute, phase invert |
507
+ | In-session management | add markers, list tracks, list markers, rename markers |
508
+
509
+ Only 24 high-frequency core tools are exposed at this time. The following capabilities are intentionally not exposed through MCP:
510
+
511
+ - system settings
512
+ - updates
513
+ - activation
514
+ - storage management
515
+ - extended features such as file splitting
516
+
517
+ ### Important Behavioral Boundaries
518
+
519
+ To keep AI behavior stable in real recording workflows, these semantics matter:
520
+
521
+ - `start_record_mcp` prepares the recording session and opens the recording screen; it does not actually start recording
522
+ - actual recording still requires an explicit `start_recording` step
523
+ - if `get_status` already returns `ready=true`, the existing prepared session should be reused rather than reinitialized
524
+ - if no audio device is specified, the AI should call `list_audio_devices` first and let the user choose
525
+ - if no channels are specified, the default is all input channels of the selected device
526
+
527
+ Default recording settings:
528
+
529
+ - the selected interface's current or default sample rate
530
+ - `24-bit`
531
+ - `wav`
532
+ - safe mode
533
+ - `~/Desktop`
534
+
535
+ ### Example Prompts
536
+
537
+ After setup, you can instruct AI with prompts like:
538
+
539
+ - "Use RME Babyface on channels 1-4, WAV, default 48k/24-bit, Desktop path, and prepare the recording screen for me."
540
+ - "List the currently available audio devices first. I'll choose one, then prepare recording with the default settings."
541
+ - "Start recording in 5 minutes and stop automatically 30 minutes later."
542
+ - "Check the current recording health status."
543
+ - "I'm already on the recording screen. Mute channel 3."
544
+ - "Add a marker here and name it Second Segment."
545
+ - "Stop recording."
546
+
547
+ ### Local Development and Offline Mode
548
+
549
+ If you are developing `record_safer_mcp` locally, or if your environment cannot fetch the npm package online, point the client directly to the local `dist/index.js`:
550
+
551
+ ```bash
552
+ node /absolute/path/to/record_safer_mcp/dist/index.js
553
+ ```
554
+
555
+ Claude Desktop example:
556
+
557
+ ```json
558
+ {
559
+ "mcpServers": {
560
+ "record-safer-pro": {
561
+ "command": "node",
562
+ "args": ["/absolute/path/to/record_safer_mcp/dist/index.js"]
563
+ }
564
+ }
565
+ }
566
+ ```
567
+
568
+ If you explicitly want to override the backend target, add environment variables such as:
569
+
570
+ ```json
571
+ {
572
+ "mcpServers": {
573
+ "record-safer-pro": {
574
+ "command": "node",
575
+ "args": ["/absolute/path/to/record_safer_mcp/dist/index.js"],
576
+ "env": {
577
+ "RECORD_SAFER_URL": "http://127.0.0.1:your-port"
578
+ }
579
+ }
580
+ }
581
+ }
582
+ ```
583
+
584
+ ### Streamable HTTP Remote Mode
585
+
586
+ The current codebase also supports optional `streamable-http` transport for OpenAI Developer Mode and other remote MCP deployment scenarios.
587
+
588
+ Default environment variables:
589
+
590
+ - `RECORD_SAFER_MCP_TRANSPORT=stdio`
591
+ - `RECORD_SAFER_MCP_HTTP_HOST=127.0.0.1`
592
+ - `RECORD_SAFER_MCP_HTTP_PORT=3010`
593
+ - `RECORD_SAFER_MCP_HTTP_PATH=/mcp`
594
+
595
+ Example:
596
+
597
+ ```bash
598
+ RECORD_SAFER_MCP_TRANSPORT=streamable-http \
599
+ RECORD_SAFER_MCP_HTTP_HOST=127.0.0.1 \
600
+ RECORD_SAFER_MCP_HTTP_PORT=3010 \
601
+ npx -y record_safer_pro_mcp@latest
602
+ ```
603
+
604
+ Default endpoints after launch:
605
+
606
+ - MCP: `http://127.0.0.1:3010/mcp`
607
+ - Health: `http://127.0.0.1:3010/healthz`
608
+
609
+ Security constraints:
610
+
611
+ - if `RECORD_SAFER_MCP_HTTP_HOST` is set to a non-loopback address such as `0.0.0.0`, you must also set `RECORD_SAFER_MCP_HTTP_BEARER_TOKEN`
612
+ - you may optionally restrict allowed hosts with `RECORD_SAFER_MCP_HTTP_ALLOWED_HOSTS`
613
+ - if exposed publicly, the service should be placed behind HTTPS reverse proxying
614
+ - if `RECORD_SAFER_URL` points to a non-loopback target, the local `~/.record_safer/auth_token` is not forwarded automatically by default
615
+
616
+ ### FAQ
617
+
618
+ **Q: The AI says it cannot connect to Record Safer Pro. What should I check?**
619
+
620
+ First make sure the Record Safer Pro desktop app is already running and fully initialized. MCP depends on the local recording service and auth token. If the issue persists, restart the AI client and try again.
621
+
622
+ **Q: `npx` is not found. What does that mean?**
623
+
624
+ You need Node.js `>= 18`. After installation, confirm:
625
+
626
+ ```bash
627
+ node -v
628
+ npx -v
629
+ ```
630
+
631
+ **Q: I ran `npx -y record_safer_pro_mcp@latest` in a terminal and it produced no output. Did installation fail?**
632
+
633
+ No. The default behavior is to start a waiting `stdio` server for the MCP client. Use `--version` and `--doctor` for validation instead of assuming a hang means failure.
634
+
635
+ **Q: Do I normally need to configure ports manually?**
636
+
637
+ No. Local ports and tokens are discovered automatically in the normal setup. You only need `RECORD_SAFER_URL` if you intentionally override the backend target.
638
+
639
+ **Q: Why does this README keep emphasizing sending `INSTALL_AI.md` directly to AI?**
640
+
641
+ Because that is the most realistic user path for this product. Compared with manual configuration, it is more standardized, more repeatable, and better suited to product delivery and support.
642
+
643
+ ---
644
+
645
+ Copyright © DADAO Audio (Beijing Dadao Chuangxiang Technology Co., Ltd.)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "record_safer_pro_mcp",
3
- "version": "1.0.32",
3
+ "version": "1.0.33",
4
4
  "description": "Record Safer Pro MCP Server — 专业多通道录音工作流 AI 控制接口 / AI control interface for professional multichannel recording workflows",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",