Content
# CrewAI MCP SaaS Comparison Agents
**A multi-agent system that generates data-driven B2B SaaS comparison articles using real market data, live user sentiment, and SEO intelligence — powered by CrewAI, Google Gemini, and 10 production MCP servers from the [Vinkius AI Gateway](https://vinkius.com).**
[](LICENSE)
[](https://python.org)
---
## The Problem with B2B SaaS Comparison Content
Every year, millions of decision-makers search for terms like **"HubSpot vs Salesforce"**, **"Monday.com alternatives"**, or **"best CRM software 2026"**. These queries carry some of the highest CPCs in digital advertising — often $15 to $40+ per click.
And yet, the content that ranks for these terms is overwhelmingly shallow. Generic feature checklists. Recycled marketing copy. No real user data. No verifiable metrics.
The reason is simple: producing a genuinely data-driven comparison article requires pulling information from a dozen different sources — company databases, web analytics platforms, social media APIs, review aggregators, SEO tools — and synthesizing it into a coherent narrative. Doing this manually takes days. Doing it at scale is impractical.
**This project demonstrates a different approach.** Three AI agents, each specialized in a distinct phase of the research pipeline, collaborate to produce a publish-ready comparison article in minutes. The critical enabler is the [Model Context Protocol (MCP)](https://modelcontextprotocol.io) — an open standard that lets AI agents connect directly to external data sources through a unified interface.
---
## How It Works
The system operates as a sequential pipeline of three agents, each connected to a curated set of MCP servers that provide real-time access to production APIs.
### Phase 1 — Market Research
The first agent builds comprehensive profiles of both software products. It connects to five MCP servers to gather:
- Company fundamentals (founding year, headcount, funding history) via **Crunchbase**
- Web traffic metrics and market share via **SimilarWeb**
- Product positioning and community reception via **Product Hunt**
- Technology stack analysis via **BuiltWith**
- Pricing pages and feature documentation via **Firecrawl**
Every data point is attributed to its source. The agent is instructed to never fabricate data — if a tool returns no result, the gap is explicitly noted.
### Phase 2 — Sentiment Analysis
The second agent analyzes what real users are saying about both products. It connects to three MCP servers:
- **X/Twitter** for recent mentions, complaints, and praise
- **Hacker News** for in-depth technical discussions
- **Exa AI** for semantic search across Reddit, forums, and the broader web
The output is a structured sentiment report: quantified ratios (e.g., "68% positive, 22% negative, 10% neutral across 340 mentions"), categorized themes (pricing, support, reliability), and verbatim user quotes with platform attribution.
This is what separates a credible comparison article from a generic one — the ability to state:
> *"Across 450 community discussions analyzed via MCP, the most frequent concern about Software A is response time from technical support, appearing in 23% of negative mentions."*
### Phase 3 — SEO-Optimized Article
The third agent receives all research data and sentiment analysis, then writes the final article. Before writing, it connects to two MCP servers:
- **SEMrush** for keyword difficulty, search volume, and competitor analysis
- **SerpAPI** for current SERP features and ranking landscape
The result is a ~2,500-word article structured for both readers and search engines: comparison tables optimized for featured snippets, a FAQ section targeting People Also Ask queries, blockquoted user testimonials, and a clear recommendation matrix.
---
## Why MCP Servers Change Everything for AI Agents
Traditional AI agent frameworks are limited by their tools. Most agents work with a handful of hardcoded API integrations that someone on the team built and maintains. Scaling beyond that is painful — every new data source requires custom code, authentication handling, error management, and ongoing maintenance.
The Model Context Protocol eliminates this bottleneck. MCP servers act as standardized bridges between AI agents and external services. An agent doesn't need to know how to authenticate with the Crunchbase API, parse SimilarWeb responses, or handle Twitter rate limits. It simply connects to an MCP server and calls tools through a unified interface.
**This is where scale becomes practical.** The [Vinkius AI Gateway](https://vinkius.com) provides a managed registry of over **2,600 production-ready MCP servers** — covering everything from CRM platforms and financial data to social media, developer tools, government databases, and IoT services. Each server is deployed as an isolated, authenticated endpoint with a unique URL:
```
https://edge.vinkius.com/<your_token>/mcp
```
This project uses 10 of those 2,600+ servers. But the architecture is designed to scale. Adding a new data source to any agent is a one-line configuration change — add the MCP URL to the agent's `mcps` field, and the new tools are automatically discovered and available.
Consider what becomes possible with access to thousands of MCP servers:
- **Financial analysis agents** pulling from Bloomberg, SEC EDGAR, FRED, and Alpha Vantage simultaneously
- **Competitive intelligence systems** combining Crunchbase, SimilarWeb, G2, and LinkedIn data
- **Content generation pipelines** that feed from real-time social sentiment, SEO metrics, and market data
- **Compliance monitoring** agents checking GDPR, SOC2, and industry regulations across multiple sources
The limiting factor is no longer engineering effort. It is imagination.
---
## MCP Servers Used in This Project
This project connects to 10 MCP servers, grouped by agent specialization:
| MCP Server | Agent | Data Provided |
|---|---|---|
| [crunchbase-mcp](https://vinkius.com/en/apps/crunchbase-mcp) | Market Researcher | Funding rounds, valuation, headcount, investors |
| [similarweb-analytics-mcp](https://vinkius.com/en/apps/similarweb-analytics-mcp) | Market Researcher | Web traffic, global ranking, market share |
| [product-hunt-mcp](https://vinkius.com/en/apps/product-hunt-mcp) | Market Researcher | Product launches, community reception |
| [builtwith-tech-lookup-mcp](https://vinkius.com/en/apps/builtwith-tech-lookup-mcp) | Market Researcher | Technology stack detection |
| [firecrawl-mcp](https://vinkius.com/en/apps/firecrawl-mcp) | Market Researcher | Pricing pages, feature documentation |
| [x-twitter-mcp](https://vinkius.com/en/apps/x-twitter-mcp) | Sentiment Analyst | Mentions, trending discussions, sentiment |
| [hacker-news-mcp](https://vinkius.com/en/apps/hacker-news-mcp) | Sentiment Analyst | Technical discussions, developer opinions |
| [exa-ai-mcp](https://vinkius.com/en/apps/exa-ai-mcp) | Sentiment Analyst | Semantic search across Reddit and forums |
| [semrush-mcp](https://vinkius.com/en/apps/semrush-mcp) | SEO Copywriter | Keyword difficulty, search volume, SERP |
| [serpapi-mcp](https://vinkius.com/en/apps/serpapi-mcp) | SEO Copywriter | Live SERP features, competitor positioning |
All 10 servers are hosted on the [Vinkius AI Gateway](https://vinkius.com). This project uses a fraction of what is available — browse the full catalog of **2,600+ production-ready MCP servers** at [vinkius.com/en/categories](https://vinkius.com/en/categories).
---
## Getting Started
### Prerequisites
- Python 3.11+
- A [Google Gemini API key](https://aistudio.google.com/apikey) (free tier is sufficient)
- MCP server endpoints from the [Vinkius AI Gateway](https://vinkius.com)
### Installation
```bash
git clone https://github.com/vinkius-labs/crewai-mcp-saas-comparison-agents.git
cd crewai-mcp-saas-comparison-agents
python -m venv .venv
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
pip install -e .
```
### Configuration
```bash
cp .env.example .env
```
Open `.env` and configure:
1. Your **Gemini API key** from [Google AI Studio](https://aistudio.google.com/apikey)
2. Your **Vinkius MCP URLs** — deploy the MCP servers you need from the [Vinkius AI Gateway marketplace](https://vinkius.com/en/categories), then copy each server's SSE endpoint URL
### Usage
```bash
# Validate your configuration
saas-compare validate
# Generate a comparison article
saas-compare compare "HubSpot" "Salesforce"
# The article is saved to output/hubspot-vs-salesforce.md
```
---
## Generated Article Structure
Each article follows a structure optimized for both search ranking and reader conversion:
| Section | Purpose |
|---|---|
| TL;DR Comparison Table | Immediate value for scanners; featured snippet candidate |
| Company Overview | Verified company data with source attribution |
| Feature Comparison | Structured table covering all major capabilities |
| Pricing Breakdown | Tier-by-tier analysis with noted limitations |
| What Real Users Say | Quantified sentiment ratios and verbatim quotes |
| Tech Stack and Integrations | Infrastructure and ecosystem comparison |
| Who Should Choose What | Clear decision matrix by use case |
| FAQ | 5 buyer questions targeting People Also Ask |
| Methodology | Transparency on data sources (E-E-A-T compliance) |
---
## Technical Details
- **Framework:** [CrewAI](https://crewai.com) with Flows and `@CrewBase` decorators
- **LLM:** Google Gemini 2.0 Flash (free tier, ~15 RPM)
- **State Management:** Pydantic models for type-safe data flow between agents
- **MCP Integration:** Native CrewAI `mcps=` field with SSE transport to [Vinkius AI Gateway](https://vinkius.com)
- **CLI:** Typer with Rich console output
- **Rate Limiting:** `max_rpm=10` per agent to stay within Gemini free tier limits
---
## FAQ
### What is MCP?
The Model Context Protocol is an open standard for connecting AI systems to external tools and data sources. It provides a unified interface that works across different agent frameworks — CrewAI, LangChain, AutoGen, and others. See [modelcontextprotocol.io](https://modelcontextprotocol.io).
### Can I use a different LLM?
Yes. CrewAI supports OpenAI, Anthropic, Mistral, and any LiteLLM-compatible model. Change the `LLM` configuration in `crew.py`.
### How do I add more MCP servers?
Add the server to `config/mcp_servers.yaml`, set the URL in `.env`, and it will be automatically available to the corresponding agent. The [Vinkius AI Gateway](https://vinkius.com) offers **2,600+ MCP servers** across every major SaaS category — [explore the full catalog](https://vinkius.com/en/categories).
### Is the Gemini free tier sufficient?
Yes, for individual comparisons. For batch generation, consider the paid tier or switch to a different LLM provider.
---
## Contributing
We welcome contributions from the community. Please read the [Contributing Guide](CONTRIBUTING.md) before submitting a pull request.
---
## License
MIT — see [LICENSE](LICENSE).
---
Built by [Vinkius Labs](https://vinkius.com) with [CrewAI](https://crewai.com) and the [Vinkius AI Gateway](https://vinkius.com).
MCP Config
Below is the configuration for this MCP Server. You can copy it directly to Cursor or other MCP clients.
mcp.json
Connection Info
You Might Also Like
No recommendations available