Skip to main content
Glama

videoseek-mcp

Find anything in any video. Semantic video search, video Q&A, persistent memory, and social media import — all as MCP tools for your AI agent.

What can it do?

Give your AI agent (Claude, Cursor, Windsurf, etc.) the ability to:

  • Search videos by meaning — "find the moment where someone opens the gift" across your entire library

  • Ask questions about videos — multi-turn conversations with one video or your whole collection

  • Remember everything — persistent text + video memory that never forgets (Memory Augmented Generation)

  • Import from social media — pull and index content from TikTok, YouTube, Instagram, and 15+ platforms

  • Analyze on-the-fly — describe any video or image from URL without uploading

  • Transcribe — get visual scene descriptions or spoken word transcripts

Related MCP server: klaket-mcp

Quick Start

1. Get an API Key

Sign up at memories.ai and grab your key from the API keys page. Free tier includes 100 credits/month.

2. Install

git clone https://github.com/kennyzheng-builds/videoseek-mcp.git
cd videoseek-mcp
npm install --include=dev
npm run build

3. Connect to your AI client

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "videoseek": {
      "command": "node",
      "args": ["/path/to/videoseek-mcp/build/index.js"],
      "env": {
        "MEMORIES_API_KEY": "your-api-key"
      }
    }
  }
}

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "videoseek": {
      "command": "node",
      "args": ["/path/to/videoseek-mcp/build/index.js"],
      "env": {
        "MEMORIES_API_KEY": "your-api-key"
      }
    }
  }
}

Claude Code

export MEMORIES_API_KEY="your-api-key"
claude mcp add videoseek -- node /path/to/videoseek-mcp/build/index.js

Tools (18)

Video Management

Tool

What it does

upload_video

Upload and index a video from URL

list_videos

List all indexed videos

get_video_status

Check processing status

delete_videos

Remove videos from your library

get_transcription

Get visual or audio transcription

Tool

What it does

search_videos

Semantic search across your private video library

search_public

Search TikTok, YouTube, Instagram by meaning

search_audio

Find when something was said in a video

Video Q&A

Tool

What it does

chat_with_video

Ask questions about specific videos (multi-turn)

chat_personal

Ask questions across your entire library + memories

Persistent Memory

Tool

What it does

add_memory

Store text with semantic indexing

search_memories

Find relevant memories by meaning

list_memories

List all stored memories

Vision Analysis

Tool

What it does

caption_video

Analyze a video from URL (no upload needed)

caption_image

Analyze an image from URL

Social Media Import

Tool

What it does

import_from_url

Import from any social media URL

import_by_hashtag

Import by hashtag from TikTok/YouTube/Instagram

import_by_creator

Import from a creator's profile

Resources & Prompts

Resources: memories://videos (your library), memories://memories (your stored knowledge)

Prompt templates: analyze-video, social-media-research, build-knowledge-base

Example Conversations

"Find a moment"

You: Find all moments where someone is cooking pasta

Agent uses search_videos → returns timestamped video segments

"Understand a video"

You: What's happening in this video? [URL]

Agent uses caption_video → instant analysis without uploading

"Research TikTok"

You: Research AI trends on TikTok

Agent uses search_public → import_from_url → chat_personal for insights

"Build knowledge"

You: Summarize all my meeting recordings

Agent uses list_videos → get_transcription → add_memory for key takeaways

How It Compares

Feature

videoseek-mcp

TwelveLabs MCP

Persistent memory (text + video)

Yes

No

Social media import (15+ platforms)

Yes

No

Memory Augmented Generation

Yes

No

Free tier

100 credits/month

10 hours

Multi-video Q&A

Yes

Yes

Semantic search

Yes

Yes

Environment Variables

Variable

Required

Default

Description

MEMORIES_API_KEY

Yes

—

API key from memories.ai

MEMORIES_UNIQUE_ID

No

"default"

Namespace for multi-tenant isolation

Development

npm install --include=dev
npm run build          # compile TypeScript
npm run dev            # watch mode
npx @modelcontextprotocol/inspector node build/index.js   # test interactively

Architecture

videoseek-mcp/
├── src/
│   ├── index.ts     # MCP server — 18 tools, 2 resources, 3 prompts
│   └── client.ts    # Video understanding API client
├── build/           # Compiled JS (generated)
├── package.json
└── tsconfig.json

TypeScript + Zod schemas + stdio transport. No dependencies beyond MCP SDK.

License

MIT

Available Tools

18 tools
add_memoryAdd MemoryA

Store a text memory with semantic indexing. Memories are searchable and integrated into personal chat responses via Memory Augmented Generation (MAG). Use this to store notes, meeting summaries, insights, or any text knowledge.

