What this site is
InstaScript turns Instagram Reels, video files and audio files into text inside the browser. Nothing is uploaded: the audio is processed on the visitor's own device with an in-browser Whisper model (whisper-tiny.en, WASM build). Output can be downloaded as .txt or .srt.
What it supports
- Uploaded files: MP4, MOV, WebM, MP3, WAV, M4A, OGG — up to 100 MB.
- Speech-transcription links: public Instagram post and Reel URLs only. TikTok and Facebook videos must be saved as a file and opened locally.
- Speech recognition is English only. Audio is processed in roughly 30-second chunks.
- Separate YouTube tools read existing captions from public links. Lookup responses, including available caption text, may be cached for one hour. See the privacy policy.
Machine-readable resources
- OpenAPI description of the public read-only API.
- API catalog (RFC 9727, application/linkset+json).
- MCP endpoint:
POST https://instascript.app/mcp(Streamable HTTP, JSON-RPC 2.0) with tools:find_page,get_benchmark,site_info. Clients send JSON-RPC requests by POST. A browser GET returns HTTP 405; OPTIONS is supported. - MCP server card.
- Agent Skill artifact and the skills discovery index.
- ARD capability manifest.
- Service index in I-Lang (advertised in DNS via
_index._agents.instascript.app). - Every page also has a Markdown variant: send
Accept: text/markdown.
Public read-only API
GET /api/pages?q=WORDS— find the public page that matches a task. Emptyqlists all pages.GET /api/benchmark?length_seconds=30— historical 2026-09-14 single-model timings. Without a parameter it returns all historical rows; with a length it returns the closest observed row, not interpolation. Current two-model measurements are linked separately.POST /api/extract— resolve a public Instagram URL to a video URL and caption. Instagram hosts only; other domains are rejected.
These endpoints are read-only, need no key and return JSON with source_url fields pointing at the underlying data.
Limits and honesty rules
- The service cannot transcribe a remote video on your behalf, except public Instagram links through
/api/extract. - The benchmark API/MCP rows measure only the historical whisper-tiny.en model, not today's language-detection plus transcription workflow. They are single WASM observations, not predictions. Current measurements use separate data.
- Authentication is not available. Advertised OAuth endpoints are a planned contract and answer HTTP 503.
Provenance
Pages: the published HTML of this site. Benchmark: historical single-model CSV and current two-model CSV (2026-10-14), with method notes in the benchmark README. A resource cache hit does not mean a model instance is still in memory.