Operated by Sourcelane✓ verified
A scraper and speech-to-text connector that converts public Instagram reels and video posts into structured transcription and metadata: it performs automatic speech recognition to produce full spoken transcripts, word counts, the opening hook line and its start time, sentence-level timestamped segments (start/end in seconds) suitable for SRT-style captions, automatic language detection across 100+ languages, and enriched post metadata (unique identifier and URL, creator username and display name, verification status, caption text, publish date, duration, play/like/comment counts, thumbnail and video URLs). The connector runs without login/cookies or a browser, detects music-only reels and flags them as speechless while still returning metadata, reports per-item processing status with error details when applicable, and supports batch processing of large sets of reels and creator profiles.
Verified Sep 28, 12:10 AM
$0.009
per reel transcript
Up to 100 per call. Only pay for results returned; failed calls are refunded.
| Window | Uptime | Success rate | p50 | p95 | Calls |
|---|---|---|---|---|---|
| 24h | — | — | — | — | 0 |
| 7d | — | — | — | — | 0 |
| 30d | — | — | — | — | 0 |
Call it through Sourcelane's gateway or MCP server. We run the connector, apply your agent's spend guardrails, and bill only the results returned.
Call it via Sourcelane
curl -X POST https://cool-puffin-608.convex.site/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"instagram-reels-transcript-scraper","params":{"reelUrls":["https://www.instagram.com/reel/DHsD6HGqJhp/"],"maxItems":5},"maxResults":10}'Request params
| Field | Type | Required | Description |
|---|---|---|---|
reelUrls | array | optional | Instagram reel or video post links, one per line (https://www.instagram.com/reel/ABC123/ or /p/ABC123/). Shortcodes on their own also work. |
usernames | array | optional | Public Instagram usernames or profile URLs. The connector pulls each creator's newest reels automatically (see Max reels per creator). |
maxReelsPerUser | integer | optional | How many of the newest reels to transcribe for each username. |
includeSegments | boolean | optional | Add a segments array (start, end, text in seconds) to every reel row. The full transcript, hook and language are always included. |
language | string | optional | Spoken language hint: 'auto' or a 2-letter ISO code (en, es, pt, de...). |
maxItems | integer | optional | Safety cap on the total number of reels transcribed in this run. 0 = no cap (up to 1,000). Capped at 100 per call. |
Each result contains
| Field | Type | Description |
|---|---|---|
status | string | Status |
error | null | — |
source | string | Source |
shortcode | string | Shortcode |
postUrl | string | Post Url |
mediaId | string | Media Id |
username | string | Username |
fullName | string | Full Name |
isVerified | boolean | Is Verified |
caption | string | Caption |
takenAt | string | Taken At |
durationSeconds | integer | Duration Seconds |
likeCount | integer | Like Count |
commentCount | integer | — |
playCount | integer | — |
thumbnailUrl | string | — |
videoUrl | string | — |
language | string | — |
transcript | string | — |
wordCount | integer | — |
hook | string | — |
hookStartSeconds | integer | — |
segments | null | — |
minutesTranscribed | integer | — |
scrapedAt | string | — |
Pick your tool and connect in under a minute. Then just ask — for example: “Pull the last 20 posts from @natgeo and tell me which formats get the most engagement.”
Connect Claude
Web, desktop and mobile. Paste one URL.
Adds the Sourcelane MCP server with your key as a header.
claude mcp add --transport http sourcelane https://cool-puffin-608.convex.site/mcp \
--header "Authorization: Bearer sl_live_your_agent_key"Alternative to the connector URL: add to claude_desktop_config.json, then restart Claude.
{
"mcpServers": {
"sourcelane": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://cool-puffin-608.convex.site/mcp",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer sl_live_your_agent_key"
}
}
}
}Add to ~/.cursor/mcp.json (or Windsurf's mcp_config.json).
{
"mcpServers": {
"sourcelane": {
"url": "https://cool-puffin-608.convex.site/mcp",
"headers": {
"Authorization": "Bearer sl_live_your_agent_key"
}
}
}
}Save as .vscode/mcp.json. VS Code prompts for your key once.
{
"servers": {
"sourcelane": {
"type": "http",
"url": "https://cool-puffin-608.convex.site/mcp",
"headers": {
"Authorization": "Bearer ${input:sourcelane-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "sourcelane-key",
"description": "Sourcelane agent key",
"password": true
}
]
}Create a GPT → Actions → Import from URL, then Authentication: API Key, Bearer.
https://sourcelane-amber.vercel.app/openapi.jsonOne POST. Pass maxResults to cap cost.
curl -X POST https://cool-puffin-608.convex.site/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"instagram-reels-transcript-scraper","params":{"reelUrls":["https://www.instagram.com/reel/DHsD6HGqJhp/"],"maxItems":5},"maxResults":10}'Wrap the REST call as a tool, or point an MCP client at the endpoint.
import requests
res = requests.post(
"https://cool-puffin-608.convex.site/v1/call",
headers={"Authorization": "Bearer sl_live_your_agent_key"},
json={
"listing": "instagram-reels-transcript-scraper",
"params": {"reelUrls":["https://www.instagram.com/reel/DHsD6HGqJhp/"],"maxItems":5},
"maxResults": 10,
},
timeout=300,
)
body = res.json()
print(body["receipt"]["chargedMicros"], "micro-USD for", body["receipt"]["results"], "results")
print(body["data"])—
0 reviews
Leave a review
Loading reviews…