Inputs: content (required), unique_id, tags.

caption_imageAnalyze Image (Caption)A

Analyze an image from URL using AI vision. Describe scenes, identify objects, read text, and answer questions about the image.

Inputs: image_url (required), prompt (required), system_prompt.

caption_videoAnalyze Video (Caption)A

Analyze a video from URL without uploading to your library. Uses the Large Visual Memory Model (LVMM) to understand and describe video content. Supports optional reasoning mode for complex analysis tasks.

Inputs: video_url (required), prompt (required), system_prompt, thinking.

chat_personalChat with Personal LibraryA

Ask questions across your entire video and memory library. This is the most powerful query tool — it combines video understanding with text memories (MAG: Memory Augmented Generation) to provide comprehensive answers. Recommended for general questions about your content.

Inputs: prompt (required), unique_id, session_id.

chat_with_videoChat with VideoB

Ask questions about specific videos using natural language. The AI analyzes the video content and provides detailed answers. Supports multi-turn conversations via session_id.

Inputs: video_nos (required), prompt (required), unique_id, session_id.

delete_videosDelete VideosB

Delete one or more videos from your VideoSeek library by their video numbers.

Inputs: video_nos (required), unique_id.

get_transcriptionGet TranscriptionA

Retrieve the transcription of a video. Supports both video transcription (visual scene descriptions) and audio transcription (spoken words).

Inputs: video_no (required), type, unique_id.

get_video_statusGet Video StatusA

Check the processing status of a video by its task ID. Returns video numbers and their current status (PARSE=ready, UNPARSE=processing, FAIL=failed).

Inputs: task_id (required), unique_id.

import_by_creatorImport by CreatorA

Import videos from a social media creator's profile URL. Indexes their recent videos into your library for analysis.

Inputs: creator_url (required), count, unique_id.

import_by_hashtagImport by HashtagB

Import videos from a social media platform by hashtag. Automatically imports and indexes matching videos into your library.

Inputs: hashtag (required), platform, count, unique_id.

import_from_urlImport from URLA

Import a video from a social media URL (TikTok, YouTube, Instagram, Twitter, etc.) directly into your VideoSeek library for indexing and analysis.

Inputs: url (required), unique_id, tags.

list_memoriesList MemoriesB

List all stored text memories in the current namespace.

Inputs: unique_id, page, page_size.

list_videosList VideosA

List all indexed videos in your VideoSeek library. Supports pagination and filtering by status.

Inputs: unique_id, page, size, status.

search_audioSearch Audio TranscriptsB

Search within a specific video's audio transcripts. Useful for finding when specific topics were discussed in a video.

Inputs: video_no (required), query (required), unique_id.

search_memoriesSearch MemoriesA

Semantic search across your stored text memories. Returns the most relevant memories ranked by similarity to your query.

Inputs: query (required), unique_id, page, page_size.

search_publicSearch Public PlatformsB

Search for videos on public platforms (TikTok, YouTube, Instagram) using semantic natural language queries. Great for content research and discovery.

Inputs: query (required), platform, top_k.

search_videosSearch VideosB

Semantic search across your private video library using natural language. Find specific moments, scenes, objects, or actions across all your indexed videos. Returns matching video segments with timestamps.

Inputs: query (required), unique_id, top_k, tag, +1 more.

upload_videoUpload VideoA

Upload and index a video from a URL into your VideoSeek library. Returns a videoNo for tracking. The video will be processed asynchronously — use get_video_status to check when it's ready.

Inputs: url (required), unique_id, callback, tags.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 18 tools

    Disambiguation5/5

    All 18 tools have clearly distinct purposes, covering memory management, video operations, imports, and searches without overlap. Even similar tools like chat_personal and chat_with_video target different scopes (library-wide vs per-video).

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using underscores (e.g., add_memory, caption_image, delete_videos). No mixing of conventions or camelCase.

    Tool Count5/5

    18 tools is well-scoped for a video and memory management server. The count covers all necessary operations without being excessive or sparse.

    Completeness5/5

    The tool set provides comprehensive CRUD-like operations for videos (upload, list, delete, get status, transcribe, caption), search (semantic, audio, public), chat, imports, and memory. No obvious gaps for the intended domain.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Provides AI agents with persistent, searchable memory that survives across conversations using semantic search, temporal versioning, and smart organization. Enables long-term context retention and cross-session continuity for AI assistants.
      14
      -
    • A
      license
      A
      quality
      C
      maintenance
      Let AI agents watch videos: local transcripts, speaker labels, scenes, chapters and exact-moment search from any video URL or file. Fully local, no API keys.
      4
      3
      AGPL 3.0