Mindket

Daily tweets scored for sentiment and sent to Slack

Newversion 1 · updated

Overview

An n8n workflow that searches X every morning for posts with a hashtag, saves them in MongoDB and scores their sentiment with Google. The scores go into Postgres, and a positive post is sent to a Slack channel.

Daily tweets scored for sentiment and sent to Slack is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file into a new workflow there, with databases that n8n can reach from the internet
  • Your own n8n server: the same file and steps, next to your own databases
  • Another hashtag: change the search text in Twitter
  • Another channel: change the channel name in Slack

Platform

Connects 5 apps

How it works

Trigger

A daily schedule

It starts by itself:

  • Every day at 6 am
  • You can also run it by hand while you test

Actions

  1. X is searched for recent posts that use the hashtag #OnThisDay, ten at most
  2. Each post’s text is saved in a MongoDB collection
  3. Google Cloud Natural Language scores the sentiment of each post
  4. The text, the score and the magnitude are saved in a Postgres table
  5. A post with a score above zero is sent to a Slack channel, and the others stop there

Result

Rows in MongoDB and Postgres, and a Slack message for each positive post

Integrations

What you need before you start.

X

Post search

Searches recent posts that use the hashtag.

NeedsA developer app with credit, in an X OAuth2 credential

MongoDB

Database

Keeps the text of each post.

NeedsA MongoDB credential

Google Cloud Natural Language

Sentiment scoring

Scores how positive or negative each post is.

NeedsA Google Cloud project with the Natural Language API on, in a credential

PostgreSQL

Database

Keeps each post with its score and magnitude.

NeedsA Postgres credential and a table named tweets

Slack

Notification

Shows each positive post in a channel.

NeedsA Slack credential

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
9 steps, starting on a schedule
AI
No step calls an AI model
Sign-ins
Signs in to: X, Google Cloud Natural Language and Slack
API keys
No API key is left in the file
Step types
Mindket’s checker reads 7 of its 9 step types. It does not read: Mongo Db and Postgres

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow checks X once a day for posts that use a hashtag. A schedule starts it at 6 am. It searches for #OnThisDay, takes up to ten posts and saves each post’s text in MongoDB. Google Cloud Natural Language scores the sentiment of each post. The text and the two scores go into Postgres. If the score is above zero, a Slack message shows the post. Nine nodes do the work.

Who it suits

Small teams who want a daily look at how people talk about a topic, plus a table of scores to study later. Skip it if you need every post on a topic. The search covers only the last seven days, in small batches.

Who uses it, and how
IndustryWho uses itHow they use itExample
MarketingSocial media managersWatch the mood around a hashtag each morningA manager follows a campaign tag and sees the cheerful posts in Slack.
MediaNewsroom editorsSpot the tone of public posts on a topicAn editor tracks a history hashtag and keeps the scores in a database.
ResearchStudentsCollect a small sample of posts with sentiment scoresA student saves a week of posts and scores to chart the mood.
BrandCommunity managersFind posts worth thankingA manager reads the positive posts in a Slack channel and replies to the best ones.

You need some n8n skills and five accounts: X, MongoDB, Google Cloud, Postgres and Slack.

Where to use it

Any n8n that can reach X, Google Cloud, Slack and your two databases will run it.

  • n8n Cloud: import the file into a new workflow there, with databases that n8n can reach from the internet
  • Your own n8n server: the same file and steps, next to your own databases
  • Another hashtag: change the search text in Twitter
  • Another channel: change the channel name in Slack

Setup

Download saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Five accounts are involved.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server of your own
XA developer app with credit for reading posts, saved in an X OAuth2 credential
MongoDBA database, and a MongoDB credential for it
Google CloudA project with the Natural Language API turned on, and a Google Cloud Natural Language credential
PostgresA database with a table named tweets that has the columns text, score and magnitude, and a Postgres credential
SlackA Slack app that can post in the channel, and a Slack credential
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add an X OAuth2 credential and select it in Twitter. Change the search text if you do not want #OnThisDay.
  3. Add a MongoDB credential and select it in MongoDB. The collection is called tweets.
  4. Add a Google Cloud Natural Language credential and select it in Google Cloud Natural Language.
  5. Create the table tweets in Postgres, add a Postgres credential and select it in Postgres.
  6. Add a Slack credential and select it in Slack. Change the channel name if you do not use tweets.
  7. Run the workflow once by hand, then activate it.

How to use it

Activate the workflow and it runs every morning at 6. Each run searches X, stores the posts, scores them and posts the positive ones in Slack. You can also run it by hand while you test.

What to change for a different result
To changeWhere
The searchsearchText in Twitter
How many posts per runlimit in Twitter, which X accepts from 10 to 100
The time of dayThe hour in Schedule Trigger
What counts as positiveThe comparison and value in IF
The Slack messageThe text in Slack

Example

A community manager sets the search text to the name of a product and activates the workflow.

Each morning the latest posts about the product land in MongoDB and Postgres with a score and a magnitude. Posts with a score above zero show up in the Slack channel with both numbers.

For newcomers and experts

If you are new. Sentiment analysis rates how positive or negative a text is. Google returns a score from -1 (negative) to 1 (positive). It also returns a magnitude that grows with the amount of emotion in the text. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job.

For experts. The Twitter node is version 2 and calls X’s recent search endpoint. The Set node reads the post text from Twitter by node name, so a renamed node breaks it. The remaining nodes are version 1.

