CrawlForge
HomePlaygroundUse CasesIntegrationsPricingDocumentationBlog
How to Build a Competitive Intelligence Agent with Claude + CrawlForge
Tutorials
Back to Blog
Tutorials

How to Build a Competitive Intelligence Agent with Claude + CrawlForge

C
CrawlForge Team
Engineering Team
January 21, 2026
12 min read
Updated April 14, 2026

On this page

Competitive intelligence is critical for business success, but manually monitoring competitors is time-consuming. In this tutorial, you'll build an AI agent that automatically researches competitors, analyzes their strategies, and delivers weekly reports - all using Claude and CrawlForge MCP.

What You'll Build

By the end of this tutorial, you'll have a competitive intelligence agent that:

  • Monitors competitor websites for changes
  • Tracks competitor pricing and product updates
  • Analyzes competitor content strategies
  • Generates weekly summary reports
  • Alerts you to significant developments

Time Required: 30-45 minutes Cost: ~50 credits (within free tier)

Prerequisites

Before starting, ensure you have:

  1. Claude Code installed: npm install -g @anthropic-ai/claude-code
  2. CrawlForge MCP configured: Follow our setup guide
  3. Free CrawlForge account: Sign up here for 1,000 free credits

Step 1: Define Your Competitors

First, create a configuration file for your competitors. In your project directory:

Json
// competitors.json
{
  "competitors": [
    {
      "name": "Competitor A",
      "website": "https://competitor-a.com",
      "pricing_page": "https://competitor-a.com/pricing",
      "blog": "https://competitor-a.com/blog"
    },
    {
      "name": "Competitor B",
      "website": "https://competitor-b.com",
      "pricing_page": "https://competitor-b.com/pricing",
      "blog": "https://competitor-b.com/blog"
    }
  ],
  "focus_areas": [
    "pricing",
    "features",
    "content_strategy"
  ]
}

Step 2: Build the Research Agent

Now, let's create the agent. In Claude Code, start with this system prompt:

Markdown
You are a competitive intelligence analyst. Your job is to:

1. Research competitors using CrawlForge tools
2. Track pricing and feature changes
3. Analyze content strategies
4. Identify market trends
5. Generate actionable insights

Always use the most credit-efficient tool:
- fetch_url (1 credit) for basic page content
- extract_content (2 credits) for clean article text
- search_web (5 credits) only when you need to find new sources
- analyze_content (3 credits) for NLP analysis

Never use deep_research (10 credits) for known competitor URLs.

Step 3: Implement Core Research Functions

Function 1: Fetch Competitor Pricing

Typescript
// In Claude Code, ask:
"Fetch the pricing page for [competitor] and extract:
1. Plan names and prices
2. Feature lists for each tier
3. Any promotional offers
4. Compare to last known pricing"

// CrawlForge will use extract_content (2 credits)
// to get clean, structured pricing data

Function 2: Monitor Product Updates

Typescript
// Ask Claude:
"Check [competitor]'s changelog or product updates page.
Summarize any new features released in the past month.
Flag anything that competes directly with our offerings."

// Uses: fetch_url (1 credit) + Claude's analysis

Function 3: Analyze Content Strategy

Typescript
// Ask Claude:
"Analyze [competitor]'s blog for the past month:
1. What topics are they covering?
2. What keywords are they targeting?
3. How frequently are they publishing?
4. What's their content format (tutorials, news, case studies)?"

// Uses: extract_links (1 credit) to find blog posts
// Then: batch_scrape (5 credits) to get content
// Then: analyze_content (3 credits) for NLP insights

Step 4: Set Up Change Tracking

CrawlForge's track_changes tool monitors pages for updates:

Typescript
// Set up monitoring for a competitor's pricing page:
"Create a change monitor for https://competitor.com/pricing
Alert me when:
- Prices change by more than 10%
- New plans are added
- Features are added or removed"

// Uses: track_changes (3 credits for setup)
// Ongoing monitoring included

Change Tracking Configuration

Json
{
  "url": "https://competitor.com/pricing",
  "trackingOptions": {
    "trackText": true,
    "trackStructure": true,
    "granularity": "section",
    "significanceThresholds": {
      "minor": 0.1,
      "moderate": 0.3,
      "major": 0.7
    }
  },
  "monitoringOptions": {
    "interval": 86400000, // Daily check
    "notificationThreshold": "moderate"
  }
}

Step 5: Generate Weekly Reports

Create a weekly report prompt:

Markdown
Generate a competitive intelligence report for the week of [date]:

## Executive Summary
[2-3 sentence overview of key findings]

## Pricing Intelligence
[Any pricing changes detected across competitors]

## Product Updates
[New features or changes from competitors]

## Content Analysis
[What competitors are publishing and why it matters]

## Market Trends
[Patterns observed across multiple competitors]

## Recommended Actions
[3-5 specific actions we should consider]

---
Sources: [List all URLs analyzed]
Credits Used: [Total credits consumed]

Step 6: Automate with Scheduled Tasks

For production use, schedule your agent to run weekly:

Bash
# Create a weekly cron job (macOS/Linux)
crontab -e

# Add this line (runs every Monday at 9 AM):
0 9 * * 1 cd /path/to/project && claude "Run weekly competitive intelligence report" > /path/to/reports/report-$(date +%Y%m%d).md

Credit Optimization Tips

Keep your costs low with these strategies:

1. Use the Cheapest Tool First

TaskInefficientEfficient
Check pricing pagedeep_research (10)extract_content (2)
Find competitor blog postssearch_web (5)extract_links (1)
Get article textscrape_with_actions (5)fetch_url (1)

