A self-hosted MCP server that connects AI clients to local media-generation backends like ComfyUI and Blender, and provides built-in utilities for video/audio analysis, editing, subtitles, speech, and scene detection via a persistent file cache.
Warning. Serious findings were identified. Review the full report before connecting. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
the-code-learner
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.
COMFYUI_SCHEMECOMFYUI_HOSThost.docker.internalCOMFYUI_PORTCOMFYUI_BASE_PATHMCP_LISTEN_PORTMCP_RUN_UIDMCP_RUN_GIDMAX_UPLOAD_MBMAX_INLINE_OUTPUT_MBSCAN_MAX_FILESFFMPEG_TIMEOUT_SECHYPERFRAMES_TIMEOUT_SECCF_ACCESS_TEAM_DOMAINCF_ACCESS_AUDAccess application audience tag>PUBLIC_BASE_URLEvery normal cache metadata object also contains /files/{file_id} and, when is configured, a complete authenticated download URL.VIDEO_MCP_DATA_ROOTHYPERFRAMES_PROJECTS_ROOTVIDEO_MCP_APP_VERSIONSILERO_VAD_MODEL_PATHWHISPER_CPP_BINARYWHISPER_MODEL_PATHPIPER_ENABLEDBLENDER_BRIDGE_BINDBLENDER_BRIDGE_PORTBLENDER_BRIDGE_TOKENsame long random token used by the host bridge>BLENDER_BRIDGE_ROOTBLENDER_BINARYBLENDER_BRIDGE_MAX_INPUT_MBBLENDER_BRIDGE_MAX_SCRIPT_CHARSBLENDER_BRIDGE_MAX_TIMEOUT_SECBLENDER_BRIDGE_MAX_LOG_CHARSBLENDER_BRIDGE_JOB_TTL_SECPIPER_VOICES_ROOTBLENDER_BRIDGE_URLBLENDER_BRIDGE_TIMEOUT_SECBLENDER_INPUT_DIRBLENDER_OUTPUT_DIRTool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
97/97 tools missing one or more hints — inventory_summary (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); list_loaded_nodes (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_node_definition (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +94 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Destructive tools are labelled
10 tools perform destructive updates without destructiveHint — concat_videos deletes at line 520 (shutil.rmtree(temp, ignore_errors=True)); denoise_voice deletes at line 73 (finally:shutil.rmtree(w,ignore_errors=True)); detect_speech_segments deletes at line 103 (finally:shutil.rmtree(w,ignore_errors=True))
Add destructiveHint:true to any tool whose handler calls .delete(), .upsert(), .update(), unlink, rm, DELETE, DROP, REPLACE INTO, or any operation that overwrites existing data.
Descriptions match behaviour
1 tool describes read intent but its handler mutates — cache_output (line 326: out.write_bytes(blob))
Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.
Tool test coverage
75/97 tools referenced in tests (77%)
Write tests that reference each tool by name so every tool has at least one test.
Secrets stay with their owner
5 secret/sensitive values flow into network calls (BLENDER_BRIDGE_TOKEN → dynamic, BLENDER_BRIDGE_TOKEN → dynamic)
Audit where credentials are sent. A NOTION_TOKEN should only reach api.notion.com — never a third-party host.
Tool description accuracy
cache_output: description implies read-only but handler writes/deletes/executes
Update tool descriptions to accurately reflect all capabilities — especially write, delete, or execute operations.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/the-code-learner-mcp-video-gen-f8md5i)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check