The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "RSS Feed \u2192 AI Rewrite \u2192 X/Twitter Draft",
"nodes": [
{
"parameters": {
"rule": {
"interval": [
{
"field": "hours",
"hoursInterval": 6
}
]
}
},
"id": "schedule",
"name": "Every 6 Hours",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
240,
300
],
"typeVersion": 1.1
},
{
"parameters": {
"url": "https://feeds.feedburner.com/TheHackersNews",
"options": {
"allowUnauthorizedCerts": false
}
},
"id": "rss-feed",
"name": "Read RSS Feed",
"type": "n8n-nodes-base.rssFeedRead",
"position": [
460,
300
],
"typeVersion": 1.1
},
{
"parameters": {
"fieldToSplitOut": "",
"options": {
"destinationFieldName": "item"
}
},
"id": "split-items",
"name": "Split Feed Items",
"type": "n8n-nodes-base.splitOut",
"position": [
680,
300
],
"typeVersion": 1
},
{
"parameters": {
"conditions": {
"string": [
{
"value1": "={{ $json.pubDate }}",
"operation": "isAfter",
"value2": "={{ $now.minus({ hours: 6 }).toISO() }}"
}
]
}
},
"id": "filter-recent",
"name": "Only Last 6h",
"type": "n8n-nodes-base.if",
"position": [
900,
300
],
"typeVersion": 2
},
{
"parameters": {
"authentication": "predefinedCredentialType",
"nodeCredentialType": "anthropicApi",
"model": "claude-3-5-haiku-20241022",
"messages": {
"values": [
{
"content": "=Rewrite this article headline and summary as a Twitter/X thread opener (max 280 chars). Add a relevant emoji. Make it engaging but informative. Do NOT use hashtags.\n\nTitle: {{ $json.title }}\nSummary: {{ $json.contentSnippet }}\nURL: {{ $json.link }}"
}
]
}
},
"id": "ai-rewrite",
"name": "AI: Write Tweet",
"type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
"position": [
1120,
300
],
"typeVersion": 1
},
{
"parameters": {
"operation": "create",
"additionalFields": {}
},
"id": "save-to-airtable",
"name": "Save Draft to Airtable",
"type": "n8n-nodes-base.airtable",
"position": [
1340,
300
],
"typeVersion": 2.1,
"notes": "Store tweet drafts for review before posting \u2014 change to X node to post directly"
}
],
"connections": {
"Every 6 Hours": {
"main": [
[
{
"node": "Read RSS Feed",
"type": "main",
"index": 0
}
]
]
},
"Read RSS Feed": {
"main": [
[
{
"node": "Split Feed Items",
"type": "main",
"index": 0
}
]
]
},
"Split Feed Items": {
"main": [
[
{
"node": "Only Last 6h",
"type": "main",
"index": 0
}
]
]
},
"Only Last 6h": {
"main": [
[
{
"node": "AI: Write Tweet",
"type": "main",
"index": 0
}
]
]
},
"AI: Write Tweet": {
"main": [
[
{
"node": "Save Draft to Airtable",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {
"executionOrder": "v1"
},
"_meta": {
"description": "Reads any RSS feed every 6 hours, filters for new articles, rewrites them as tweet drafts using Claude AI, and saves to Airtable for review. Swap the final node with the X node to post automatically.",
"requiredCredentials": [
"Anthropic API",
"Airtable API"
],
"category": "Content / Social Media",
"n8nVersion": ">=1.0.0"
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
RSS Feed → AI Rewrite → X/Twitter Draft. Uses rssFeedRead, lmChatAnthropic, airtable. Scheduled trigger; 6 nodes.
Source: https://github.com/miscia123/n8n-free-workflows/blob/main/workflows/05-content-rss-to-social.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
AI News Aggregator. Uses rssFeedRead, lmChatAnthropic, httpRequest. Scheduled trigger; 18 nodes.
Deduplicate Scraping Ai Grants For Eligibility Using Ai. Uses splitOut, httpRequest, lmChatOpenAi, informationExtractor. Scheduled trigger; 24 nodes.
This n8n template scrapes a list of AI grants from grants.gov and qualifies them using AI; determining interest and eligibility for the business. It then sends an email alert of interesting items to t
2619. Uses httpRequest, lmChatOpenAi, informationExtractor, airtable. Scheduled trigger; 24 nodes.
Overview