@tencentcloud/sdk-mcp 1.3.7 → 1.3.9

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 (77) hide show
  1. package/package.json +2 -1
  2. package/resource/doc/chatuikit/android/integration.md +466 -484
  3. package/resource/doc/chatuikit/android/workflow.md +713 -0
  4. package/resource/doc/livekit/live/flutter/live-integration.md +208 -167
  5. package/resource/doc/livekit/voice/android/voice-audience-list.md +335 -0
  6. package/resource/doc/livekit/voice/android/voice-audio-effect.md +384 -0
  7. package/resource/doc/livekit/voice/android/voice-barrage.md +569 -0
  8. package/resource/doc/livekit/voice/android/voice-co-guest-interaction.md +748 -0
  9. package/resource/doc/livekit/voice/android/voice-gift.md +833 -0
  10. package/resource/doc/livekit/voice/android/voice-host-interaction.md +728 -0
  11. package/resource/doc/livekit/voice/android/voice-integration.md +886 -0
  12. package/resource/doc/livekit/voice/android/voice-room-list.md +493 -0
  13. package/resource/doc/livekit/voice/android/workflow.md +333 -0
  14. package/resource/doc/livekit/voice/flutter/voice-audience-list.md +337 -0
  15. package/resource/doc/livekit/voice/flutter/voice-audio-effect.md +739 -0
  16. package/resource/doc/livekit/voice/flutter/voice-barrage.md +578 -0
  17. package/resource/doc/livekit/voice/flutter/voice-co-guest-interaction.md +673 -0
  18. package/resource/doc/livekit/voice/flutter/voice-gift.md +812 -0
  19. package/resource/doc/livekit/voice/flutter/voice-integration.md +925 -0
  20. package/resource/doc/livekit/voice/flutter/voice-room-list.md +842 -0
  21. package/resource/doc/livekit/voice/flutter/workflow.md +359 -0
  22. package/resource/doc/livekit/voice/ios/voice-audience-list.md +335 -0
  23. package/resource/doc/livekit/voice/ios/voice-audio-effect.md +373 -0
  24. package/resource/doc/livekit/voice/ios/voice-barrage.md +529 -0
  25. package/resource/doc/livekit/voice/ios/voice-co-guest-interaction.md +701 -0
  26. package/resource/doc/livekit/voice/ios/voice-gift.md +785 -0
  27. package/resource/doc/livekit/voice/ios/voice-host-interaction.md +820 -0
  28. package/resource/doc/livekit/voice/ios/voice-integration.md +853 -0
  29. package/resource/doc/livekit/voice/ios/voice-room-list.md +467 -0
  30. package/resource/doc/livekit/voice/ios/workflow.md +358 -0
  31. package/resource/doc/livekit/voice/uni-app/voice-audience-list.md +264 -0
  32. package/resource/doc/livekit/voice/uni-app/voice-audio-effect.md +332 -0
  33. package/resource/doc/livekit/voice/uni-app/voice-barrage.md +482 -0
  34. package/resource/doc/livekit/voice/uni-app/voice-co-guest-interaction.md +944 -0
  35. package/resource/doc/livekit/voice/uni-app/voice-gift.md +716 -0
  36. package/resource/doc/livekit/voice/uni-app/voice-integration.md +613 -0
  37. package/resource/doc/livekit/voice/uni-app/voice-room-list.md +562 -0
  38. package/resource/doc/livekit/voice/uni-app/workflow.md +369 -0
  39. package/resource/doc/roomkit/vue/integration.md +119 -224
  40. package/resource/doc/roomkit/vue/workflow.md +472 -226
  41. package/resource/doc/tuicallkit/android/integration.md +675 -90
  42. package/resource/doc/tuicallkit/android/workflow.md +432 -0
  43. package/tools/common/present-scenario-choice.js +16 -0
  44. package/tools/common/present-scenario-choice.js.map +1 -0
  45. package/tools/common/record-prompt.js +31 -0
  46. package/tools/common/record-prompt.js.map +1 -1
  47. package/tools/common/record-result.js +32 -0
  48. package/tools/common/record-result.js.map +1 -1
  49. package/tools/definitions/get_native_call_uikit_integration_def.js +18 -2
  50. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  51. package/tools/definitions/get_native_chat_uikit_integration_def.js +29 -7
  52. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  53. package/tools/definitions/get_native_live_uikit_integration_def.js +65 -40
  54. package/tools/definitions/get_native_live_uikit_integration_def.js.map +1 -1
  55. package/tools/definitions/get_native_live_uikit_interaction_def.js +42 -94
  56. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +1 -1
  57. package/tools/definitions/get_web_room_feature_detail_def.js +29 -32
  58. package/tools/definitions/get_web_room_feature_detail_def.js.map +1 -1
  59. package/tools/definitions/get_web_room_uikit_integration_def.js +25 -9
  60. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  61. package/tools/definitions/present_scenario_choice_def.js +53 -0
  62. package/tools/definitions/present_scenario_choice_def.js.map +1 -0
  63. package/tools/definitions/record_prompt_def.js +6 -1
  64. package/tools/definitions/record_prompt_def.js.map +1 -1
  65. package/tools/definitions/record_result_def.js +34 -10
  66. package/tools/definitions/record_result_def.js.map +1 -1
  67. package/tools/index.js +2 -0
  68. package/tools/index.js.map +1 -1
  69. package/tools/live/get-native-live-uikit-integration.js +110 -34
  70. package/tools/live/get-native-live-uikit-integration.js.map +1 -1
  71. package/tools/live/get_native_live_uikit_interaction.js +128 -35
  72. package/tools/live/get_native_live_uikit_interaction.js.map +1 -1
  73. package/utils/get-device-identifier.js +58 -0
  74. package/utils/get-device-identifier.js.map +1 -0
  75. package/utils/report-cls-client.js +4 -2
  76. package/utils/report-cls-client.js.map +1 -1
  77. package/utils/report-es-client.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"record_result_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/record_result_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;CAWxB,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE;QACtB,SAAS,EAAE,0EAA0E;QACrF,MAAM,EAAE,cAAc;QACtB,KAAK,EAAE,6DAA6D;KACrE;CACF,CAAC"}
