makia-vision-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@makia-vision-mcpAnalyze this video and summarize the key moments with timestamps."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Makia Vision MCP — Media Intelligence for any MCP client
English | فارسی
One MCP server that gives your agent eyes and hands for media: deterministic video/image/audio engines (FFmpeg, sharp) plus pluggable AI providers (Gemini, Qwen3-VL, any OpenAI-compatible endpoint, whisper.cpp). Every answer is structured, timestamped, and evidence-backed — the server returns video_id + start_ms + end_ms windows you can re-verify with video_frame/video_clip.
video_analyze → { answer, events: [{start_ms, end_ms, description, confidence, evidence}] }
→ video_clip(evidence) → independent verificationDesign rules (from SPEC.md)
Video is a first-class sibling of images, not a mode of
image_analyze.Time is canonical — integer milliseconds internally;
HH:MM:SS.mmmat the edge. Never frame numbers.Artifacts are immutable — every operation creates a new artifact with lineage. Never overwrites sources.
Every AI claim carries evidence — no evidence → marked unverified.
Deterministic first — if FFprobe/FFmpeg can answer, no AI call happens.
Privacy is structural — only
*_analyze/video_transcribemay transmit media, only whencloud_policyallows.No raw ffmpeg args — structured ops compile to FFmpeg invocations internally.
Related MCP server: ffmpeg-mcp
Quickstart
Prereqs: Node ≥ 22.5 and ffmpeg/ffprobe on PATH (Windows: winget install ffmpeg; macOS: brew install ffmpeg; Debian/Ubuntu: sudo apt install ffmpeg; Arch: sudo pacman -S ffmpeg). Check with makia-vision-mcp --doctor.
// Standard config — works in Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, Cline, …
{
"mcpServers": {
"makia-vision": {
"command": "npx",
"args": ["-y", "makia-vision-mcp@latest"],
"env": {
// optional: enables AI analysis. All deterministic tools work without keys.
"GEMINI_API_KEY": "AIza…"
}
}
}
}claude mcp add makia-vision -s user -e GEMINI_API_KEY=AIza… -- npx -y makia-vision-mcp@latest
# scopes: -s user (all projects) | -s project (committed .mcp.json) | -s local (this project only)Build the bundle: npm pack && npx @anthropic-ai/mcpb pack packaging/mcpb/manifest.json — then open the resulting .mcpb file, or paste the standard config into claude_desktop_config.json.
Add to .vscode/mcp.json (workspace) or user settings — standard snippet above. For secrets prefer input variables: "inputs": [{ "name": "gemini", "type": "promptString", "password": true }].
~/.cursor/mcp.json (global) or .cursor/mcp.json (project) — standard snippet above; ${env:GEMINI_API_KEY} interpolation supported.
~/.gemini/settings.json → mcpServers block — standard snippet above.
{
"mcpServers": {
"makia-vision": {
"command": "npx", "args": ["-y", "makia-vision-mcp@latest"],
"env": {
"MAKIA_CLOUD_POLICY": "LOCAL",
// any OpenAI-compatible local server (LM Studio :1234, llama.cpp, vLLM, Ollama /v1):
"OPENAI_BASE_URL": "http://127.0.0.1:1234/v1",
"WHISPER_CPP_BIN": "/usr/local/bin/whisper-cli",
"WHISPER_CPP_MODEL": "/models/ggml-base.bin"
}
}
}
}MAKIA_CLOUD_POLICY=LOCAL guarantees media never leaves the machine; the mock-friendly openai-compat path covers local multimodal servers.
Tools (v1 — see media_capabilities for live status)
Tool | Deterministic | Description |
| ✔ | Import from path or SSRF-hardened URL → |
| ✔ | Codec/streams/duration/fps/chapters/metadata |
| ✔ | Frames at exact timestamps or uniform sampling → |
| ✔ | FFmpeg scene detection → |
| ✔ | Frame-accurate |
| ✔ | crop/resize/rotate/fps/speed; mp4/webm/mkv |
| ✔ | Extract audio track → |
| ✔/AI | Subtitle streams → whisper.cpp → cloud ASR → |
| ✔ | extract / import / export (srt/vtt) |
| ✔ | Stream properties + PSNR/SSIM |
| ✔ | Export payload (never overwrites) |
| ✔ | Dimensions + dominant color palette + exact pixel color |
| ✔ | resize/crop/rotate/flip/convert/watermark/blur/sharpen/modulate/pad → new artifact |
| AI | Vision-provider analysis of any image artifact |
| AI | 14 modes (summary/timeline/locate_event/ocr/security/…), fast/balanced/deep, adaptive coarse→fine |
| AI | Structured event timeline (optionally focused) |
| ✔ | Store management + live capability report |
Storage
$MAKIA_VISION_HOME (default ~/.makia-vision)
artifacts/<vid_|img_|aud_|trn_|scm_…>/meta.json + data.<ext>
tmp/ # scratch, swept at startup + TTL
route-log.ndjson # routing/provider decisions (observability)Configuration
// ~/.makia-vision/config.json (all optional)
{
"models": {
"image": { "provider": "gemini", "model": "gemini-3.8-flash" },
"video": { "provider": "qwen", "model": "qwen3-vl-plus" },
"transcription": { "provider": "openai", "model": "whisper-1" },
"cloud_policy": "HYBRID"
},
"security": {
"max_duration_s": 14400, "max_width": 8192, "max_height": 8192,
"max_pixels_per_frame": 8294400, "max_total_pixels": 497664000,
"max_streams": 64, "max_bytes": 21474836480, "probe_timeout_ms": 30000, "op_timeout_s": 600
},
"keep_artifacts_h": 72
}Env: MAKIA_VISION_HOME, MAKIA_CLOUD_POLICY, GEMINI_API_KEY/GOOGLE_API_KEY, OPENAI_API_KEY, OPENAI_BASE_URL, QWEN_API_KEY/DASHSCOPE_API_KEY, WHISPER_CPP_BIN, WHISPER_CPP_MODEL, MAKIA_VISION_FFMPEG_DIR (air-gapped), HTTPS_PROXY (fetcher/provider calls).
Universal install matrix
Platform | Status |
Windows x64 / ARM64 | npm prebuilt via |
macOS Intel / Apple Silicon | npm prebuilt via |
Linux x64 / ARM64 / armv7 (glibc, musl) | npm prebuilt via |
Offline / air-gapped |
|
Security posture
Decode budgets before any decode: duration/width/height/total-pixels/streams/bytes caps; probing under strict timeouts (malformed-container abuse).
URL ingestion through a hardened fetcher: scheme allowlist, DNS pinning, private-network denial (CGNAT/link-local/loopback), redirect validation, size caps. Never
ffmpeg -i URL.Immutability: ops never overwrite sources; exports refuse to overwrite existing files.
Prompt injection: images/video may contain adversarial content; the server returns structured evidence (not free-text instructions) and marks unverified claims.
Error taxonomy: structured
{error:{code,message}}across the MCP boundary — never raw stack traces.
Development
npm install # sharp prebuilts fetched per-platform
npm run build # tsc → dist/
npm test # unit + ffmpeg integration + MCP stdio e2e
npm run dev # stdio via tsx
node dist/index.js --http --port 8629 # Streamable HTTP on 127.0.0.1
node dist/index.js --doctor # capability health checkLicense: project code MIT — see LICENSE-NOTES.md for the FFmpeg/libvips/provider license chain. Architecture: SPEC.md · research: RESEARCH.md · plan: PLAN.md.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP tools for FFmpeg-style video and audio processing through FFMPEG API.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Remote MCP for C2PA intake verifier MCP, structured receipts, audit logs, and reviewer-ready evidenc
Create and manage AI image and video generations through Quriov's fixed public MCP tools.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables comprehensive video and audio processing using FFmpeg, supporting tasks like metadata extraction, clipping, scaling, and adding transitions or overlays. It provides a high-performance interface for building media processing microservices via FastMCP.1210-
- FlicenseNot gradedqualityDmaintenanceEnables comprehensive video/audio processing, analysis, and streaming via natural language by exposing 40+ FFmpeg tools as MCP tools.22-
- AlicenseAqualityBmaintenanceProvides MCP-compatible AI agents with a verify_image tool to check a photo's capture time and provenance using C2PA, EXIF, XMP metadata, and pixel forensics, returning a verdict and confidence score.1862MIT
- AlicenseAqualityCmaintenanceGive MCP-compatible AI agents image analysis, metadata inspection, cropping, OCR, and image comparison through any OpenAI-compatible vision model.6MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ParsaSarcheshmeh/makia-vision-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server