Sourcelane

YouTube Shorts Scraper

YouTube

Operated by Sourcelane✓ verified

A scraper for YouTube Shorts that discovers Shorts by keyword queries, hashtags, or channel identifiers and extracts per-Short metadata and engagement metrics. The connector crawls YouTube Shorts feeds and search results without requiring login or cookies, parses titles and descriptions for hashtags, captures creator-set tags, and extracts timestamps, duration, view/like/comment counts, channel identity, thumbnail links, declared audio/metadata language, and the source query or channel plus the Short’s rank. Results are de-duplicated across queries and channel feeds are returned newest-first; the output is structured as one record per Short containing metadata, engagement figures, tags/hashtags, language info, source attribution, and direct video links.

Verified Sep 28, 3:56 AM

$0.003

per short

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://api.usesourcelane.com/v1/call \
  -H "Authorization: Bearer sl_live_your_agent_key" \
  -H "Content-Type: application/json" \
  -d '{"listing":"youtube-shorts-scraper","params":{"searchQueries":["vegan cooking","#homeworkout"],"maxItemsPerQuery":5},"maxResults":10}'

Request params

FieldTypeRequiredDescription
searchQueriesarrayoptionalKeywords or hashtags to search Shorts for, one per line. Start an entry with # to search a hashtag (e.g. #vegancooking). Each entry is scraped up to Max Items per query.
channelsarrayoptionalYouTube channels whose Shorts tab you want to scrape, one per line. Accepts a handle (@mkbhd), a channel URL, or a UC... channel ID.
maxItemsPerQueryintegeroptionalMaximum number of Shorts to return for each search query, hashtag, or channel. Set 0 for as many as YouTube will return (up to 5,000 per query). Capped at 100 per call.
sortBystringoptionalOrdering of search and hashtag results. Channel Shorts tabs are always returned newest first.
uploadedWithinstringoptionalOnly return Shorts uploaded within this period. Applies to search queries and hashtags.

Each result contains

FieldTypeDescription
videoIdstringVideo Id
urlstringUrl
titlestringTitle
descriptionstringDescription
publishedAtstringPublished At
durationSecondsintegerDuration Seconds
viewCountintegerView Count
likeCountnullLike Count
commentCountintegerComment Count
channelIdstringChannel Id
channelTitlestringChannel Title
channelUrlstringChannel Url
thumbnailUrlstring—
tagsarray—
hashtagsarray—
languagestring—
sourceTypestring—
sourceQuerystring—
positioninteger—

Use YouTube Shorts 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://api.usesourcelane.com/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://api.usesourcelane.com/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://api.usesourcelane.com/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://api.usesourcelane.com/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://usesourcelane.com/openapi.json

REST

One POST. Pass maxResults to cap cost.

curl
curl -X POST https://api.usesourcelane.com/v1/call \
  -H "Authorization: Bearer sl_live_your_agent_key" \
  -H "Content-Type: application/json" \
  -d '{"listing":"youtube-shorts-scraper","params":{"searchQueries":["vegan cooking","#homeworkout"],"maxItemsPerQuery":5},"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://api.usesourcelane.com/v1/call",
    headers={"Authorization": "Bearer sl_live_your_agent_key"},
    json={
        "listing": "youtube-shorts-scraper",
        "params": {"searchQueries":["vegan cooking","#homeworkout"],"maxItemsPerQuery":5},
        "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…