Operated by Sourcelane✓ verified
An connector that scrapes and exports structured Bluesky data for discovery and analysis: it extracts members of starter packs and lists, performs people and starter-pack keyword search, pulls posts from custom feeds and curated list feeds, and enumerates users who liked, reposted, quoted or replied to a post (including full reply trees). Outputs include profile metadata (display names, handles, profile identifiers and URLs, avatars/banners, bios, follower/following/post counts, verification and moderation labels, account creation and interaction timestamps), post content and metadata (text, URLs, creation time, language, hashtags, mentions, links, media URLs, embed/quoted-post references, engagement counts, author metadata, reply depth and parent/root relationships), and starter-pack metadata (names, descriptions, URLs, member counts, join metrics, creator metadata, bundled feed counts and timestamps). Operates across multiple modes for people, posts and starter-pack discovery and supports paginated retrieval for large lists.
Verified Sep 28, 3:55 AM
$0.002
per profile
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://api.usesourcelane.com/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"bluesky-search-starter-packs-scraper","params":{"url":"https://bsky.app/starter-pack/emilyliu.me/3kvq2t2ctis2z","maxItems":5},"maxResults":10}'Request params
| Field | Type | Required | Description |
|---|---|---|---|
mode | string | optional | Pick the data you want. Search modes use 'Search query'; every other mode uses 'Bluesky URL'. |
url | string | optional | The starter pack, list, custom feed, post or profile to scrape, depending on the mode. Examples: https://bsky.app/starter-pack/emilyliu.me/3kvq2t2ctis2z, https://bsky.app/profile/emilyliu.me/lists/3kvq2sytpos2i, https://bsky.app/profile/bsky.app/feed/whats-hot, https://bsky.app/profile/kenjennings.bsky.social/post/3mvta262ufs27. at:// URIs and go.bsky.app starter pack short links also work. For 'S |
query | string | optional | Keywords for 'People search' (matches names, handles and bios) and 'Starter pack search' (matches pack names and descriptions). Ignored by the other modes. |
maxItems | integer | optional | Maximum rows to return in this run. Set 0 for no limit (the run stops about 60 seconds before its timeout and saves NEXT_PAGE_ID so you can continue). Capped at 100 per call. |
includeProfileStats | boolean | optional | For people rows (starter pack members, list members, search, likers, reposters), look up follower count, following count, post count and banner. Turn off for slightly faster runs. |
pageId | string | optional | Paste NEXT_PAGE_ID from the previous run's Key-value store to fetch the next page. Use the same mode and URL/query as that run. Not used by 'Post replies', which fetches the whole reply tree at once. |
Each result contains
| Field | Type | Description |
|---|---|---|
type | string | Type |
mode | string | — |
source | string | — |
did | string | — |
handle | string | Handle |
displayName | string | Name |
description | string | — |
profileUrl | string | Profile |
avatar | string | — |
banner | string | — |
followersCount | integer | Followers |
followsCount | integer | — |
postsCount | integer | Posts |
isVerified | boolean | Verified |
labels | array | — |
createdAt | string | Created |
interactedAt | null | — |
Pick your tool and connect in under a minute. Then just ask — for example: “Find this creator's profiles on every social network and summarise their reach.”
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://api.usesourcelane.com/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://api.usesourcelane.com/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://api.usesourcelane.com/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://api.usesourcelane.com/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://usesourcelane.com/openapi.jsonOne POST. Pass maxResults to cap cost.
curl -X POST https://api.usesourcelane.com/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"bluesky-search-starter-packs-scraper","params":{"url":"https://bsky.app/starter-pack/emilyliu.me/3kvq2t2ctis2z","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://api.usesourcelane.com/v1/call",
headers={"Authorization": "Bearer sl_live_your_agent_key"},
json={
"listing": "bluesky-search-starter-packs-scraper",
"params": {"url":"https://bsky.app/starter-pack/emilyliu.me/3kvq2t2ctis2z","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…