{"name":"com.instavar/mcp-server","slug":"instavar-mcp-server","title":"Instavar Video Templates and Studio","description":"Free Remotion video templates and creative guides; optional hosted Studio rendering and publishing.","url":"https://mcp.market/server/instavar-mcp-server","rating":null,"grade":"A","score":85,"certified":false,"status":"active","category":"media","tags":["media"],"presence":{"score":30,"stars":0,"forks":0,"downloads_week":213,"last_push_at":"2026-09-20T20:28:33.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/instavar/mcp-server","website":"https://instavar.com/remotion","version":"0.5.0","remotes":[],"packages":[{"registryType":"npm","identifier":"@instavar/mcp-server","version":"0.5.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Optional key from https://instavar.com/studio/settings that unlocks hosted workflows.","isSecret":true,"name":"INSTAVAR_API_KEY"},{"description":"Override the Instavar API host. Defaults to https://instavar.com.","default":"https://instavar.com","name":"INSTAVAR_BASE_URL"}]}],"tools":[{"name":"apply_design_actions","description":"Apply a reviewed group of closed, invertible design actions to an expected document version. Inspect first. A stale version returns a readable conflict and does not overwrite customer work.","write_action":false,"price_micros":0,"input_schema":null},{"name":"approve_job","description":"Approve a rendered job so it becomes publishable (draft_ready/awaiting_review/needs_changes -> approved) and revoke active review links. Required before publish_job will accept the job.","write_action":false,"price_micros":0,"input_schema":null},{"name":"approve_workflow","description":"Validate and approve the inspected workflow version. This does not approve or publish the video job.","write_action":false,"price_micros":0,"input_schema":null},{"name":"audit_video_qa","description":"Run Qwen3.6-Plus as an advisory second evaluator against the same current frozen video. Use only on an explicit request for another model, second opinion, or evaluator escalation. The result is separate from default QA and has no publish-gate effect.","write_action":true,"price_micros":0,"input_schema":null},{"name":"compare_workflows","description":"Compare two durable workflow versions field by field.","write_action":false,"price_micros":0,"input_schema":null},{"name":"connect_account","description":"Start connecting a social account headlessly (no local browser needed). Returns an approve URL + a short confirm code: open the URL in a browser signed in to Instavar, check the code matches THIS terminal, and approve. Then poll connect_account_status with the returned pairingId until it reports 'connected'.","write_action":false,"price_micros":0,"input_schema":null},{"name":"connect_account_status","description":"Poll a pending account connection started by connect_account. Returns status 'pending' | 'connected' | 'expired', plus the connected account label once connected.","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_video_brief","description":"Create a new video job from a structured brief and trigger the render pipeline. Returns the job and run IDs immediately; rendering continues asynchronously (typically a few minutes) \\u2014 poll get_job_status until draft_ready. Requires a key with write scope. To change an existing job, use edit_video_brief instead of creating a duplicate.","write_action":true,"price_micros":0,"input_schema":null},{"name":"diagnose_render","description":"Build one read-only troubleshooting snapshot from the current job status and video state. Reports run failures, artifact binding, duration evidence, retry recommendations, rights checks, and whether blank-frame or placeholder verification evidence exists. It does not visually inspect the video.","write_action":false,"price_micros":0,"input_schema":null},{"name":"diagnose_render_error","description":"Classify a local validation or render error.","write_action":false,"price_micros":0,"input_schema":null},{"name":"draft_workflow","description":"Create a durable Documentary Journey or Transformation Montage workflow version. Inspect first and pass its current version, or 0 only when no workflow exists.","write_action":true,"price_micros":0,"input_schema":null},{"name":"edit_video_brief","description":"Edit an existing job's brief (only provided fields change). Changing the script, caption, title, lessonTitle, objective, steps, scenes, aspectRatio or voiceId triggers a re-render and returns the new run ID; objective also re-routes the composition. Changing only publishTarget updates the job's target platform without re-rendering. For a brand-new video use create_video_brief.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_capabilities","description":"Call first. Reports free local features and optional account features.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cost_summary","description":"Query production infrastructure costs (Lambda, RunPod, R2, WaveSpeed, PoYo), optionally with reconciliation drift. This is spend data, not engagement \\u2014 for a published job's audience numbers use get_job_metrics.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_creative_guide","description":"Read practical guidance before drafting concise plain or poetic copy, choosing carousel stories, designing visuals or recording human feedback. Returns guidance for the calling assistant to apply, not generated copy or saved feedback. Omit guideId to list guides.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_example","description":"Return a starter example for one template.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_job_metrics","description":"Get the latest platform engagement metric snapshots for a published job (newest first). Read-only. Only meaningful after publish_job; for render progress use get_job_status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_job_status","description":"Get detailed status for a job: runs, artifacts, verifications, plus the current video and thumbnail URLs. The main polling target after create_video_brief or edit_video_brief; for post-publish engagement numbers use get_job_metrics instead.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_render_instructions","description":"Return clone, install, validate, preview, and render commands.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_template","description":"Get one public template contract.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_video_schema","description":"Return the public VideoSpec JSON Schema.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_video_state","description":"Get the materialized video state for a job (composition decisions: scenes, duration, aspect ratio, etc.). Use it to inspect what the video contains; for pipeline progress and video URLs use get_job_status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inspect_design_document","description":"Inspect one versioned design document and its recent immutable version history. This tool never changes the document.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inspect_workflow","description":"Inspect the current Studio workflow and its version history for a job.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_jobs","description":"List recent video jobs for the current organization (newest first). Start here to discover job IDs; for one job's full detail use get_job_status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_templates","description":"List public templates, optionally filtered by aspect ratio.","write_action":false,"price_micros":0,"input_schema":null},{"name":"patch_workflow","description":"Create a new workflow version by recursively merging a patch into the current version.","write_action":true,"price_micros":0,"input_schema":null},{"name":"preview_workflow","description":"Return the current workflow's compiled UniversalVideo brief for a safe pre-render preview.","write_action":false,"price_micros":0,"input_schema":null},{"name":"publish_job","description":"Publish an APPROVED job to its connected social destination via the gated publish API. All production gates run (paid plan, ownership, abuse, QA, disclosure, destination, rights, moderation). Requires a key with publish scope; the post goes live on the external platform and cannot be recalled by the API. For YouTube pass youtubePrivacyStatus:'private' for safe runs.","write_action":true,"price_micros":0,"input_schema":null},{"name":"regenerate_narration","description":"Regenerate narration from the unchanged durable brief and then regenerate its dependent video in a paid adaptation run. Use only on an explicit user request or when get_job_status recommends retryTarget tts. This is an audio_and_video cascade, consumes rerender quota, and requires fresh QA.","write_action":false,"price_micros":0,"input_schema":null},{"name":"retry_video_qa","description":"Retry the default QA evaluator against the same current frozen video. Use only when get_job_status recommends retryTarget qa_only, or when QA is missing, unavailable, or parse-degraded. This does not regenerate media and cannot clear publish gates by itself.","write_action":false,"price_micros":0,"input_schema":null},{"name":"scaffold_video_spec","description":"Return a deterministic VideoSpec skeleton without writing files.","write_action":false,"price_micros":0,"input_schema":null},{"name":"validate_workflow","description":"Validate and compile the inspected workflow version without rendering or publishing it.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":85,"grade":"A","scanned_at":"2026-09-20T20:55:47.889Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T20:55:47.808Z","components":{"code":{"score":25,"max":25,"notes":["2 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","website matches verified namespace"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@instavar/mcp-server","version":"0.5.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-09-14T08:54:17.065Z","repositoryUrl":"git+https://github.com/instavar/mcp-server.git","weeklyDownloads":213}],"repo":{"found":true,"owner":"instavar","repo":"mcp-server","archived":false,"pushedAt":"2026-09-20T20:28:33Z","stars":0,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/271711664?v=4","ownerCreatedAt":"2026-03-28T07:34:07Z"},"icon":{"url":"https://instavar.com/_next/static/media/apple-icon.6a30cfa3.png","source":"site","width":180,"height":180},"presence":{"stars":0,"forks":0,"downloadsWeek":213,"license":"MIT","lastPushAt":"2026-09-20T20:28:33.000Z","score":30}}}},"grade_history":[],"reviews":[]}