ScriptHaul API
Log inGet API key

Agent skill

Install ScriptHaul's MIT-licensed instructions in a compatible assistant:

npx skills add AudeLesa/agent-skills --skill scripthaul-transcripts

The public skill repository contains instructions for discovery, channel resolution, latest uploads, language handling, transcript fetches, durable bulk jobs, scoped library search, and monitors. It teaches costs, bounded polling, and how to deliver output links without pasting hundreds of transcripts. Installing the skill does not connect an account or include credentials: use your assistant's MCP setup guide, then ask it to use ScriptHaul.

Try “Find one page of TED talks about memory” on the account server. search_youtube costs one credit per delivered page, with an identical page retried within 60 seconds free. resolve_channel and get_latest_videos cost zero. A successful cold transcript costs one credit; cache hits and failures cost zero.

For questions about what was said, the skill teaches the library workflow: check get_library, explain missing cold captions, create an authorized bulk job, then use search_transcripts and cite returned timestamp URLs. Coverage and scoped search cost zero credits. Monitors can keep new uploads current with watch_channel and list_monitors; automatic fetching uses ordinary delivery credits.

Hosted discovery

Agents that read skill discovery endpoints can use /.well-known/agent-skills/index.json. The index's SHA-256 digest identifies the exact skill bytes served at SKILL.md. The repository and hosted skill contain the same instructions.

You can inspect the index using any of these requests. More runnable API workflows are in the examples directory.

curl https://api.scripthaul.com/.well-known/agent-skills/index.json
import urllib.request
print(urllib.request.urlopen("https://api.scripthaul.com/.well-known/agent-skills/index.json").read().decode())
const response = await fetch("https://api.scripthaul.com/.well-known/agent-skills/index.json");
console.log(await response.json());
response, err := http.Get("https://api.scripthaul.com/.well-known/agent-skills/index.json")
if err != nil { log.Fatal(err) }
defer response.Body.Close()
io.Copy(os.Stdout, response.Body)

The keyless server at https://scripthaul.com/mcp needs no credentials and provides a small taste. The account server at https://api.scripthaul.com/mcp accepts OAuth or an API key in its Authorization header. OAuth grants can create jobs and spend credits, but never see or create API keys; revoke them in Dashboard → Connected apps. Connected apps share one account allowance pool. Reconnect when prompted, no later than 30 days; refreshing does not extend the original grant deadline. See OAuth limits, consent, and revocation timing.