Operated by Sourcelane✓ verified
Scrape Tumblr blog posts and tagged posts with text, tags, note counts, reblog sources, image and video URLs plus blog info. No login needed.
A Tumblr scraping connector that harvests public Tumblr blog posts and tag feeds (Top or Recent), extracting one record per post with full post text (including reblogged content) and the blog's original contribution, tags, engagement metrics (notes/likes/reblogs/replies), reblog provenance (which blog/reblog root it came from), direct full-size media URLs (images, videos, audio, external links), content summary, NSFW/adult flag, and blog metadata (title, description, avatar, total post count, last-updated info). The connector operates without authentication by crawling the publicly visible Tumblr pages, supports blog-mode (newest-first) and tag-mode (Top or Recent sorting), and can be configured to include or exclude reblogs while paginating through posts to collect large sets of posts, tags and media assets.
Verified Oct 25, 10:11 PM
$0.0008
per post
Up to 100 per call. Only pay for results returned; failed calls are refunded.
Fandom and trend research
Identify popular posts and which blogs drive a tag
Brand and creator monitoring
Archive a blog’s posts with engagement counts for reporting
Influencer and artist discovery
Find active blogs in a niche with avatar and description
Content and media collection
Gather image, video and audio URLs for tags or blogs for moodboards and results
Reblog and virality analysis
Trace posts back to their original authors and compare engagement over reblogs
Academic and social research
Build results of Tumblr posts on any topic
Blog posts scrapes every post from the blogs you list.
Used in Blog posts mode.
Used in Tag search mode.
Optional settings
| 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":"tumblr-scraper","params":{"mode":"blog","maxItems":5},"maxResults":10}'Request params
| Field | Type | Required | Description |
|---|---|---|---|
mode | string | required | Blog posts scrapes every post from the blogs you list. Tag search scrapes posts tagged with the tags you list. |
blogs | array | optional | Used in Blog posts mode. Blog names or URLs, one per line: 'nasa', 'nasa.tumblr.com', 'https://www.tumblr.com/nasa' or a custom domain. |
tags | array | optional | Used in Tag search mode. Tags to search, one per line, with or without '#', e.g. 'photography' or 'studio ghibli'. |
tagSort | string | optional | Used in Tag search mode. Top returns the most popular posts for the tag; Recent returns the newest posts first. |
maxItems | integer | optional | Maximum posts to return for each blog or tag. 0 = keep going until there are no more posts or the run times out. Capped at 100 per call. |
includeReblogs | boolean | optional | Keep reblogged posts in Blog posts mode. Turn off to return only the blog's original posts. |
pageId | string | optional | Paste NEXT_PAGE_ID from the previous run's Key-value store to fetch the next page. Works for runs with a single blog or tag. |
Each result contains
| Field | Type | Description |
|---|---|---|
source | string | — |
sourceInput | string | Blog / Tag |
postId | string | Post Id |
url | string | Url |
shortUrl | string | — |
postType | string | Type |
summary | string | Summary |
text | string | — |
ownText | string | — |
tags | array | Tags |
noteCount | integer | Notes |
likeCount | integer | — |
reblogCount | integer | — |
replyCount | integer | — |
createdAt | string | Created At |
isReblog | boolean | Reblog |
rebloggedFromBlog | null | — |
rebloggedFromUrl | null | — |
rebloggedRootBlog | null | Root Blog |
rebloggedRootUrl | null | — |
imageUrls | array | Images |
videoUrls | array | — |
audioUrls | array | — |
linkUrls | array | — |
isNsfw | boolean | — |
blogName | string | Blog |
blogTitle | string | — |
blogUrl | string | — |
blogDescription | string | — |
blogAvatarUrl | string | — |
blogTotalPosts | integer | — |
blogUpdatedAt | string | — |
blogIsAdult | boolean | — |
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. One click, then confirm.
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":"tumblr-scraper","params":{"mode":"blog","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": "tumblr-scraper",
"params": {"mode":"blog","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…