2. Batch Your Requests

Typescript
// Instead of 10 separate fetch_url calls (10 credits):
// Use batch_scrape for multiple URLs (5 credits total)
"Batch scrape these 10 competitor pages: [urls]"

3. Cache Competitor Data

Structure your analysis to reuse fetched data:

Typescript
// Fetch once, analyze multiple times:
"1. Fetch competitor.com/pricing
 2. Extract pricing tiers
 3. Compare to our pricing
 4. Identify positioning gaps
 5. Suggest response strategies"

// All analysis after step 1 uses Claude (no additional credits)

Example Output

Here's what a competitive intelligence report looks like:

Markdown
# Competitive Intelligence Report
## Week of January 20, 2026

### Executive Summary
Competitor A launched a new enterprise tier at $199/month, positioning
directly against our Pro plan. Competitor B increased their content
velocity by 40%, focusing heavily on AI automation tutorials.

### Pricing Intelligence
| Competitor | Change | Details |
|------------|--------|---------|
| Competitor A | New Tier | Enterprise plan launched at $199/mo |
| Competitor B | No Change | Prices stable for 3 months |

### Product Updates
**Competitor A:**
- Released API v2 with GraphQL support
- Added team collaboration features
- New dashboard analytics

**Competitor B:**
- Mobile app beta launched
- Webhook improvements

### Content Analysis
**Competitor A (12 posts):**
- Primary topics: AI automation, enterprise use cases
- Target keywords: "enterprise AI", "team collaboration"
- Format: Long-form tutorials (avg 2,500 words)

**Competitor B (8 posts):**
- Primary topics: Developer tutorials, integrations
- Target keywords: "API integration", "developer tools"
- Format: Code-heavy how-tos (avg 1,800 words)

### Recommended Actions
1. Consider matching Competitor A's enterprise pricing
2. Accelerate our content velocity to maintain SEO position
3. Prioritize GraphQL support in our roadmap
4. Create competitive comparison landing page

---
**Credits Used:** 47/1,000 (free tier)
**Sources Analyzed:** 24 pages across 2 competitors

Advanced: Multi-Competitor Monitoring

For tracking many competitors, use this efficient pattern:

Typescript
const competitors = [
  { name: "A", url: "https://a.com" },
  { name: "B", url: "https://b.com" },
  { name: "C", url: "https://c.com" },
  // ... up to 50 URLs
];

// Use batch_scrape for all pricing pages at once
"Batch scrape all competitor pricing pages and compare:
${competitors.map(c => c.url + '/pricing').join('\n')}"

// 5 credits for up to 50 URLs
// vs 50 credits for individual fetch_url calls

Next Steps

You've built a functional competitive intelligence agent. Here's how to extend it:

  1. Add sentiment analysis: Use analyze_content on competitor reviews
  2. Track social media: Monitor competitor Twitter/LinkedIn
  3. Set up alerts: Configure email notifications for major changes
  4. Build a dashboard: Visualize trends over time

Related Resources:

  • Complete MCP Web Scraping Guide
  • Stealth Mode for Protected Sites
  • CrawlForge Documentation

Get Started Free - 1,000 credits included

Try this yourself — no signup needed

Run any of CrawlForge's 27 scraping and extraction tools in the playground, then start free with 1,000 credits.

1,000 free credits • Refills monthly • No credit card required

Tags

tutorialcompetitive-intelligenceclaudeautomationclaude-web-scraping

About the Author

C

CrawlForge Team

Engineering Team

Building the most comprehensive web scraping MCP server. We create tools that help developers extract, analyze, and transform web data for AI applications.

Stay updated with the latest insights

Get tutorials, product updates, and web scraping tips delivered to your inbox.

No spam. Unsubscribe anytime.

Put this into practice

Test CrawlForge's tools on any URL — free, no signup.

On this page

Related Articles

How to Build a Web-Scraping MCP Server in TypeScript (2026)
Tutorials

How to Build a Web-Scraping MCP Server in TypeScript (2026)

Build a working web-scraping MCP server in TypeScript with the official SDK: a minimal server, a real cheerio scraping tool, testing, and Claude Desktop setup.

C
CrawlForge Team
|
Jun 16
|
12m
Web Scraping From the CLI: The CrawlForge CLI Guide
Tutorials

Web Scraping From the CLI: The CrawlForge CLI Guide

Build production scrapers from the terminal. 15 commands, JSON output for piping, no MCP client required. Install in 30 seconds.

C
CrawlForge Team
|
May 21
|
10m
How to Use CrawlForge with Make and Zapier
Tutorials

How to Use CrawlForge with Make and Zapier

Connect CrawlForge to Make (Integromat) and Zapier for automated web scraping. No-code setup with HTTP modules, webhooks, and workflow examples.

C
CrawlForge Team
|
Apr 23
|
8m

Footer

CrawlForge

Enterprise web scraping for AI Agents. 27 specialized MCP tools designed for modern developers building intelligent systems.

Product

  • Features
  • Playground
  • Pricing
  • Use Cases
  • Integrations
  • Alternatives
  • Changelog

Resources

  • Getting Started
  • API Reference
  • Templates
  • Guides
  • Blog
  • Glossary
  • FAQ
  • Sitemap

Developers

  • MCP Protocol
  • Claude Desktop
  • Cursor IDE
  • LangChain
  • LlamaIndex

Company

  • About
  • Contact
  • Privacy
  • Terms
  • Acceptable Use
  • Cookies

Stay updated

Get the latest updates on new tools and features.

Built with Next.js and MCP protocol

© 2025-2026 CrawlForge. All rights reserved.