Sourcelane

YouTube Channel Scraper

YouTube

Operated by Sourcelane✓ verified

A bulk YouTube channel scraping connector that collects structured channel identity, audience size, recent activity and contact/link data from lists of channel handles, URLs, IDs or video links; it extracts profile and banner images, country and join date, creator-provided tags and topic categories, subscriber and view totals (with an indicator when subscriber counts are hidden), video counts and average views, and assigns a size tier (nano, micro, mid, macro, mega). The connector analyzes the channel's most recent uploads to compute posting cadence, last upload date, recent average views/likes/comments, an engagement-rate percentage based on likes+comments per view, and the share of recent content that are Shorts; it also scrapes business email addresses and all external About-panel links and social profiles (Instagram, TikTok, Twitter/X, Facebook, LinkedIn, Discord, Patreon, etc.). Technical capabilities include large-scale web scraping of YouTube channel pages and recent videos, cross-input deduplication, per-channel aggregation of identity, reach, recent performance and contact enrichment, and support for runs of thousands of channels without requiring a YouTube login.

Verified Sep 28, 12:10 AM

$0.003

per channel

Up to 100 per call. Only pay for results returned; failed calls are refunded.

What people use it for

Trust & reliability

7d uptime trend
WindowUptimeSuccess ratep50p95Calls
24h————0
7d————0
30d————0

Calling contract

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":"youtube-channel-scraper","params":{"channels":["@mkbhd","https://www.youtube.com/@veritasium","UCX6OQ3DkcsbYNE6H8uQQuVA"]},"maxResults":10}'

Request params

FieldTypeRequiredDescription
channelsarrayrequiredYouTube channels to scrape, one per line. Accepts @handles (@mkbhd), channel URLs (youtube.com/@handle, /channel/UC…, /c/name, /user/name), raw channel IDs (UC…), or any video / Shorts URL to get the uploader's channel. Up to 5,000 per run.
includeRecentActivitybooleanoptionalAnalyze each channel's 10 latest uploads for last upload date, uploads per month, average views/likes/comments, engagement rate and Shorts share.
includeLinksbooleanoptionalRead each channel's About panel for its external links (website, Instagram, TikTok, X, Facebook, LinkedIn, Discord, Patreon) and pull any public email from the description.

Each result contains

FieldTypeDescription
inputstringInput
channelIdstringChannel Id
channelUrlstringChannel Url
handlestringHandle
titlestringTitle
descriptionstringDescription
thumbnailUrlstringThumbnail Url
bannerUrlstringBanner Url
subscriberCountintegerSubscriber Count
subscriberCountHiddenbooleanSubscriber Count Hidden
totalViewsintegerTotal Views
videoCountintegerVideo Count
avgViewsPerVideointeger—
sizeTierstring—
countrystring—
joinedAtstring—
madeForKidsboolean—
channelKeywordsarray—
topicCategoriesarray—
externalLinksarray—
lastUploadAtstring—
recentVideosAnalyzedinteger—
uploadsPerMonthnumber—
avgViewsRecentinteger—
avgLikesRecentinteger—
avgCommentsRecentinteger—
engagementRatenumber—
shortsShareRecentnumber—
latestVideoTitlestring—
latestVideoUrlstring—
emailnull—
allEmailsarray—
websitestring—
instagramstring—
tiktokstring—
twitternull—
facebookstring—
linkedinnull—
discordnull—
patreonnull—

Use YouTube Channel Scraper from Claude, ChatGPT or Cursor

Pick your tool and connect in under a minute. Then just ask — for example: “Get the transcript of this video and turn it into a blog outline: <url>”

Connect Claude

Web, desktop and mobile. Paste one URL.

  1. 1Copy your personal connector URL
  2. 2In Claude open Settings → Connectors → Add custom connector
  3. 3Paste the URL and click Add — done
Manual setup (config files, REST, Python) +

Claude Code

Adds the Sourcelane MCP server with your key as a header.

terminal
claude mcp add --transport http sourcelane https://cool-puffin-608.convex.site/mcp \
  --header "Authorization: Bearer sl_live_your_agent_key"

Claude Desktop (config file)

Alternative to the connector URL: add to claude_desktop_config.json, then restart Claude.

claude_desktop_config.json
{
  "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"
      }
    }
  }
}

Cursor & Windsurf

Add to ~/.cursor/mcp.json (or Windsurf's mcp_config.json).

mcp.json
{
  "mcpServers": {
    "sourcelane": {
      "url": "https://cool-puffin-608.convex.site/mcp",
      "headers": {
        "Authorization": "Bearer sl_live_your_agent_key"
      }
    }
  }
}

VS Code

Save as .vscode/mcp.json. VS Code prompts for your key once.

.vscode/mcp.json
{
  "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
    }
  ]
}

ChatGPT Custom GPT (Actions)

Create a GPT → Actions → Import from URL, then Authentication: API Key, Bearer.

OpenAPI schema URL
https://sourcelane-amber.vercel.app/openapi.json

REST

One POST. Pass maxResults to cap cost.

curl
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":"youtube-channel-scraper","params":{"channels":["@mkbhd","https://www.youtube.com/@veritasium","UCX6OQ3DkcsbYNE6H8uQQuVA"]},"maxResults":10}'

Python, LangChain, CrewAI, OpenAI Agents SDK…

Wrap the REST call as a tool, or point an MCP client at the endpoint.

python
import requests

res = requests.post(
    "https://cool-puffin-608.convex.site/v1/call",
    headers={"Authorization": "Bearer sl_live_your_agent_key"},
    json={
        "listing": "youtube-channel-scraper",
        "params": {"channels":["@mkbhd","https://www.youtube.com/@veritasium","UCX6OQ3DkcsbYNE6H8uQQuVA"]},
        "maxResults": 10,
    },
    timeout=300,
)
body = res.json()
print(body["receipt"]["chargedMicros"], "micro-USD for", body["receipt"]["results"], "results")
print(body["data"])

Reviews

—

0 reviews

5
0
4
0
3
0
2
0
1
0

Leave a review

Loading reviews…