← WebMCP Directory

Tool tree

matchcut.live

Media & PersonalTools verified
Website
A music video archive searchable by visual grammar, with 49,753 reasoned connections. Ask, or let the agent programme a run and say why it goes where it goes.
Explore capabilities
    search_archiveAnswer

    Search 7,139 scholarly annotated music videos (1966-2026) by artist, title, tag, technique or subculture, with optional filters. Returns matches with ids you can play. Use this for "find me something like X" questions.

    View tool JSON
    {
      "name": "search_archive",
      "kind": "answer",
      "impl": "imperative",
      "description": "Search 7,139 scholarly annotated music videos (1966-2026) by artist, title, tag, technique or subculture, with optional filters. Returns matches with ids you can play. Use this for \"find me something like X\" questions.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Free text over artist, title, tags, techniques, subcultures"
          },
          "director": {
            "type": "string",
            "description": "Filter to one director, e.g. \"Chris Cunningham\""
          },
          "narrative_type": {
            "type": "string",
            "enum": [
              "theatrical",
              "realism",
              "documentary",
              "surrealism",
              "experimental"
            ]
          },
          "visual_era": {
            "type": "string",
            "enum": [
              "vhs-aesthetic",
              "film-70s-80s",
              "early-digital-90s",
              "hd-digital-2000s",
              "4k-modern"
            ]
          },
          "year_from": {
            "type": "integer"
          },
          "year_to": {
            "type": "integer"
          },
          "tier": {
            "type": "number",
            "description": "1 is the most curatorially significant"
          },
          "limit": {
            "type": "integer",
            "description": "Default 12, max 50"
          }
        }
      }
    }
    find_by_lookAnswer

    Find videos by their VISUAL GRAMMAR rather than by genre or words. Every video is fingerprinted for motion, brightness, warmth, saturation, contrast and average shot length. Use this for "something slower", "something darker and more frantic", or to find a video that LOOKS like another one but comes from a different era.

    View tool JSON
    {
      "name": "find_by_look",
      "kind": "answer",
      "impl": "imperative",
      "description": "Find videos by their VISUAL GRAMMAR rather than by genre or words. Every video is fingerprinted for motion, brightness, warmth, saturation, contrast and average shot length. Use this for \"something slower\", \"something darker and more frantic\", or to find a video that LOOKS like another one but comes from a different era.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "like_id": {
            "type": "string",
            "description": "Match the look of this video id"
          },
          "motion": {
            "type": "string",
            "enum": [
              "low",
              "medium",
              "high"
            ]
          },
          "brightness": {
            "type": "string",
            "enum": [
              "dark",
              "medium",
              "bright"
            ]
          },
          "warmth": {
            "type": "string",
            "enum": [
              "cool",
              "neutral",
              "warm"
            ]
          },
          "pace": {
            "type": "string",
            "enum": [
              "slow",
              "medium",
              "frantic"
            ],
            "description": "From average shot length"
          },
          "exclude_same_era": {
            "type": "boolean",
            "description": "With like_id, force a different visual era"
          },
          "limit": {
            "type": "integer"
          }
        }
      }
    }
    follow_connectionAction

    Traverse the archive's 49,753 connections. Unlike a similarity score, every edge states its REASON: a shared director, era, movement or tag. Use this to move sideways through the archive and to tell the person WHY one video leads to another.

    View tool JSON
    {
      "name": "follow_connection",
      "kind": "act",
      "impl": "imperative",
      "description": "Traverse the archive's 49,753 connections. Unlike a similarity score, every edge states its REASON: a shared director, era, movement or tag. Use this to move sideways through the archive and to tell the person WHY one video leads to another.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Video id to walk out from. Defaults to what is playing."
          }
        }
      }
    }
    playAction

    Put a video on the screen the person is watching and start it. Call this whenever you name a specific video, including when answering a factual question about one. If you mention it, show it.

    View tool JSON
    {
      "name": "play",
      "kind": "act",
      "impl": "imperative",
      "description": "Put a video on the screen the person is watching and start it. Call this whenever you name a specific video, including when answering a factual question about one. If you mention it, show it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Video id from a search result"
          },
          "note": {
            "type": "string",
            "description": "One line shown to the user explaining why you picked it"
          }
        },
        "required": [
          "id"
        ]
      }
    }
    now_playingAnswer

    Read what is currently on screen, including how far through it is. Call this before commenting on a video.

    View tool JSON
    {
      "name": "now_playing",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read what is currently on screen, including how far through it is. Call this before commenting on a video.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    get_annotationAnswer

    Fetch the scholarly annotation for a video: cultural context, curatorial assessment, genre significance, the era it sits in, and the director biography. This is the material to draw facts from. Do not invent facts about a video, call this instead.

    View tool JSON
    {
      "name": "get_annotation",
      "kind": "answer",
      "impl": "imperative",
      "description": "Fetch the scholarly annotation for a video: cultural context, curatorial assessment, genre significance, the era it sits in, and the director biography. This is the material to draw facts from. Do not invent facts about a video, call this instead.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Defaults to what is playing"
          }
        }
      }
    }
    queue_setAction

    Queue several videos as a run with a title. USE THIS for any request that asks for more than one video: a set, a run, a playlist, a block, an hour of something. The videos play through in order automatically and the running order is shown on screen, so do not play them one at a time. Six to ten is a good length. Say what the thread through the set is.

    View tool JSON
    {
      "name": "queue_set",
      "kind": "act",
      "impl": "imperative",
      "description": "Queue several videos as a run with a title. USE THIS for any request that asks for more than one video: a set, a run, a playlist, a block, an hour of something. The videos play through in order automatically and the running order is shown on screen, so do not play them one at a time. Six to ten is a good length. Say what the thread through the set is.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "ids": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "note": {
            "type": "string",
            "description": "The thread running through the set"
          }
        },
        "required": [
          "ids"
        ]
      }
    }
    keepAction

    Save what is playing to the person's collection, with a short note on why they liked it. This persists in their browser between visits. Call it when they say they like something, want to remember it, or want more like it.

    View tool JSON
    {
      "name": "keep",
      "kind": "act",
      "impl": "imperative",
      "description": "Save what is playing to the person's collection, with a short note on why they liked it. This persists in their browser between visits. Call it when they say they like something, want to remember it, or want more like it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Defaults to what is playing"
          },
          "why": {
            "type": "string",
            "description": "One line on what they liked about it, in their words if they gave you any"
          }
        }
      }
    }
    forgetAction

    Remove a video from the person's collection.

    View tool JSON
    {
      "name": "forget",
      "kind": "act",
      "impl": "imperative",
      "description": "Remove a video from the person's collection.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Defaults to what is playing"
          }
        }
      }
    }
    my_tasteAnswer

    Read what this person has kept, why they kept it, and the SHAPE of it: their average motion, brightness, warmth, saturation, contrast and shot length, plus the narrative types, eras and directors they lean toward. Call this at the start of a session to know who you are talking to, and before recommending anything.

    View tool JSON
    {
      "name": "my_taste",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read what this person has kept, why they kept it, and the SHAPE of it: their average motion, brightness, warmth, saturation, contrast and shot length, plus the narrative types, eras and directors they lean toward. Call this at the start of a session to know who you are talking to, and before recommending anything.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    more_like_my_tasteAction

    Find videos that match the measured look of everything the person has kept, excluding what they already have. This is recommendation from their own collection rather than from popularity. Use it when they ask what they should watch.

    View tool JSON
    {
      "name": "more_like_my_taste",
      "kind": "act",
      "impl": "imperative",
      "description": "Find videos that match the measured look of everything the person has kept, excluding what they already have. This is recommendation from their own collection rather than from popularity. Use it when they ask what they should watch.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer"
          }
        }
      }
    }
    find_recordsAnswer

    Find real physical releases you can actually buy for the artist on screen: vinyl, CDs, cassettes. Returns pressings with year, label, catalogue number, country and the lowest price currently listed on the Discogs marketplace, plus a link to buy. Use it when someone likes what is playing and wants to own it, or asks what it is worth. Prices are live, do not guess at them.

    View tool JSON
    {
      "name": "find_records",
      "kind": "answer",
      "impl": "imperative",
      "description": "Find real physical releases you can actually buy for the artist on screen: vinyl, CDs, cassettes. Returns pressings with year, label, catalogue number, country and the lowest price currently listed on the Discogs marketplace, plus a link to buy. Use it when someone likes what is playing and wants to own it, or asks what it is worth. Prices are live, do not guess at them.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "artist": {
            "type": "string",
            "description": "Defaults to the artist on screen"
          },
          "title": {
            "type": "string",
            "description": "Optional album or track to narrow it"
          },
          "format": {
            "type": "string",
            "enum": [
              "Vinyl",
              "CD",
              "Cassette"
            ],
            "description": "Optional"
          }
        }
      }
    }
    archive_statsAction

    Describe what is in the archive: size, year range, directors, eras and how it was annotated. Use to orient yourself before searching.

    View tool JSON
    {
      "name": "archive_stats",
      "kind": "act",
      "impl": "imperative",
      "description": "Describe what is in the archive: size, year range, directors, eras and how it was annotated. Use to orient yourself before searching.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }