Skip to content

How to Connect an AI Assistant

Fast Video Cataloger can be connected to an AI assistant such as Claude, so you can ask for footage in your own words instead of building a search. The assistant can look through your videos, scenes, transcripts and cast, look at the actual scene thumbnails to judge what is in a shot, and tag videos or gather them into bins for you.

Everything stays on your machine. The assistant reaches your catalog through an address on your own computer, and no video is ever uploaded.

What it connects to

This is worth being clear about before you start: the assistant does not connect to Fast Video Cataloger itself. It connects to the Fast Video Cataloger server. Having the program open on your desktop is not enough - if you have never shared a catalog, there is nothing for the assistant to talk to.

Three things follow from that:

  • The server is installed as a Windows service, so it keeps running whether or not Fast Video Cataloger is open. The assistant works with the program closed.
  • The server serves the one catalog you shared. Opening a different catalog in the program does not change what the assistant sees - to point it somewhere else, share that catalog instead.
  • After the wizard, the program is working through that same server, so you and the assistant are looking at the same catalog.

What you need

The connection is made by fvc-mcp.exe, which is installed with Fast Video Cataloger. It speaks the Model Context Protocol - the standard assistants use to reach outside systems - and it talks to the server over the same web address you would use in a browser.

Start the server from the start page's Server section: click Setup and follow the wizard. It installs the server, opens the firewall and connects your application to it. When it finishes you have a server on an address like http://localhost:8754.

The assistant needs an API key to log in with. A normal login expires after eight hours, which is no use to something running unattended. An administrator creates keys, and each one carries its own role - give the assistant a Viewer key if it only needs to search and read, and an Editor key only if you want it changing your catalog.

Keys are created with the Manage Users button on the start page's Server section - the button appears once the server is running, next to Stop server. No login is needed: the application that shared the catalog is already connected to its own server as the administrator. The User Management window lists the keys, Create key asks for a name, a role and a lifetime, and the key is shown once with a Copy button.

You may notice an admin account already in that window that you never created. Every catalog gets one automatically, with the password admin - it is what the application itself connects with. Change that password before the server is reachable from other machines.

The same can be done with two calls to the server's REST API. Log in as an administrator (the password is admin until it has been changed) to get a session token, then create the key with it:

curl -s -X POST http://localhost:8754/api/v1/auth/login -H "Content-Type: application/json" -d "{\"username\":\"admin\",\"password\":\"...\"}"
# copy data.token from the answer, then:
curl -s -X POST http://localhost:8754/api/v1/apikeys -H "Authorization: Bearer <session token>" -H "Content-Type: application/json" -d "{\"name\":\"claude desktop\",\"role\":\"Viewer\",\"expiresInDays\":365}"

The answer contains the key once, as data.key, a string starting with fvc_. Copy it straight into the assistant's settings below; it is not stored and cannot be shown again. See the API Keys section of the REST API reference for listing and revoking keys.

Setting up the assistant

Assistants are pointed at a connector with a small settings file naming the program to run. The details differ between applications; for Claude Desktop the file is claude_desktop_config.json:

{
  "mcpServers": {
    "fast-video-cataloger": {
      "command": "C:\\Program Files\\FastVideoCataloger\\fvc-mcp.exe",
      "env": {
        "FVC_SERVER_URL": "http://localhost:8754",
        "FVC_API_KEY": "fvc_your_key_here"
      }
    }
  }
}

Restart the assistant afterwards - the settings are read when it starts.

Check that it worked

Ask it "How many videos are in my Fast Video Cataloger catalog?" You can check the answer against your own window, so it tells you the connection, the key and the catalog are all right. If the assistant answers from somewhere else instead, such as a cloud drive you have also connected, name it in the question: "Using the fast-video-cataloger connector, how many videos are in my catalog?"

What to ask it

The Connect an AI Assistant page in the server guide has a list of questions to try, each one tested against a real catalog, along with what every tool does. A few to start with:

  • What is said in the first couple of minutes of "[one of your videos]"?
  • Look at a few scenes from "[one of your videos]" and tell me what the footage actually shows.
  • Which of my videos have someone saying "[a word you know is spoken]" out loud?
  • Create a bin called "Review" and add the videos where someone says "[your word]".

The one worth trying first is asking it to look at scenes and tell you what they show. The assistant fetches the actual frames rather than guessing from file names, which is the difference between this and searching a folder.

Things to know

Only videos you have transcribed can be searched for spoken words, and the search matches the words as they were transcribed - there is no spelling correction, so "colour" and "color" are different searches and the one that does not match simply returns nothing.

Scene searches use the keywords in your catalog, so it is worth asking "What keywords can I search for?" before guessing. That list mixes keywords you typed with ones written automatically by object detection.

The assistant can create bins and add videos to them, but it cannot delete a bin or take a video out of one - do that in Fast Video Cataloger. It also cannot play a video, capture a frame at an exact time, or drive the player; those are done from the program itself or from the scripting API.