Where to look closer
NodeWhat it doesWhat to know
TwitterSearches X for recent posts with the hashtagRecent search covers the last seven days and returns 10 to 100 posts per request
MongoDBInserts the text of each post into the collection tweetsIt saves only the text, with no author or date
Google Cloud Natural LanguageScores the sentiment of each saved postThe score runs from -1 to 1 and the magnitude from 0 upward
SetCollects text, score and magnitude in one itemIt reads the post text from Twitter by name
PostgresInserts the row into the table tweetsThe table must exist first
IFChecks whether the score is above 0The false route ends in an empty NoOp node

Good to know

The search node and the trigger were replaced because the old ones no longer fit. Mindket did not run this workflow.

  • Search node: the file used the version 1 Twitter node, which calls X’s older search address with an OAuth1 credential. X’s docs, read on 12 November 2026, map that address to recent search. n8n’s current node, version 2, calls it with an OAuth2 credential, and Mindket’s copy uses it
  • Cost: X’s pricing page, read on 12 November 2026, lists post reads at 0.005 US dollars each on pay per usage, so ten posts a day cost about five cents. Recent search needs at least 10 results per request, so the limit went from 3 to 10
  • Trigger: the file used the Cron node, which n8n hides in its node list. Mindket’s copy uses a Schedule Trigger at 6 am
  • Repeats: recent search reaches back seven days, so the same post can come back on a later day and land in both databases again
  • Older nodes: the Slack, Postgres, MongoDB and Google Cloud Natural Language nodes are still in n8n’s source as version 1, so Mindket kept them
  • Your data: the post texts go to MongoDB, Google, Postgres and Slack. The file holds no credential

README and files

README

Daily tweets scored for sentiment and sent to Slack

An n8n workflow that searches X every morning for posts with a hashtag, saves them in MongoDB and scores their sentiment with Google. The scores go into Postgres, and a positive post is sent to a Slack channel.

What is inside

  • workflow.json: the workflow as n8n exports it, nine nodes. It holds no credential and no sticky notes.
  • README.md: these notes.

What we changed from the original copy

  • The search step was the version 1 Twitter node, which calls X’s older search address with an OAuth1 credential. X’s migration guide, read on 12 November 2026, maps that address to recent search. Mindket’s copy uses n8n’s version 2 node, which calls recent search with an OAuth2 credential.
  • The search asked for 3 posts. X’s recent search takes at least 10 results per request, so it now asks for 10. At 0.005 US dollars a post read, that is about five cents a day.
  • The Cron node, which n8n hides in its node list, became a Schedule Trigger that runs every day at 6 am.
  • The IF node compared the score with an empty second value. The value is now an explicit 0.
  • Several nodes were linked to credentials in the author’s n8n. The links are gone, so select your own.
  • Nothing else. The MongoDB, Natural Language, Set, Postgres and Slack steps are the file’s own.

Before you start

  • An n8n instance, on n8n Cloud or your own server.
  • An X developer app with credit for reading posts.
  • A MongoDB database and a Postgres database with a table tweets that has the columns text, score and magnitude.
  • A Google Cloud project with the Natural Language API turned on.
  • A Slack app that can post in your channel.

Set it up

  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add an X OAuth2 credential and select it in Twitter. Change the search text if you do not want #OnThisDay.
  3. Add a MongoDB credential and select it in MongoDB. The collection is called tweets.
  4. Add a Google Cloud Natural Language credential and select it in Google Cloud Natural Language.
  5. Create the table tweets in Postgres, add a Postgres credential and select it in Postgres.
  6. Add a Slack credential and select it in Slack. Change the channel name if you do not use tweets.
  7. Run the workflow once by hand, then activate it.

How a run goes

  1. Schedule Trigger starts the run every day at 6 am.
  2. Twitter searches X for recent posts with #OnThisDay and returns ten.
  3. MongoDB inserts the text of each post into the collection tweets.
  4. Google Cloud Natural Language analyzes the sentiment of each text. Set keeps the text, the score and the magnitude.
  5. Postgres inserts each row into the table tweets.
  6. IF sends a post with a score above 0 to Slack, which posts it in the channel tweets. The others go to an empty NoOp node.

Change the result

  • The search: searchText in Twitter.
  • How many posts per run: limit in Twitter, which X accepts from 10 to 100.
  • The time of day: The hour in Schedule Trigger.
  • What counts as positive: The comparison and value in IF.
  • The Slack message: The text in Slack.

Good to know

  • Mindket did not run this workflow. X, MongoDB, Google, Postgres and Slack were not called. The node settings come from n8n’s source and the vendors’ documentation, read on 12 November 2026.
  • Google’s documentation says the score runs from -1.0 (negative) to 1.0 (positive). The magnitude is not normalized, so a longer text can have a bigger one.
  • X’s recent search reaches back seven days, and the same post can come back on a later day. The workflow does not check for repeats.
  • The workflow does not create the Postgres table, so create it first.
  • The MongoDB step stores only the post’s text, with no author, date or link.
  • The post texts go to MongoDB, Google, Postgres and Slack.
  • The file holds no credential and no key.
Files
NOTICE.md  582 B
README.md  4 KB
workflow.json  5 KB

3 files, 10 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-12

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Marketing & SEO

See all in Marketing & SEO

Pixel Art XL

nerijs · Kit

A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…

New

Licon MSR for LTX-2.5

LiconStudio · Kit

Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…

New

Flux.2-Klein-9B-MatchingPose

nhathoangfoto · Kit

A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…

New