Skip to main content
Glama
vidalytics

@vidalytics/mcp

Official
by vidalytics

@vidalytics/mcp

npm version CI license

One-command setup that connects your AI coding assistant to Vidalytics video analytics data via the Model Context Protocol.

Works with Claude (CLI & Desktop), Windsurf, Cursor, and any other MCP-compatible client.

Setup

npx @vidalytics/mcp install

That's it. The installer detects which AI clients you have installed, lets you pick which ones to configure, and wires them up. Restart the client — a browser window will open for OAuth authorization on first use.

Related MCP server: YouTube MCP

Cursor

Add Vidalytics to Cursor

Or via the installer:

npx @vidalytics/mcp install --client cursor

Or manually — add this to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "vidalytics": {
      "url": "https://api.vidalytics.com/public/v1/mcp"
    }
  }
}

Restart Cursor. On first use a browser window opens for OAuth authorization with your Vidalytics account — no API key or environment variables to set.

What it does

  • Detects installed MCP clients (Claude CLI, Claude Desktop, Windsurf, Cursor) by checking config files, app directories, binaries in $PATH, and app bundles (e.g. /Applications on macOS)

  • Presents an interactive checklist (detected clients pre-selected) so you configure exactly the ones you want — or pick them non-interactively with --client

  • Adds Vidalytics as an MCP server in each selected client's config

  • Verifies after writing: the config is valid and the MCP server is reachable

  • Non-interactive terminals (CI) and any explicit selection flag (--client, --all, --yes) skip the checklist and behave predictably

Available tools

Once connected, your AI assistant gains access to the tools below.

Many write tools (settings, chapters, captions, tags, CTAs, pause screens, thumbnails) save changes to the video's draft — call publish_video to make them live. Write tools require a read+write authorization; a read-only connection returns SCOPE_INSUFFICIENT.

Previewing changes. update_video_settings accepts dryRun to validate and return a before/after diff without saving. The other draft-based writes have no dryRun; preview them by saving to the draft and reading it back with the matching get_*/list_* tool (e.g. get_video_chapters, get_video_tags, get_video_captions) before you publish_video. A delete that only removes an unpublished draft edit is likewise reversible until publish; a delete against already-published content takes effect on the next publish.

Videos & metadata

Tool

Description

set_user_context

MUST be called before any other tool to enable analytics

list_videos

List videos with pagination

get_video

Get video details

get_video_by_embed_guid

Find a video by its embed GUID

update_video

Update a video's title or folder

get_video_embed

Get the embed code and configuration

get_video_settings

Get playback settings (autoplay, controls, etc)

update_video_settings

Update playback settings as a draft (dryRun validates and returns the diff only)

duplicate_video

Duplicate a video and publish the copy

publish_video

Publish a video's pending draft settings

Analytics

Tool

Description

get_video_stats

Views, play rate, watch time, conversions

get_video_dropoff

Audience retention by percentage

get_video_percentage_watched

% of viewers who reached each point

get_video_live_metrics

Real-time active viewers and watch rate

get_videos_stats_batch

Stats for up to 30 videos at once

get_videos_timeline

Timeline stats for up to 5 videos

Chapters, captions & tags

Tool

Description

get_video_chapters

List a video's chapters and whether they're enabled

set_video_chapters

Replace a video's chapter markers (draft)

get_video_captions

List a video's caption tracks

add_video_caption

Add or replace a caption track from provided text (draft)

delete_video_caption

Remove a caption language

get_video_tags

List a video's tags and custom variables

set_video_tags

Set a video's full tag list (draft)

CTAs & pause screens

Tool

Description

get_video_ctas

Get CTAs for a video

create_video_cta

Create a call-to-action on a video

update_video_cta

Update an existing call-to-action on a video

delete_video_cta

Delete a call-to-action from a video

get_video_pause_screens

Get pause screens for a video

create_video_pause_screen

Add a pause screen to a video (draft)

update_video_pause_screen

Update a pause screen on a video (draft)

delete_video_pause_screen

Remove a pause screen from a video

Thumbnails

Tool

Description

get_video_thumbnail

Get the thumbnail image URL

set_video_thumbnail_from_url

Set a video's thumbnail from a public image URL

set_video_thumbnail_from_frame

Set a video's thumbnail from one of its frames

delete_video_thumbnail

Remove a custom thumbnail and restore the default

Folders & settings templates

Tool

Description

list_folders

List video folders

create_folder

Create a video folder, optionally nested under another folder

rename_folder

Rename a video folder

list_settings_templates

List settings templates

create_settings_template

Create a settings template from a video's current settings

update_settings_template

Update a settings template (rename, re-describe, or re-snapshot from a video)

delete_settings_template

Delete a settings template

apply_settings_template

Apply a reusable player settings template to a video

Uploads

Tool

Description

upload_video_from_url

Upload a video from a remote URL

get_video_upload_url

Get a signed URL for local file upload

validate_upload

Complete a direct video upload

Account

Tool

Description

get_api_usage

Get current API usage and quota

list_connections

List apps connected to your account

revoke_connection

Disconnect an app or yourself

Options

npx @vidalytics/mcp install [flags]

  --client <names>   Configure only these clients, comma-separated
                     (claude-cli, claude-desktop, windsurf, cursor)
  --all              Configure all known clients, even if not detected
  --config <path>    Also configure a custom config file (repeatable)
  --force            Re-apply even if already configured
  --yes              Skip prompts (configure detected clients)

Run with no flags in an interactive terminal to get a checklist of clients to configure (detected ones are pre-selected; use space to toggle, enter to confirm). --client cursor,windsurf does the same selection non-interactively.

The --config flag can be repeated for multiple files. The target file must follow the { "mcpServers": {} } format used by Claude Desktop, Cursor, and Windsurf — useful for unsupported clients like Zed or VS Code with an MCP plugin.

Troubleshooting

Authorization issues, or need to re-authenticate? Reset the credentials that mcp-remote caches in your home directory, then restart the client:

OS

Command

macOS / Linux

rm -rf ~/.mcp-auth

Windows (CMD)

rd /s /q "%USERPROFILE%\.mcp-auth"

Windows (PowerShell)

Remove-Item -Recurse -Force "$HOME\.mcp-auth"

MCP Registry

This server is published to the official MCP Registry as com.vidalytics/mcp. It is a remote (streamable-http) server, so registry-aware MCP clients can connect to it directly at:

https://api.vidalytics.com/public/v1/mcp

No API key or environment variables are required — authorization is handled via OAuth on first use.

Requirements

  • Node.js 18+

  • A Vidalytics account

License

MIT

Related MCP Connectors

Related MCP Servers