mcpField
C
competitor-content-tracker

competitor-content-tracker

github.com/gooseworks-aiMarketing & growth1.3k47 installsUpdated 3d ago
Repository

About competitor-content-tracker

competitor-content-tracker is a marketing skill for monitoring competitor activity across blogs, LinkedIn, and Twitter/X. It consolidates new posts and engagement data into a Markdown digest of shared trends, content gaps, and topic coverage.

Key features

  1. 01Monitors blogs, LinkedIn, and Twitter/X
  2. 02Collects post dates, content, and engagement
  3. 03Identifies high-engagement posts by channel
  4. 04Analyzes shared themes and content formats
  5. 05Summarizes competitor content gaps

Use cases

  1. 01Reviewing competitor publishing activity each week
  2. 02Finding topics multiple competitors cover
  3. 03Identifying gaps in a team’s content coverage
  4. 04Comparing engagement on competitor social posts

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/gooseworks-ai/goose-skills --skill competitor-content-tracker

After installing, type/competitor-content-trackerin Claude Code to confirm it loaded.

Bundled filesskill.meta.json

Details

From the project README

Competitor Content Tracker

Monitor competitor content activity across three channels — blog, LinkedIn, Twitter/X — and produce a consolidated digest highlighting what's new, what's getting traction, and where you have a content gap.

When to Use

  • "Track what [competitor] is publishing"
  • "Show me what my competitors posted this week"
  • "What topics are competitors winning on?"
  • "I want a weekly competitor content digest"

Phase 0: Intake

Competitors to Track
  1. List of competitor company names + blog URLs (e.g., https://clay.com/blog)
  2. LinkedIn profile URLs of competitor founders/CMOs to track (optional but high-value)
  3. Twitter/X handles of the competitors or their founders (optional)
Scope
  1. How far back? (default: 7 days for weekly digest, 30 days for first run)
  2. Any topics/keywords you care most about? (used to surface relevant posts first)
Output
  1. Format preference: full digest (everything) or highlights only (top 3-5 per competitor)?

Save config to clients/<client-name>/configs/competitor-content-tracker.json.

{
  "competitors": [
    {
      "name": "Clay",
      "blog_url": "https://clay.com/blog",
      "linkedin_profiles": ["https://www.linkedin.com/in/kareem-amin/"],
      "twitter_handles": ["@clay_hq", "@kareemamin"]
    }
  ],
  "days_back": 7,
  "keywords": ["GTM", "outbound", "AI agents", "growth"],
  "output_mode": "highlights"
}

Phase 1: Scrape Blog Content

Run blog-feed-monitor for each competitor blog URL:

python3 skills/capabilities/blog-feed-monitor/scripts/scrape_blogs.py \
  --urls "<competitor_blog_url>" \
  --days <days_back> \
  --keywords "<keywords>" \
  --output summary

Collect: post title, publish date, URL, excerpt.

Phase 2: Scrape LinkedIn Posts

Run linkedin-profile-post-scraper for each tracked founder/executive LinkedIn URL:

python3 skills/capabilities/linkedin-profile-post-scraper/scripts/scrape_linkedin_posts.py \
  --profiles "<linkedin_url_1>,<linkedin_url_2>" \
  --days <days_back> \
  --max-posts 20 \
  --output summary

Collect: post text preview, date, reactions, comments, post URL.

Phase 3: Scrape Twitter/X

Run twitter-mention-tracker for each handle:

python3 skills/capabilities/twitter-mention-tracker/scripts/search_twitter.py \
  --query "from:<handle>" \
  --since <YYYY-MM-DD> \
  --until <YYYY-MM-DD> \
  --max-tweets 20 \
  --output summary

Collect: tweet text, date, likes, retweets, URL.

Phase 4: Analyze & Synthesize

After collecting raw data, synthesize across all channels:

For each competitor, identify:
  • New blog posts — titles, dates, topics
  • Top LinkedIn post — by engagement (reactions + comments), topic, key message
  • Top tweet — by likes, topic
  • Recurring themes — what topics did they post about most this period?
  • Content format patterns — are they doing listicles, opinion pieces, case studies?
Cross-competitor analysis:
  • Shared trending topics — what are multiple competitors writing about?
  • Coverage gaps — topics they're covering that you're not
  • Topics you own — where you're publishing and they're not
  • Engagement benchmarks — average likes/reactions across competitors (context for your own performance)

Phase 5: Output Format

Produce a structured markdown digest:

# Competitor Content Digest — Week of [DATE]

## Summary
- [N] new blog posts tracked across [N] competitors
- Top trending topic: [topic]
- Biggest content gap for you: [topic]

---

## [Competitor Name]

### Blog
- [Post Title] — [Date] — [URL]
  > [One-sentence summary]

### LinkedIn (top post)
> "[Post preview...]"
— [Author], [Date] | [Reactions] reactions, [Comments] comments
[URL]

### Twitter/X (top tweet)
> "[Tweet text]"
— [@handle], [Date] | [Likes] likes
[URL]

### Themes this week: [tag1], [tag2], [tag3]

---

## Content Gap Analysis

| Topic | Competitors covering | You covering |
|-------|---------------------|--------------|
| [topic] | Clay, Apollo | ❌ No |
| [topic] | Nobody | ✅ Yes |

## Recommended Actions
1. [Specific content opportunity to act on this week]
2. [Topic to consider writing a response/alternative take on]

Save digest to clients/<client-name>/intelligence/competitor-content-[YYYY-MM-DD].md.

Scheduling

This skill is designed to run weekly (Mondays recommended). Set up a cron job:

# Every Monday at 8am
0 8 * * 1 python3 run_skill.py competitor-content-tracker --client <client-name>

Cost

ComponentCost
Blog scraping (RSS mode)Free
LinkedIn post scraping~$0.05-0.20/profile (Apify)
Twitter scraping~$0.01-0.05 per run
Total per weekly run~$0.10-0.50 depending on scope

Tools Required

  • Apify access — via Gooseworks proxy by default (no key needed); set APIFY_API_TOKEN to BYO Apify
  • Upstream skills: blog-feed-monitor, linkedin-profile-post-scraper, twitter-mention-tracker

Trigger Phrases

  • "Run competitor content tracker for [client]"
  • "What did my competitors publish this week?"
  • "Give me a competitor content digest"
  • "What's [competitor] writing about?"

Comments

Markdown supported