Quickstart
There are two ways to start and they take about the same time. Connect the MCP server to your agent and paste a link into the chat, or send one HTTP request and read the sheets back yourself. A free account starts with 60 credits and needs no card.
Last updated
From an agent
Nothing installs. The server runs on our infrastructure and your client connects to a URL — which is also why this route works from a phone.
Add the connector
Use the button below, or paste the server URL into your client's MCP settings. There is no API key in the link, so it is safe to share or bookmark.Sign in
Claude sends you through a consent screen naming exactly which scopes are being granted. Approving takes one click and lands you back in the chat.Paste a link and ask
Any YouTube, TikTok, Instagram, X, Facebook, Vimeo, Twitch, Dailymotion or Reddit URL. The agent calls watch_video and answers from the frames rather than from the description.
claude mcp add --transport http playhead https://mcp.tryplayhead.com/mcp
# then /mcp to sign inhttps://www.tiktok.com/@user/video/730… — what is the hook here,
and exactly when does it end?Every other client — ChatGPT, Cursor, VS Code, Codex, LM Studio — is on the connect page, with a button or a config block for each.
From your own code
The same engine, called directly. One bearer token, JSON in and JSON out.
Create an API key
In the dashboard under Keys. It is shown once — we store only a hash, so a lost key is replaced rather than recovered.Install the SDK, or skip it
npm install @playhead/sdk if you are in Node. Everything it does is one HTTP request, so curl or any other language works just as well.Make one call
Omit start and end and the answer covers the complete video. Read coverage.is_full_video on the response to confirm it.
npm install @playhead/sdkimport { Playhead } from "@playhead/sdk";
const playhead = new Playhead(); // reads PLAYHEAD_API_KEY
const video = await playhead.watch({
url: "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
});
console.log(video.coverage.is_full_video); // true
console.log(video.technical?.scene_cuts); // [3.4, 7.8, 12.1, …]
console.log(video.transcript?.text);
for (const sheet of video.sheets) {
console.log(sheet.t0, "→", sheet.url);
}curl -X POST https://api.tryplayhead.com/v1/frames \
-H "Authorization: Bearer $PLAYHEAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}'What to read next
Three pages cover almost everything people come back for.
| If you want to | Read |
|---|---|
| Understand why a level exists, and pick the right one | Detail levels |
| See every parameter and every response field | REST API reference |
| Copy a working call for a job you actually have | Examples |
| Know how this differs from claude-video or a script of your own | Comparisons |