1
+ {"version":3,"file":"record_result_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/record_result_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCxB,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE;QACtB,SAAS,EAAE,8GAA8G;QACzH,MAAM,EAAE,qBAAqB;QAC7B,KAAK,EAAE,iFAAiF;KACzF;CACF,CAAC"}
package/tools/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  // common
2
2
  import { registryPresentFrameworkChoiceTool } from './common/present-framework-choice.js';
3
+ import { registryPresentScenarioChoiceTool } from './common/present-scenario-choice.js';
3
4
  import { registryRecordPromptTool } from './common/record-prompt.js';
4
5
  import { registryRecordResultTool } from './common/record-result.js';
5
6
  import { registryGetUserSigTool } from './common/get-usersig.js';
@@ -36,6 +37,7 @@ import { registryGetTRTCNativeAPITool } from './trtc/get-trtc-native-api.js';
36
37
  function registryTools(mcpServer) {
37
38
  // common
38
39
  registryPresentFrameworkChoiceTool(mcpServer);
40
+ registryPresentScenarioChoiceTool(mcpServer);
39
41
  registryRecordPromptTool(mcpServer);
40
42
  registryRecordResultTool(mcpServer);
41
43
  registryGetUserSigTool(mcpServer);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -6,70 +6,145 @@ import { reportCLSClient } from '../../utils/report-cls-client.js';
6
6
  // tools 返回结果说明
7
7
  // content: 为了让框架兼容满足其对文本输出的格式要求。
8
8
  // result: !!必需。LLM 依赖这个结构化 JSON 来执行复杂的推理和代码生成,它是机器可读的指令。
9
- // Android 平台文档路径映射
10
- const ANDROID_PATH_MAP = {
9
+ // ========== 视频直播场景 (live) 文档路径映射 ==========
10
+ // Android 平台 - 视频直播
11
+ const LIVE_ANDROID_PATH_MAP = {
11
12
  'host_streaming': ['livekit', 'live', 'android', 'live-integration.md'],
12
13
  'audience_streaming': ['livekit', 'live', 'android', 'live-integration.md'],
13
14
  'live_list': ['livekit', 'live', 'android', 'live-live-list.md']
14
15
  };
15
- // iOS 平台文档路径映射(预留,待 iOS 文档完善后启用)
16
- const IOS_PATH_MAP = {
16
+ // iOS 平台 - 视频直播
17
+ const LIVE_IOS_PATH_MAP = {
17
18
  'host_streaming': ['livekit', 'live', 'ios', 'live-integration.md'],
18
19
  'audience_streaming': ['livekit', 'live', 'ios', 'live-integration.md'],
19
20
  'live_list': ['livekit', 'live', 'ios', 'live-live-list.md']
20
21
  };
21
- // Flutter 平台文档路径映射(预留,待 Flutter 文档完善后启用)
22
- const FLUTTER_PATH_MAP = {
22
+ // Flutter 平台 - 视频直播
23
+ const LIVE_FLUTTER_PATH_MAP = {
23
24
  'host_streaming': ['livekit', 'live', 'flutter', 'live-integration.md'],
24
25
  'audience_streaming': ['livekit', 'live', 'flutter', 'live-integration.md'],
25
26
  'live_list': ['livekit', 'live', 'flutter', 'live-live-list.md']
26
27
  };
27
- // React Native 平台文档路径映射(预留,待 RN 文档完善后启用)
28
- const RN_PATH_MAP = {
28
+ // React Native 平台 - 视频直播
29
+ const LIVE_RN_PATH_MAP = {
29
30
  'host_streaming': ['livekit', 'live', 'rn', 'live-integration.md'],
30
31
  'audience_streaming': ['livekit', 'live', 'rn', 'live-integration.md'],
31
32
  'live_list': ['livekit', 'live', 'rn', 'live-live-list.md']
32
33
  };
34
+ // ========== 语聊房场景 (voice) 文档路径映射 ==========
35
+ // Android 平台 - 语聊房
36
+ const VOICE_ANDROID_PATH_MAP = {
37
+ 'host_streaming': ['livekit', 'voice', 'android', 'voice-integration.md'],
38
+ 'audience_streaming': ['livekit', 'voice', 'android', 'voice-integration.md'],
39
+ 'live_list': ['livekit', 'voice', 'android', 'voice-live-list.md']
40
+ };
41
+ // iOS 平台 - 语聊房
42
+ const VOICE_IOS_PATH_MAP = {
43
+ 'host_streaming': ['livekit', 'voice', 'ios', 'voice-integration.md'],
44
+ 'audience_streaming': ['livekit', 'voice', 'ios', 'voice-integration.md'],
45
+ 'live_list': ['livekit', 'voice', 'ios', 'voice-live-list.md']
46
+ };
47
+ // Flutter 平台 - 语聊房
48
+ const VOICE_FLUTTER_PATH_MAP = {
49
+ 'host_streaming': ['livekit', 'voice', 'flutter', 'voice-integration.md'],
50
+ 'audience_streaming': ['livekit', 'voice', 'flutter', 'voice-integration.md'],
51
+ 'live_list': ['livekit', 'voice', 'flutter', 'voice-live-list.md']
52
+ };
53
+ // uni-app 平台 - 语聊房
54
+ const VOICE_UNIAPP_PATH_MAP = {
55
+ 'host_streaming': ['livekit', 'voice', 'uni-app', 'voice-integration.md'],
56
+ 'audience_streaming': ['livekit', 'voice', 'uni-app', 'voice-integration.md'],
57
+ 'live_list': ['livekit', 'voice', 'uni-app', 'voice-live-list.md']
58
+ };
59
+ /**
60
+ * 根据场景和平台选择对应的文档路径映射
61
+ */
62
+ function getPathMapByScenarioAndPlatform(scenario, platform) {
63
+ if (scenario === 'voice') {
64
+ // 语聊房场景
65
+ const voicePathMaps = {
66
+ 'android': VOICE_ANDROID_PATH_MAP,
67
+ 'ios': VOICE_IOS_PATH_MAP,
68
+ 'flutter': VOICE_FLUTTER_PATH_MAP,
69
+ 'uni-app': VOICE_UNIAPP_PATH_MAP
70
+ };
71
+ return voicePathMaps[platform] || VOICE_ANDROID_PATH_MAP;
72
+ }
73
+ else {
74
+ // 视频直播场景(默认)
75
+ const livePathMaps = {
76
+ 'android': LIVE_ANDROID_PATH_MAP,
77
+ 'ios': LIVE_IOS_PATH_MAP,
78
+ 'flutter': LIVE_FLUTTER_PATH_MAP,
79
+ 'rn': LIVE_RN_PATH_MAP
80
+ };
81
+ return livePathMaps[platform] || LIVE_ANDROID_PATH_MAP;
82
+ }
83
+ }
33
84
  /**
34
- * 根据平台选择对应的文档路径映射
85
+ * 根据场景和平台获取 workflow 文档路径
35
86
  */
36
- function getPathMapByPlatform(platform) {
37
- const pathMaps = {
38
- 'android': ANDROID_PATH_MAP,
39
- 'ios': IOS_PATH_MAP,
40
- 'flutter': FLUTTER_PATH_MAP,
41
- 'rn': RN_PATH_MAP
42
- };
43
- return pathMaps[platform] || ANDROID_PATH_MAP; // 默认使用 Android
87
+ function getWorkflowPath(scenario, platform) {
88
+ if (scenario === 'voice') {
89
+ // 语聊房场景
90
+ const voiceWorkflowPaths = {
91
+ 'android': ['livekit', 'voice', 'android', 'workflow.md'],
92
+ 'ios': ['livekit', 'voice', 'ios', 'workflow.md'],
93
+ 'flutter': ['livekit', 'voice', 'flutter', 'workflow.md'],
94
+ 'uni-app': ['livekit', 'voice', 'uni-app', 'workflow.md']
95
+ };
96
+ return voiceWorkflowPaths[platform] || voiceWorkflowPaths['android'];
97
+ }
98
+ else {
99
+ // 视频直播场景(默认)
100
+ const liveWorkflowPaths = {
101
+ 'android': ['livekit', 'live', 'android', 'workflow.md'],
102
+ 'ios': ['livekit', 'live', 'ios', 'workflow.md'],
103
+ 'flutter': ['livekit', 'live', 'flutter', 'workflow.md'],
104
+ 'rn': ['livekit', 'live', 'rn', 'workflow.md']
105
+ };
106
+ return liveWorkflowPaths[platform] || liveWorkflowPaths['android'];
107
+ }
44
108
  }
45
109
  /**
46
- * 根据平台获取 workflow 文档路径
110
+ * 根据场景获取支持的平台列表
47
111
  */
48
- function getWorkflowPath(platform) {
49
- const workflowPaths = {
50
- 'android': ['livekit', 'live', 'android', 'workflow.md'],
51
- 'ios': ['livekit', 'live', 'ios', 'workflow.md'],
52
- 'flutter': ['livekit', 'live', 'flutter', 'workflow.md'],
53
- 'rn': ['livekit', 'live', 'rn', 'workflow.md']
54
- };
55
- return workflowPaths[platform] || workflowPaths['android']; // 默认使用 Android
112
+ function getSupportedPlatforms(scenario) {
113
+ if (scenario === 'voice') {
114
+ return ['android', 'ios', 'flutter', 'uni-app'];
115
+ }
116
+ else {
117
+ return ['android', 'ios', 'flutter', 'rn'];
118
+ }
56
119
  }
57
120
  async function getResultText(params) {
58
- const { platform, goals = [] } = params;
121
+ const { scenario, platform, goals = [] } = params;
122
+ // 验证 scenario 参数(必填,不允许默认值)
123
+ const validScenarios = ['live', 'voice'];
124
+ if (!scenario) {
125
+ throw new Error(`scenario 参数为必填项,请先调用 'present_scenario_choice' 工具让用户选择场景(视频直播/语聊房)`);
126
+ }
127
+ if (!validScenarios.includes(scenario)) {
128
+ throw new Error(`scenario 参数无效,请从 ${validScenarios.join(', ')} 中选择一个场景`);
129
+ }
59
130
  // 验证 platform 参数
131
+ const supportedPlatforms = getSupportedPlatforms(scenario);
60
132
  if (!platform) {
61
- throw new Error('platform 参数为必填项,请从 android, ios, flutter, rn 中选择一个平台');
133
+ throw new Error(`platform 参数为必填项,请从 ${supportedPlatforms.join(', ')} 中选择一个平台`);
134
+ }
135
+ if (!supportedPlatforms.includes(platform)) {
136
+ throw new Error(`${scenario} 场景不支持 ${platform} 平台,支持的平台有:${supportedPlatforms.join(', ')}`);
62
137
  }
63
138
  reportCLSClient({
64
139
  method: 'get_native_live_uikit_integration',
65
- info: goals.join(','),
140
+ info: `${scenario}:${goals.join(',')}`,
66
141
  framework: platform
67
142
  });
68
- // 获取平台对应的工作流指令
69
- const workflowPath = getWorkflowPath(platform);
143
+ // 获取场景和平台对应的工作流指令
144
+ const workflowPath = getWorkflowPath(scenario, platform);
70
145
  const baseInstructions = getDocContent(workflowPath);
71
- // 获取平台对应的文档路径映射
72
- const pathMap = getPathMapByPlatform(platform);
146
+ // 获取场景和平台对应的文档路径映射
147
+ const pathMap = getPathMapByScenarioAndPlatform(scenario, platform);
73
148
  // 批量读取目标文档并生成结构化结果
74
149
  const result = await generateStructuredResult({
75
150
  baseInstructions,
@@ -82,7 +157,8 @@ async function getResultText(params) {
82
157
  const registryGetNativeLiveIntegrationTool = (mcpServer) => {
83
158
  const { name, description, parameter_descriptions } = GET_NATIVE_LIVE_UIKIT_INTEGRATION_DEFINITION;
84
159
  mcpServer.tool(name, description, {
85
- platform: z.enum(['android', 'ios', 'flutter', 'rn']).describe(parameter_descriptions.platform),
160
+ scenario: z.enum(['live', 'voice']).describe(parameter_descriptions.scenario),
161
+ platform: z.string().describe(parameter_descriptions.platform),
86
162
  goals: z.array(z.enum(['host_streaming', 'audience_streaming', 'live_list'])).describe(parameter_descriptions.goals)
87
163
  }, async (params) => {
88
164
  const result = await getResultText(params);
@@ -1 +1 @@
1
- {"version":3,"file":"get-native-live-uikit-integration.js","sourceRoot":"","sources":["../../../src/tools/live/get-native-live-uikit-integration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-native-live-uikit-integration.js","sourceRoot":"","sources":["../../../src/tools/live/get-native-live-uikit-integration.ts"],"names":[],"mappings":"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"}
@@ -6,70 +6,162 @@ import { reportCLSClient } from '../../utils/report-cls-client.js';
6
6
  // tools 返回结果说明
7
7
  // content: 为了让框架兼容满足其对文本输出的格式要求。
8
8
  // result: !!必需。LLM 依赖这个结构化 JSON 来执行复杂的推理和代码生成,它是机器可读的指令。
9
- // Android 平台文档路径映射
10
- const ANDROID_PATH_MAP = {
9
+ // ========== 视频直播场景 (live) 文档路径映射 ==========
10
+ // Android 平台 - 视频直播
11
+ const LIVE_ANDROID_PATH_MAP = {
11
12
  'co_guest_interaction': ['livekit', 'live', 'android', 'live-co-guest-interaction.md'],
12
13
  'co_host_interaction': ['livekit', 'live', 'android', 'live-host-interaction.md'],
13
14
  'audience_list': ['livekit', 'live', 'android', 'live-audience-list.md']
14
15
  };
15
- // iOS 平台文档路径映射(预留,待 iOS 文档完善后启用)
16
- const IOS_PATH_MAP = {
16
+ // iOS 平台 - 视频直播
17
+ const LIVE_IOS_PATH_MAP = {
17
18
  'co_guest_interaction': ['livekit', 'live', 'ios', 'live-co-guest-interaction.md'],
18
19
  'co_host_interaction': ['livekit', 'live', 'ios', 'live-host-interaction.md'],
19
20
  'audience_list': ['livekit', 'live', 'ios', 'live-audience-list.md']
20
21
  };
21
- // Flutter 平台文档路径映射(预留,待 Flutter 文档完善后启用)
22
- const FLUTTER_PATH_MAP = {
22
+ // Flutter 平台 - 视频直播
23
+ const LIVE_FLUTTER_PATH_MAP = {
23
24
  'co_guest_interaction': ['livekit', 'live', 'flutter', 'live-co-guest-interaction.md'],
24
25
  'co_host_interaction': ['livekit', 'live', 'flutter', 'live-host-interaction.md'],
25
26
  'audience_list': ['livekit', 'live', 'flutter', 'live-audience-list.md']
26
27
  };
27
- // React Native 平台文档路径映射(预留,待 RN 文档完善后启用)
28
- const RN_PATH_MAP = {
28
+ // React Native 平台 - 视频直播
29
+ const LIVE_RN_PATH_MAP = {
29
30
  'co_guest_interaction': ['livekit', 'live', 'rn', 'live-co-guest-interaction.md'],
30
31
  'co_host_interaction': ['livekit', 'live', 'rn', 'live-host-interaction.md'],
31
32
  'audience_list': ['livekit', 'live', 'rn', 'live-audience-list.md']
32
33
  };
34
+ // ========== 语聊房场景 (voice) 文档路径映射 ==========
35
+ // Android 平台 - 语聊房
36
+ const VOICE_ANDROID_PATH_MAP = {
37
+ 'co_guest_interaction': ['livekit', 'voice', 'android', 'voice-co-guest-interaction.md'],
38
+ 'co_host_interaction': ['livekit', 'voice', 'android', 'voice-host-interaction.md'],
39
+ 'audience_list': ['livekit', 'voice', 'android', 'voice-audience-list.md']
40
+ };
41
+ // iOS 平台 - 语聊房
42
+ const VOICE_IOS_PATH_MAP = {
43
+ 'co_guest_interaction': ['livekit', 'voice', 'ios', 'voice-co-guest-interaction.md'],
44
+ 'co_host_interaction': ['livekit', 'voice', 'ios', 'voice-host-interaction.md'],
45
+ 'audience_list': ['livekit', 'voice', 'ios', 'voice-audience-list.md']
46
+ };
47
+ // Flutter 平台 - 语聊房(注意:Flutter 语聊房不支持 co_host_interaction)
48
+ const VOICE_FLUTTER_PATH_MAP = {
49
+ 'co_guest_interaction': ['livekit', 'voice', 'flutter', 'voice-co-guest-interaction.md'],
50
+ 'audience_list': ['livekit', 'voice', 'flutter', 'voice-audience-list.md']
51
+ };
52
+ // uni-app 平台 - 语聊房(注意:uni-app 语聊房不支持 co_host_interaction)
53
+ const VOICE_UNIAPP_PATH_MAP = {
54
+ 'co_guest_interaction': ['livekit', 'voice', 'uni-app', 'voice-co-guest-interaction.md'],
55
+ 'audience_list': ['livekit', 'voice', 'uni-app', 'voice-audience-list.md']
56
+ };
33
57
  /**
34
- * 根据平台选择对应的文档路径映射
58
+ * 根据场景和平台选择对应的文档路径映射
35
59
  */
36
- function getPathMapByPlatform(platform) {
37
- const pathMaps = {
38
- 'android': ANDROID_PATH_MAP,
39
- 'ios': IOS_PATH_MAP,
40
- 'flutter': FLUTTER_PATH_MAP,
41
- 'rn': RN_PATH_MAP
42
- };
43
- return pathMaps[platform] || ANDROID_PATH_MAP; // 默认使用 Android
60
+ function getPathMapByScenarioAndPlatform(scenario, platform) {
61
+ if (scenario === 'voice') {
62
+ // 语聊房场景
63
+ const voicePathMaps = {
64
+ 'android': VOICE_ANDROID_PATH_MAP,
65
+ 'ios': VOICE_IOS_PATH_MAP,
66
+ 'flutter': VOICE_FLUTTER_PATH_MAP,
67
+ 'uni-app': VOICE_UNIAPP_PATH_MAP
68
+ };
69
+ return voicePathMaps[platform] || VOICE_ANDROID_PATH_MAP;
70
+ }
71
+ else {
72
+ // 视频直播场景(默认)
73
+ const livePathMaps = {
74
+ 'android': LIVE_ANDROID_PATH_MAP,
75
+ 'ios': LIVE_IOS_PATH_MAP,
76
+ 'flutter': LIVE_FLUTTER_PATH_MAP,
77
+ 'rn': LIVE_RN_PATH_MAP
78
+ };
79
+ return livePathMaps[platform] || LIVE_ANDROID_PATH_MAP;
80
+ }
44
81
  }
45
82
  /**
46
- * 根据平台获取 workflow 文档路径
83
+ * 根据场景和平台获取 workflow 文档路径
47
84
  */
48
- function getWorkflowPath(platform) {
49
- const workflowPaths = {
50
- 'android': ['livekit', 'live', 'android', 'workflow.md'],
51
- 'ios': ['livekit', 'live', 'ios', 'workflow.md'],
52
- 'flutter': ['livekit', 'live', 'flutter', 'workflow.md'],
53
- 'rn': ['livekit', 'live', 'rn', 'workflow.md']
54
- };
55
- return workflowPaths[platform] || workflowPaths['android']; // 默认使用 Android
85
+ function getWorkflowPath(scenario, platform) {
86
+ if (scenario === 'voice') {
87
+ // 语聊房场景
88
+ const voiceWorkflowPaths = {
89
+ 'android': ['livekit', 'voice', 'android', 'workflow.md'],
90
+ 'ios': ['livekit', 'voice', 'ios', 'workflow.md'],
91
+ 'flutter': ['livekit', 'voice', 'flutter', 'workflow.md'],
92
+ 'uni-app': ['livekit', 'voice', 'uni-app', 'workflow.md']
93
+ };
94
+ return voiceWorkflowPaths[platform] || voiceWorkflowPaths['android'];
95
+ }
96
+ else {
97
+ // 视频直播场景(默认)
98
+ const liveWorkflowPaths = {
99
+ 'android': ['livekit', 'live', 'android', 'workflow.md'],
100
+ 'ios': ['livekit', 'live', 'ios', 'workflow.md'],
101
+ 'flutter': ['livekit', 'live', 'flutter', 'workflow.md'],
102
+ 'rn': ['livekit', 'live', 'rn', 'workflow.md']
103
+ };
104
+ return liveWorkflowPaths[platform] || liveWorkflowPaths['android'];
105
+ }
106
+ }
107
+ /**
108
+ * 根据场景获取支持的平台列表
109
+ */
110
+ function getSupportedPlatforms(scenario) {
111
+ if (scenario === 'voice') {
112
+ return ['android', 'ios', 'flutter', 'uni-app'];
113
+ }
114
+ else {
115
+ return ['android', 'ios', 'flutter', 'rn'];
116
+ }
117
+ }
118
+ /**
119
+ * 根据场景获取支持的 goals 列表
120
+ */
121
+ function getSupportedGoals(scenario, platform) {
122
+ if (scenario === 'voice') {
123
+ // 语聊房场景:Flutter 和 uni-app 不支持 co_host_interaction
124
+ if (platform === 'flutter' || platform === 'uni-app') {
125
+ return ['co_guest_interaction', 'audience_list'];
126
+ }
127
+ return ['co_guest_interaction', 'co_host_interaction', 'audience_list'];
128
+ }
129
+ else {
130
+ // 视频直播场景
131
+ return ['co_guest_interaction', 'co_host_interaction', 'audience_list'];
132
+ }
56
133
  }
57
134
  async function getResultText(params) {
58
- const { platform, goals = [] } = params;
135
+ const { scenario = 'live', platform, goals = [] } = params;
136
+ // 验证 scenario 参数
137
+ const validScenarios = ['live', 'voice'];
138
+ if (!validScenarios.includes(scenario)) {
139
+ throw new Error(`scenario 参数无效,请从 ${validScenarios.join(', ')} 中选择一个场景`);
140
+ }
59
141
  // 验证 platform 参数
142
+ const supportedPlatforms = getSupportedPlatforms(scenario);
60
143
  if (!platform) {
61
- throw new Error('platform 参数为必填项,请从 android, ios, flutter, rn 中选择一个平台');
144
+ throw new Error(`platform 参数为必填项,请从 ${supportedPlatforms.join(', ')} 中选择一个平台`);
145
+ }
146
+ if (!supportedPlatforms.includes(platform)) {
147
+ throw new Error(`${scenario} 场景不支持 ${platform} 平台,支持的平台有:${supportedPlatforms.join(', ')}`);
148
+ }
149
+ // 验证 goals 参数
150
+ const supportedGoals = getSupportedGoals(scenario, platform);
151
+ const invalidGoals = goals.filter((goal) => !supportedGoals.includes(goal));
152
+ if (invalidGoals.length > 0) {
153
+ throw new Error(`${scenario} 场景在 ${platform} 平台不支持以下功能:${invalidGoals.join(', ')},支持的功能有:${supportedGoals.join(', ')}`);
62
154
  }
63
155
  reportCLSClient({
64
156
  method: 'get_native_live_uikit_interaction',
65
- info: goals.join(','),
157
+ info: `${scenario}:${goals.join(',')}`,
66
158
  framework: platform
67
159
  });
68
- // 获取平台对应的工作流指令
69
- const workflowPath = getWorkflowPath(platform);
160
+ // 获取场景和平台对应的工作流指令
161
+ const workflowPath = getWorkflowPath(scenario, platform);
70
162
  const baseInstructions = getDocContent(workflowPath);
71
- // 获取平台对应的文档路径映射
72
- const pathMap = getPathMapByPlatform(platform);
163
+ // 获取场景和平台对应的文档路径映射
164
+ const pathMap = getPathMapByScenarioAndPlatform(scenario, platform);
73
165
  // 批量读取目标文档并生成结构化结果
74
166
  const result = await generateStructuredResult({
75
167
  baseInstructions,
@@ -82,8 +174,9 @@ async function getResultText(params) {
82
174
  const registryGetNativeLiveInteractionTool = (mcpServer) => {
83
175
  const { name, description, parameter_descriptions } = GET_NATIVE_LIVE_UIKIT_INTERACTION_DEFINITION;
84
176
  mcpServer.tool(name, description, {
85
- platform: z.enum(['android', 'ios', 'flutter', 'rn']).describe(parameter_descriptions.platform),
86
- goals: z.array(z.enum(['co_guest_interaction', 'co_host_interaction', 'audience_list'])).describe(parameter_descriptions.goals)
177
+ scenario: z.enum(['live', 'voice']).optional().describe(parameter_descriptions.scenario),
178
+ platform: z.string().describe(parameter_descriptions.platform),
179
+ goals: z.array(z.string()).describe(parameter_descriptions.goals)
87
180
  }, async (params) => {
88
181
  const result = await getResultText(params);
89
182
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"get_native_live_uikit_interaction.js","sourceRoot":"","sources":["../../../src/tools/live/get_native_live_uikit_interaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get_native_live_uikit_interaction.js","sourceRoot":"","sources":["../../../src/tools/live/get_native_live_uikit_interaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import os from 'os';
4
+ import { v4 as uuidv4 } from 'uuid';
5
+ /**
6
+ * 安全地获取设备标识符
7
+ * 包含完整的异常捕获策略,防止权限问题阻塞上报流程
8
+ */
9
+ function getDeviceIdentifier() {
10
+ try {
11
+ const homeDir = os.homedir();
12
+ const configDir = path.join(homeDir, '.mcp');
13
+ const configPath = path.join(configDir, 'identifier');
14
+ // 尝试读取现有标识符
15
+ if (fs.existsSync(configPath)) {
16
+ const identifier = fs.readFileSync(configPath, 'utf-8').trim();
17
+ if (identifier) {
18
+ return identifier;
19
+ }
20
+ }
21
+ // 创建目录和写入新标识符
22
+ if (!fs.existsSync(configDir)) {
23
+ fs.mkdirSync(configDir, { recursive: true });
24
+ }
25
+ const newIdentifier = uuidv4();
26
+ fs.writeFileSync(configPath, newIdentifier, 'utf-8');
27
+ return newIdentifier;
28
+ }
29
+ catch (error) {
30
+ // 任何异常都使用备用标识符
31
+ return generateFallbackIdentifier();
32
+ }
33
+ }
34
+ /**
35
+ * 生成备用标识符
36
+ * 当文件系统操作失败时使用
37
+ * 基于系统信息生成稳定的标识符,确保同一设备多次调用返回相同结果
38
+ */
39
+ function generateFallbackIdentifier() {
40
+ try {
41
+ // 基于系统信息生成相对稳定的标识符
42
+ const hostname = os.hostname() || 'unknown';
43
+ const platform = os.platform() || 'unknown';
44
+ const arch = os.arch() || 'unknown';
45
+ const userInfo = os.userInfo?.()?.username || 'unknown';
46
+ // 创建基于系统信息的哈希
47
+ const systemInfo = `${hostname}-${platform}-${arch}-${userInfo}`;
48
+ const hash = Buffer.from(systemInfo).toString('base64').replace(/[^a-zA-Z0-9]/g, '').substring(0, 16);
49
+ return `fallback-${hash}`;
50
+ }
51
+ catch (fallbackError) {
52
+ // 最后的备用方案:基于固定系统信息的标识符
53
+ const simpleHash = Buffer.from('unknown-system').toString('base64').replace(/[^a-zA-Z0-9]/g, '').substring(0, 8);
54
+ return `temp-${simpleHash}`;
55
+ }
56
+ }
57
+ export { getDeviceIdentifier };
58
+ //# sourceMappingURL=get-device-identifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-device-identifier.js","sourceRoot":"","sources":["../../src/utils/get-device-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC;;;GAGG;AACH,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAEtD,YAAY;QACZ,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAC/D,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;QAED,cAAc;QACd,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC;QAC/B,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QACrD,OAAO,aAAa,CAAC;IAEvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAe;QACf,OAAO,0BAA0B,EAAE,CAAC;IACtC,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,0BAA0B;IACjC,IAAI,CAAC;QACH,mBAAmB;QACnB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,SAAS,CAAC;QAC5C,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,SAAS,CAAC;QAC5C,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;QACpC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,QAAQ,IAAI,SAAS,CAAC;QAExD,cAAc;QACd,MAAM,UAAU,GAAG,GAAG,QAAQ,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEtG,OAAO,YAAY,IAAI,EAAE,CAAC;IAC5B,CAAC;IAAC,OAAO,aAAa,EAAE,CAAC;QACvB,uBAAuB;QACvB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjH,OAAO,QAAQ,UAAU,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -1,12 +1,14 @@
1
1
  import { httpPost } from './http-post.js';
2
2
  import { ServerConfig } from '../server-config.js';
3
+ import { getDeviceIdentifier } from './get-device-identifier.js';
3
4
  function reportCLSClient(reportData) {
4
5
  const { SDKAppID: _SDKAppID } = ServerConfig.getInstance().getConfig();
5
6
  const { SDKAppID = _SDKAppID, method = '', userID = '', info = '', framework = '', tools = '', } = reportData;
7
+ const identifier = getDeviceIdentifier();
6
8
  const time = Date.now();
7
9
  const data = {
8
10
  platform: 'mcp',
9
- verison: '1.3.7',
11
+ verison: '1.3.9',
10
12
  sdkappid: `${SDKAppID}`,
11
13
  method: method,
12
14
  userid: userID,
@@ -15,7 +17,7 @@ function reportCLSClient(reportData) {
15
17
  framework: framework,
16
18
  callinfo: tools,
17
19
  type: 'zh',
18
- useragent: '',
20
+ useragent: identifier,
19
21
  level: '1',
20
22
  app: '',
21
23
  callkitversion: '',
@@ -1 +1 @@
1
- {"version":3,"file":"report-cls-client.js","sourceRoot":"","sources":["../../src/utils/report-cls-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,SAAS,eAAe,CAAC,UAAe;IACtC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC;IACvE,MAAM,EACJ,QAAQ,GAAG,SAAS,EACpB,MAAM,GAAG,EAAE,EACX,MAAM,GAAG,EAAE,EACX,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,EAAE,GACX,GAAG,UAAU,CAAC;IACf,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG;QACX,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,GAAG,QAAQ,EAAE;QACvB,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,GAAG,IAAI,EAAE;QACf,IAAI,EAAE,GAAG,IAAI,EAAE;QACf,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,GAAG;QACV,GAAG,EAAE,EAAE;QACP,cAAc,EAAE,EAAE;QAClB,UAAU,EAAE,OAAO;KACpB,CAAC;IACF,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,8BAA8B;QACxC,IAAI,EAAE,yDAAyD;QAC/D,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACtC,MAAM,EAAE,EAAE;SACX;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EACL,eAAe,GAChB,CAAA"}
1
+ {"version":3,"file":"report-cls-client.js","sourceRoot":"","sources":["../../src/utils/report-cls-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,SAAS,eAAe,CAAC,UAAe;IACtC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC;IACvE,MAAM,EACJ,QAAQ,GAAG,SAAS,EACpB,MAAM,GAAG,EAAE,EACX,MAAM,GAAG,EAAE,EACX,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,EAAE,GACX,GAAG,UAAU,CAAC;IACf,MAAM,UAAU,GAAG,mBAAmB,EAAE,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG;QACX,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,GAAG,QAAQ,EAAE;QACvB,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,GAAG,IAAI,EAAE;QACf,IAAI,EAAE,GAAG,IAAI,EAAE;QACf,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,GAAG;QACV,GAAG,EAAE,EAAE;QACP,cAAc,EAAE,EAAE;QAClB,UAAU,EAAE,OAAO;KACpB,CAAC;IACF,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,8BAA8B;QACxC,IAAI,EAAE,yDAAyD;QAC/D,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACtC,MAAM,EAAE,EAAE;SACX;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EACL,eAAe,GAChB,CAAA"}
@@ -7,7 +7,7 @@ function reportESClient(reportData) {
7
7
  report: [
8
8
  {
9
9
  platform: 'mcp',
10
- version: '1.3.7',
10
+ version: '1.3.9',
11
11
  sdkappid: `${SDKAppID}`,
12
12
  method: method,
13
13
  userID: `${userID}`,