Get an Email When a Competitor's Post Goes Viral: MCP Tool for AI Agents

Creates a viral alert: we watch a TikTok, Instagram or YouTube profile and email the address you give when it publishes a post whose outlier score (views divided by the profile's own average) reaches minOutlierScore (default 3, minimum 1.5) within postAgeDays of posting (default 7, max 30). Identify the profile by profileId, platform+handle, or a public URL; it must already be in the database (crawl_profile it first if not). Setting up, listing and deleting alerts is free. Two things cost credits: the refresh crawl that keeps the profile fresh (10 credits per run, daily by default, started for you if you are not already monitoring the profile with track_profile) and each alert email actually sent (5 credits). Limits: one alert email per destination address per day, sent around sendHour in your timezone (defaults 9, UTC) and bundling every alert that fired; 3 emails per alert in total, after which the alert ends; expiresInDays (default 30, max 90) ends it regardless; 25 active alerts per account. A post can trigger an alert only once. Your account email needs no confirmation; any other address receives a confirmation link first and nothing is sent until it is clicked. Every alert email has its own stop link. Calling again for the same profile and address updates the settings instead of creating a duplicate.

Turn monitoring into a push notification: create_viral_alert watches a TikTok, Instagram or YouTube profile and emails you the moment one of its posts scores above an outlier threshold you choose. No polling loop, no cron on your side, no digging through feeds. Set the threshold once and the email arrives with the post, its views and how many times the profile's normal reach it did.

Free

How agents use it

Connect the Viral Outliers MCP server once and the create_viral_alert tool becomes available to your agent alongside all other skills:

claude mcp add --transport http viral-outliers https://viraloutliers.com/api/mcp \
  --header "Authorization: Bearer so_live_YOUR_KEY"

In Claude.ai or ChatGPT, add a custom connector pointing at https://viraloutliers.com/api/mcp. Your agent then calls create_viral_alert on its own whenever the task needs it.

Parameters

NameTypeDescription
email*stringDestination address. Your account email needs no confirmation; any other address gets a confirmation link first.
profileIdstringInternal profile id from search results.
platformstring"tiktok" | "instagram" | "youtube" (pair with handle).
handlestringPublic handle, without @ (pair with platform).
urlstringPublic profile or post URL identifying the profile.
minOutlierScorenumberTrigger at this outlier score or above (default 3, minimum 1.5).
scoreWindowstringProfile average the score is measured against: one_week, two_weeks, one_month, three_months (default), six_months, one_year, all_time.
postAgeDaysnumberOnly posts published within this many days can trigger (default 7, max 30).
expiresInDaysnumberThe alert ends after this many days (default 30, max 90).
sendHournumberPreferred hour of day for the email, 0-23 (default 9).
timezonestringIANA timezone for sendHour, e.g. Europe/Brussels (default UTC).
frequencystring"daily" (default) | "every_3_days" | "weekly": refresh cadence when this alert starts the tracking.

What it does

You name a profile, a destination email and a threshold. From then on, every refresh of that profile is checked for posts published in the last postAgeDays whose outlier score (views divided by the profile's own average over scoreWindow) is at or above minOutlierScore. New matches are collected and emailed once a day around your preferred hour, one digest per address that bundles every alert that fired, with a link to each post, its views and score. A post triggers a given alert only once, ever.

The alert ends by itself: after 3 emails, or after expiresInDays (default 30), whichever comes first. If this alert started the profile's tracking, ending it also stops the refresh crawls, so a forgotten alert never keeps billing.

What it costs

Creating, listing and deleting alerts is free. Two things are charged: the refresh crawl that keeps the profile fresh (10 credits per run; the alert starts daily tracking if you are not already monitoring the profile, because a weekly refresh cannot deliver a timely alert) and each alert email actually sent (5 credits, charged when the digest goes out). A month of daily monitoring plus three alert emails is roughly 315 credits.

If the balance cannot cover an email, the hits wait and the digest is retried a few hours later; nothing is lost and nothing is sent unpaid. Monitoring itself pauses on an empty balance exactly as with track_profile and resumes after a top-up.

Sending to someone else

The address does not have to be yours: a social media manager can alert a client, a founder can alert a marketer. Your account email needs no confirmation. Any other address first receives a confirmation email with one button, and no alert goes out until the owner clicks it. You may have three unconfirmed addresses at a time, and every alert email carries its own stop link that ends that alert without an API key.

vs. polling get_tracked_updates

You can build alerts yourself with track_profile plus a scheduled get_tracked_updates call and your own threshold check and mailer. That means a scheduler, a dedup store and an email pipeline to run, and an agent that has to stay awake to notice anything.

create_viral_alert moves all of that server-side: detection runs on every refresh, the once-a-day digest, the per-post dedup and the email caps are enforced for you, and the agent can go idle. Keep get_tracked_updates for pipelines that want every new post; use alerts when only the outliers matter.

Pricing

This skill is free and never spends credits.

Agent workflows

  • Competitor watch: crawl_profile the rival if needed → create_viral_alert with minOutlierScore 3 → the email arrives with the post → remix_post it into your own angle.
  • Client reporting: create_viral_alert for each creator the client cares about, with the client's email and their timezone → they get one digest a day.

Frequently asked questions

How do I get notified when a competitor's post goes viral?

Call create_viral_alert with the profile, your email and a threshold such as minOutlierScore 3. When the profile posts something that does three times its normal views within the window you set, you receive an email with the post; one digest per address per day, at most three emails per alert.

What does a viral alert cost?

Setting it up is free. The refresh crawl behind it costs 10 credits per run (daily by default) and each alert email sent costs 5 credits. Three emails over a month of daily monitoring is roughly 315 credits; the alert then ends by itself.

Can the alert email go to someone who is not the API user?

Yes. Any address other than your account email receives a confirmation link first, and alerts are sent only after its owner clicks it. Every alert email includes a stop link, so the recipient can end it at any time.

How many emails can an alert send?

Three in total, then the alert ends; it also ends after expiresInDays (30 by default, 90 at most). Across all alerts, one address receives at most one email per day, sent around the hour you choose, and a given post never triggers the same alert twice.