record-safer-mcp-server 1.0.0

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 (58) hide show
  1. package/README.md +67 -0
  2. package/dist/api-client.d.ts +110 -0
  3. package/dist/api-client.d.ts.map +1 -0
  4. package/dist/api-client.js +353 -0
  5. package/dist/api-client.js.map +1 -0
  6. package/dist/index.d.ts +7 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +35 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/prompts/index.d.ts +7 -0
  11. package/dist/prompts/index.d.ts.map +1 -0
  12. package/dist/prompts/index.js +91 -0
  13. package/dist/prompts/index.js.map +1 -0
  14. package/dist/resources/index.d.ts +7 -0
  15. package/dist/resources/index.d.ts.map +1 -0
  16. package/dist/resources/index.js +49 -0
  17. package/dist/resources/index.js.map +1 -0
  18. package/dist/tools/devices.d.ts +7 -0
  19. package/dist/tools/devices.d.ts.map +1 -0
  20. package/dist/tools/devices.js +26 -0
  21. package/dist/tools/devices.js.map +1 -0
  22. package/dist/tools/levels.d.ts +7 -0
  23. package/dist/tools/levels.d.ts.map +1 -0
  24. package/dist/tools/levels.js +18 -0
  25. package/dist/tools/levels.js.map +1 -0
  26. package/dist/tools/markers.d.ts +7 -0
  27. package/dist/tools/markers.d.ts.map +1 -0
  28. package/dist/tools/markers.js +36 -0
  29. package/dist/tools/markers.js.map +1 -0
  30. package/dist/tools/monitor.d.ts +7 -0
  31. package/dist/tools/monitor.d.ts.map +1 -0
  32. package/dist/tools/monitor.js +48 -0
  33. package/dist/tools/monitor.js.map +1 -0
  34. package/dist/tools/recording.d.ts +7 -0
  35. package/dist/tools/recording.d.ts.map +1 -0
  36. package/dist/tools/recording.js +36 -0
  37. package/dist/tools/recording.js.map +1 -0
  38. package/dist/tools/settings.d.ts +7 -0
  39. package/dist/tools/settings.d.ts.map +1 -0
  40. package/dist/tools/settings.js +33 -0
  41. package/dist/tools/settings.js.map +1 -0
  42. package/dist/tools/storage.d.ts +7 -0
  43. package/dist/tools/storage.d.ts.map +1 -0
  44. package/dist/tools/storage.js +21 -0
  45. package/dist/tools/storage.js.map +1 -0
  46. package/dist/tools/system.d.ts +7 -0
  47. package/dist/tools/system.d.ts.map +1 -0
  48. package/dist/tools/system.js +47 -0
  49. package/dist/tools/system.js.map +1 -0
  50. package/dist/types.d.ts +196 -0
  51. package/dist/types.d.ts.map +1 -0
  52. package/dist/types.js +4 -0
  53. package/dist/types.js.map +1 -0
  54. package/dist/utils.d.ts +20 -0
  55. package/dist/utils.d.ts.map +1 -0
  56. package/dist/utils.js +29 -0
  57. package/dist/utils.js.map +1 -0
  58. package/package.json +35 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/tools/system.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,196 @@
