Skip to content

Commit 26646c6

Browse files
authored
Feat vod edit 2.1 (#374)
* feat: 视频剪辑mcp * feat: 视频剪辑mcp 增加host设置 * feat: 优化鉴权和分组获取方式 * feat: 处理动态凭证 * feat: 环境变量命名调整 * feat: 环境变量命名调整 * feat: 类型修复 * feat: 无用变量引入注释 * feat: 返回值声明 * feat: 优化类型声明 * feat: 优化参数类型 * feat: 优化类型声明 * feat: 移除字幕默认值 * feat: 解决元数据获取问题 * feat: 增加画中画 * feat: 分组数据调整 * feat: 增加字体配置 * feat: 移除水印贴片默认值 * feat: 增加音频倍速方法 * feat: 获取播放链接增加vid模式 * feat: 兼容groups模式 * feat: 工具优化 * feat: 注释调整 * feat: 移除参数必须验证 * feat: 更新readme 文件 * feat: 更新readme 文件
1 parent fc69473 commit 26646c6

17 files changed

Lines changed: 2302 additions & 191 deletions

server/mcp_server_vod/README.md

Lines changed: 205 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -178,30 +178,140 @@ Query media processing task results, including task status, processing progress,
178178

179179
Query the media processing result for the portrait cutout task with runId xxx in space space1.
180180

181+
### Tool 18 flip_video
182+
183+
#### Description
184+
185+
Video flip (vertical and horizontal). Supports vid, http url, and directurl input modes.
186+
187+
#### Trigger Example
188+
189+
Flip the video vertically and horizontally; video is vid1, space is space1.
190+
191+
### Tool 19 speedup_video
192+
193+
#### Description
194+
195+
Video speed adjustment. Supports vid, http url, and directurl input modes.
196+
197+
#### Trigger Example
198+
199+
Adjust video vid1 to 2x speed; space is space1.
200+
201+
### Tool 20 speedup_audio
202+
203+
#### Description
204+
205+
Audio speed adjustment. Supports vid, http url, and directurl input modes.
206+
207+
#### Trigger Example
208+
209+
Adjust audio vid1 to 2x speed; space is space1.
210+
211+
### Tool 21 image_to_video
212+
213+
#### Description
214+
215+
Image-to-video conversion. Supports vid, http url, and directurl input modes.
216+
217+
#### Trigger Example
218+
219+
Apply zoom and random transitions to images; image resources are vid1, vid2, vid3; space is space1.
220+
221+
### Tool 22 compile_video_audio
222+
223+
#### Description
224+
225+
Audio-video composition: strip original audio from video, align audio with video duration, and related capabilities.
226+
227+
#### Trigger Example
228+
229+
Merge audio and video, strip original audio from the video, use video duration as reference; video is vid1, audio is vid2; space is space1.
230+
231+
### Tool 23 extract_audio
232+
233+
#### Description
234+
235+
Extract audio from video. Supports configuring audio output format.
236+
237+
#### Trigger Example
238+
239+
Extract audio from vid1; space is space1.
240+
241+
### Tool 24 mix_audios
242+
243+
#### Description
244+
245+
Audio mixing (e.g. adding background music to audio).
246+
247+
#### Trigger Example
248+
249+
Mix audios vid1 and vid2; space is space1.
250+
251+
### Tool 25 add_subtitle
252+
253+
#### Description
254+
255+
Add subtitles to video. Typical flow: generate narration with a model, generate voice + subtitles, then composite into the video.
256+
257+
#### Trigger Example
258+
259+
Add subtitle `https:****.srt` to video vid1; outline color red, font size 70, outline width 10; space is space1.
260+
261+
### Tool 26 add_sub_video
262+
263+
#### Description
264+
265+
Image to video, and video watermarking.
266+
267+
#### Trigger Example
268+
269+
Add watermark overlay: main video vid1, overlay video vid2; overlay at top-right, size 100×100; space is space1.
270+
271+
### Tool 27 get_video_audio_info
272+
273+
#### Description
274+
275+
Retrieve video/audio metadata.
276+
277+
#### Trigger Example
278+
279+
Get playback info for vid1; space is space1.
280+
281+
### Tool 28 get_play_url
282+
283+
#### Description
284+
285+
Get audio/video playback URL.
286+
287+
#### Trigger Example
288+
289+
Get playback URL for vid1; space is space1.
290+
181291
## Supported Platforms
182292

183-
Ark, Cursor, Trae etc.
293+
Ark, Cursor, Trae, etc.
184294

185-
## Service Activation Link (Full Product)
295+
## Product Console
186296

187-
[Volcano Engine-Video on Demand-Console](https://www.volcengine.com/product/vod)
297+
[Volcano Engine - Video on Demand - Console](https://www.volcengine.com/product/vod)
188298

189-
## Authentication Method
299+
## Authentication
190300

191-
Please apply for VOLCENGINE_ACCESS_KEY, VOLCENGINE_SECRET_KEY at [Volcano Engine-Video on Demand-Console](https://www.volcengine.com/product/vod)
301+
Apply for VOLCENGINE_ACCESS_KEY and VOLCENGINE_SECRET_KEY at [Volcano Engine - Video on Demand - Console](https://www.volcengine.com/product/vod).
192302

193303
## Installation
194304

195-
### Environment Requirements
305+
### Requirements
196306

197307
- Python 3.13+
198308
- Volcano Engine account and AccessKey/SecretKey
199309

200310
## Deployment
201311

202-
### Integration in MCP Client
312+
### Integrate in MCP Client
203313

204-
Configure MCP service in mcp client, MCP JSON configuration:
314+
Configure the MCP service in your MCP client. Example MCP JSON:
205315

206316
```json
207317
{
@@ -216,13 +326,99 @@ Configure MCP service in mcp client, MCP JSON configuration:
216326
"env": {
217327
"VOLCENGINE_ACCESS_KEY": "Your Volcengine AK",
218328
"VOLCENGINE_SECRET_KEY": "Your Volcengine SK",
219-
"MCP_TOOL_GROUPS": "YOUR_TOOL_GROUPS"
329+
"MCP_TOOLS_TYPE": "Your Source", // groups | tools
330+
// - In groups mode, MCP_TOOLS_SOURCE is the group name
331+
// - In tools mode, MCP_TOOLS_SOURCE is the tool name
332+
"MCP_TOOLS_SOURCE": "Your Source"
220333
}
221334
}
222335
}
223336
}
224337
```
225338

339+
### Cloud Deployment
340+
341+
**Dynamic authentication and grouping are supported. Header configuration:**
342+
343+
- To enable all tools:
344+
- x-tt-tools-type: groups
345+
- x-tt-tools-source: all
346+
- You can switch MCP tools dynamically via x-tt-tools-source to reduce noise and token usage for scenario-specific agents.
347+
- x-tt-tools-type: loading mode; values: groups | tools
348+
- In groups mode, x-tt-tools-source is the group name; use all for all groups.
349+
- In tools mode, x-tt-tools-source is the tool name.
350+
351+
### Group Configuration
352+
353+
**Default exposed tools:**
354+
355+
- get_play_url: Get playback URL
356+
- audio_video_stitching: Audio/video stitching
357+
- audio_video_clipping: Audio/video clipping
358+
- get_v_creative_task_result: Query edit task result
359+
360+
**Full group mapping:**
361+
362+
```json
363+
{
364+
# edit group
365+
"edit": [ # group name
366+
"audio_video_stitching",
367+
"audio_video_clipping",
368+
"get_v_creative_task_result",
369+
"flip_video",
370+
"speedup_video",
371+
"speedup_audio",
372+
"image_to_video",
373+
"compile_video_audio",
374+
"extract_audio",
375+
"mix_audios",
376+
"add_sub_video",
377+
],
378+
# video_play group
379+
"video_play": [
380+
"get_play_url",
381+
"get_video_audio_info"
382+
],
383+
# upload group
384+
"upload": [
385+
"video_batch_upload",
386+
"query_batch_upload_task_info"
387+
],
388+
# intelligent_slicing group
389+
"intelligent_slicing": [
390+
"intelligent_slicing_task"
391+
],
392+
# intelligent_matting group
393+
"intelligent_matting": [
394+
"portrait_image_retouching_task",
395+
"green_screen_task"
396+
],
397+
# subtitle_processing group
398+
"subtitle_processing": [
399+
"asr_speech_to_text_task",
400+
"ocr_text_to_subtitles_task",
401+
"video_subtitles_removal_task",
402+
"add_subtitle",
403+
],
404+
# audio_processing group
405+
"audio_processing": [
406+
"voice_separation_task",
407+
"audio_noise_reduction_task"
408+
],
409+
# video_enhancement group
410+
"video_enhancement": [
411+
"video_interlacing_task",
412+
"video_super_resolution_task",
413+
"video_quality_enhancement_task"
414+
],
415+
# media_tasks group (common)
416+
"media_tasks": [
417+
"get_media_execution_task_result"
418+
],
419+
}
420+
```
421+
226422
## License
227423

228424
MIT

0 commit comments

Comments
 (0)