1
+ export interface DeviceInfo {
2
+ id: string;
3
+ name: string;
4
+ channels: number;
5
+ sampleRates: number[];
6
+ defaultSampleRate: number;
7
+ channelLabels?: string[];
8
+ }
9
+ export interface BufferSizeInfo {
10
+ sizes: number[];
11
+ current: number;
12
+ }
13
+ export interface SignalInfo {
14
+ deviceId: string;
15
+ signals: Record<string, number>;
16
+ }
17
+ export interface LevelData {
18
+ levels: Record<string, number>;
19
+ }
20
+ export interface SessionConfig {
21
+ deviceId: string;
22
+ sampleRate: number;
23
+ bitDepth: "16-bit" | "24-bit" | "32-bit Float";
24
+ channels: number[];
25
+ outputPath: string;
26
+ audioFormat: "wav" | "caf";
27
+ }
28
+ export interface SessionResult {
29
+ success: boolean;
30
+ sessionId: string;
31
+ healthCheck?: {
32
+ deviceAlive: boolean;
33
+ clockSource: string;
34
+ bufferHealth: string;
35
+ };
36
+ }
37
+ export interface RecordingOptions {
38
+ safeMode?: boolean;
39
+ }
40
+ export interface RecordingStartResult {
41
+ success: boolean;
42
+ message: string;
43
+ startTime: string;
44
+ }
45
+ export interface RecordingStopResult {
46
+ success: boolean;
47
+ duration: number;
48
+ files: string[];
49
+ totalSize: string;
50
+ }
51
+ export interface RecordingStatus {
52
+ recording: boolean;
53
+ duration: number;
54
+ cpuLoad: number;
55
+ coreaudioCpuLoad: number;
56
+ bufferUsage: number;
57
+ bufferHealth: string;
58
+ diskFreeGB: number;
59
+ deviceHealth: {
60
+ alive: boolean;
61
+ running: boolean;
62
+ sampleRate: number;
63
+ clockSource: string;
64
+ };
65
+ powerStatus: {
66
+ hasBattery: boolean;
67
+ isOnAcPower: boolean;
68
+ batteryLevel: number;
69
+ };
70
+ alerts: string[];
71
+ }
72
+ export interface OutputPathInfo {
73
+ path: string;
74
+ }
75
+ export interface AudioFormatInfo {
76
+ format: string;
77
+ sampleRate: number;
78
+ bitDepth: string;
79
+ }
80
+ export interface AudioFormatConfig {
81
+ format?: "wav" | "caf";
82
+ sampleRate?: number;
83
+ bitDepth?: "16-bit" | "24-bit" | "32-bit Float";
84
+ }
85
+ export interface Settings {
86
+ [key: string]: unknown;
87
+ }
88
+ export interface MonitorStatus {
89
+ active: boolean;
90
+ masterVolume: number;
91
+ masterPan: number;
92
+ }
93
+ export interface MixLevels {
94
+ channels: Array<{
95
+ index: number;
96
+ volume: number;
97
+ pan: number;
98
+ solo: boolean;
99
+ mute: boolean;
100
+ }>;
101
+ }
102
+ export interface TrackInfo {
103
+ id: string;
104
+ name: string;
105
+ status: string;
106
+ }
107
+ export interface MarkerInfo {
108
+ id: number;
109
+ label: string;
110
+ timestamp: number;
111
+ }
112
+ export interface MarkerResult {
113
+ success: boolean;
114
+ markerId: number;
115
+ timestamp: number;
116
+ }
117
+ export interface VolumeInfo {
118
+ name: string;
119
+ path: string;
120
+ totalGB: number;
121
+ freeGB: number;
122
+ }
123
+ export interface DriveInfo {
124
+ name: string;
125
+ path: string;
126
+ type: string;
127
+ totalGB: number;
128
+ freeGB: number;
129
+ }
130
+ export interface ValidationResult {
131
+ valid: boolean;
132
+ message?: string;
133
+ }
134
+ export interface SystemInfo {
135
+ version: string;
136
+ platform: string;
137
+ arch: string;
138
+ isActivated: boolean;
139
+ backendPort: number;
140
+ }
141
+ export interface DiskSpaceInfo {
142
+ totalGB: number;
143
+ freeGB: number;
144
+ usedGB: number;
145
+ }
146
+ export interface DiskHealthResult {
147
+ healthy: boolean;
148
+ details: string;
149
+ }
150
+ export interface UpdateInfo {
151
+ available: boolean;
152
+ version?: string;
153
+ releaseNotes?: string;
154
+ }
155
+ export interface UpdateBadge {
156
+ show: boolean;
157
+ version?: string;
158
+ }
159
+ export interface DownloadProgress {
160
+ downloading: boolean;
161
+ percent: number;
162
+ bytesDownloaded: number;
163
+ totalBytes: number;
164
+ }
165
+ export interface ActivationResult {
166
+ success: boolean;
167
+ message: string;
168
+ }
169
+ export interface ActivationStatus {
170
+ activated: boolean;
171
+ licenseKey?: string;
172
+ expiresAt?: string;
173
+ }
174
+ export interface ActivationData {
175
+ [key: string]: unknown;
176
+ }
177
+ export interface RestoreResult {
178
+ success: boolean;
179
+ message: string;
180
+ }
181
+ export interface SplitParams {
182
+ [key: string]: unknown;
183
+ }
184
+ export interface SplitResult {
185
+ success: boolean;
186
+ message: string;
187
+ }
188
+ export interface SplitProgress {
189
+ running: boolean;
190
+ percent: number;
191
+ }
192
+ export interface TelemetryData {
193
+ [key: string]: unknown;
194
+ }
195
+ export type PermissionLevel = "read" | "write" | "recording_control";
196
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,4 @@
1
+ // Record Safer MCP Server — TypeScript 类型定义
2
+ // 所有 Backend API 请求/响应类型和工具参数类型
3
+ export {};
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,gCAAgC"}
@@ -0,0 +1,20 @@
1
+ import type { PermissionLevel } from "./types.js";
2
+ export interface ToolResult {
3
+ [x: string]: unknown;
4
+ content: Array<{
5
+ type: "text";
6
+ text: string;
7
+ }>;
8
+ isError?: boolean;
9
+ }
10
+ /**
11
+ * 审计日志:输出到 stderr,不干扰 stdio 传输的 stdout 通道
12
+ */
13
+ export declare function logToolCall(toolName: string, permissionLevel: string): void;
14
+ /**
15
+ * 统一 tool 调用包装:审计日志 + try/catch + 格式化响应
16
+ * - 成功:返回 JSON 格式文本内容
17
+ * - 失败:返回 isError: true 和中文错误信息
18
+ */
19
+ export declare function handleToolCall<T>(toolName: string, permissionLevel: PermissionLevel, fn: () => Promise<T>): Promise<ToolResult>;
20
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,MAAM,WAAW,UAAU;IACzB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,GACtB,IAAI,CAKN;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,eAAe,EAChC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,UAAU,CAAC,CAcrB"}
package/dist/utils.js ADDED
@@ -0,0 +1,29 @@
1
+ /**
2
+ * 审计日志:输出到 stderr,不干扰 stdio 传输的 stdout 通道
3
+ */
4
+ export function logToolCall(toolName, permissionLevel) {
5
+ const timestamp = new Date().toISOString();
6
+ console.error(`[${timestamp}] TOOL_CALL: ${toolName} (permission: ${permissionLevel})`);
7
+ }
8
+ /**
9
+ * 统一 tool 调用包装:审计日志 + try/catch + 格式化响应
10
+ * - 成功:返回 JSON 格式文本内容
11
+ * - 失败:返回 isError: true 和中文错误信息
12
+ */
13
+ export async function handleToolCall(toolName, permissionLevel, fn) {
14
+ logToolCall(toolName, permissionLevel);
15
+ try {
16
+ const result = await fn();
17
+ return {
18
+ content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
19
+ };
20
+ }
21
+ catch (error) {
22
+ const message = error instanceof Error ? error.message : String(error);
23
+ return {
24
+ content: [{ type: "text", text: `操作失败: ${message}` }],
25
+ isError: true,
26
+ };
27
+ }
28
+ }
29
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AASA;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,QAAgB,EAChB,eAAuB;IAEvB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,OAAO,CAAC,KAAK,CACX,IAAI,SAAS,gBAAgB,QAAQ,iBAAiB,eAAe,GAAG,CACzE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAAgB,EAChB,eAAgC,EAChC,EAAoB;IAEpB,WAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;QAC1B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,OAAO,EAAE,EAAE,CAAC;YACrD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
package/package.json ADDED
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "record-safer-mcp-server",
3
+ "version": "1.0.0",
4
+ "description": "Record Safer Pro MCP Server — 专业多通道录音软件 AI 接口 / Professional multi-channel recording software AI interface",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "bin": {
8
+ "record-safer-mcp-server": "dist/index.js"
9
+ },
10
+ "files": [
11
+ "dist",
12
+ "README.md"
13
+ ],
14
+ "scripts": {
15
+ "build": "tsc",
16
+ "start": "node dist/index.js",
17
+ "dev": "tsc --watch",
18
+ "test": "vitest run",
19
+ "test:watch": "vitest",
20
+ "prepublishOnly": "npm run build"
21
+ },
22
+ "dependencies": {
23
+ "@modelcontextprotocol/sdk": "^1.12.1",
24
+ "zod": "^3.25.67",
25
+ "typescript": "^5.8.3"
26
+ },
27
+ "devDependencies": {
28
+ "vitest": "^3.2.3",
29
+ "fast-check": "^4.1.1",
30
+ "@types/node": "^22.15.31"
31
+ },
32
+ "engines": {
33
+ "node": ">=18.0.0"
34
+ }
35
+ }