Website Contact Scraper Pro MCP
Pricing
Pay per usage
Website Contact Scraper Pro MCP
Contact data extraction from JavaScript SPAs — emails, phones, social links via headless browser. Handles React, Angular, Vue, Next.js that return empty for HTTP scrapers.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
AutomateLab
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
Website Contact Scraper Pro — MCP Server
Extract contact data from any business website — emails, phones, social links, physical addresses, and decision-maker contacts — even from JavaScript-heavy SPAs that break traditional scrapers. This MCP server gives AI agents the ability to scrape structured contact information from any website using headless browser rendering, enabling automated lead generation and business development workflows.
Use Cases
- Sales prospecting — Extract all contact information from a target company's website before outbound outreach campaigns
- Lead enrichment — Fill in missing email addresses, phone numbers, and social profiles for existing lead lists
- Partner discovery — Find contact details for potential business partners, vendors, or acquisition targets
- Event preparation — Gather attendee or exhibitor contacts from conference or trade show websites
- Recruiting outreach — Collect HR contacts and hiring manager information from company career pages
- Competitive intelligence — Map contact infrastructure across competitors' digital presence
Features
- Universal contact extraction — Emails, phone numbers, social links, physical addresses, and more from any webpage
- JavaScript SPA support — Renders React, Angular, Vue, and Next.js sites that return empty for HTTP-only scrapers
- Headless browser rendering — Playwright-powered rendering captures dynamically-loaded content
- Extraction presets — Choose from balanced (default), decision-makers, deep-scan, or monitor modes
- Cost optimization — Optional Pro Fallback runs HTTP scraper first, only using browser for JavaScript failures
- Batch processing — Extract from multiple URLs in a single run for efficient lead list enrichment
- AI agent ready — MCP protocol native, works with Claude, GPT, and any MCP-compatible agent
Quick Start
Installation
$npm install
Run
# Run with default inputecho '{"urls": ["https://example.com"]}' | INPUT_STORE=1 apify run# Run with presetecho '{"urls": ["https://example.com"], "preset": "decision-makers"}' | INPUT_STORE=1 apify run# Enable Pro Fallback (HTTP first, browser on failure)echo '{"urls": ["https://example.com"], "enableProFallback": true}' | INPUT_STORE=1 apify run
Add to your AI agent
{"mcpServers": {"website-contact-scraper-pro-mcp": {"url": "https://website-contact-scraper-pro-mcp.apify.actor/mcp"}}}
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
urls | array of strings | yes | — | Website URLs to scrape |
preset | string | no | "balanced" | Extraction preset: balanced, decision-makers, deep-scan, or monitor |
enableProFallback | boolean | no | false | Run HTTP scraper first, only use browser for JS failures |
Presets
| Preset | Best For |
|---|---|
balanced | General contact scraping with reasonable depth |
decision-makers | Prioritize C-suite, VP, and director-level contacts |
deep-scan | Maximum extraction — all pages, all links, maximum data |
monitor | Lightweight scan for recurring monitoring tasks |
Tools
scrape_contacts
Scrapes contact data from one or more websites using headless browser rendering.
When to call: AI agent doing lead generation, sales prospecting, or contact research. Scenario: Finding all contact information on a company's website before outreach.
Example AI prompt: "Scrape all contact information from apify.com — emails, phones, social links, everything."
scrape_contacts(urls=["https://apify.com"], preset="balanced", enableProFallback=false)
Output
{"contacts": [{"url": "https://apify.com","emails": ["contact@apify.com", "info@apify.com"],"phones": ["+1 555 123 4567"],"social": {"linkedin": "https://linkedin.com/company/apify","twitter": "https://twitter.com/apify","facebook": "https://facebook.com/apify"},"addresses": ["6026 W. Pima Center Pkwy, Scottsdale, AZ 85258"],"source": "headless-browser"}],"metadata": {"scraped": 1,"successful": 1,"failed": 0,"preset": "balanced"}}
Data Extracted
| Data Type | Description |
|---|---|
| Emails | All email addresses found on the page |
| Phones | Phone numbers in various formats |
| Social Links | LinkedIn, Twitter, Facebook, Instagram, GitHub, and more |
| Addresses | Physical addresses and locations |
| Source URL | Which URL the data came from |
Pricing
| Tool | PPE Price |
|---|---|
scrape_contacts | $0.10/call |
PPE (Pay Per Event) — pay only for what you use. No subscription required.
Troubleshooting
No contacts found on a JavaScript site
Enable enableProFallback: true to allow the HTTP scraper to attempt first, falling back to browser rendering only when needed.
SPA returns empty content This actor uses headless browser rendering specifically for this case. The Playwright engine waits for JavaScript to execute before extracting content.
Rate limiting or blocks
Try reducing batch size or using the monitor preset for lighter scraping.
Timeout on large sites The actor has a 3600-second timeout. For very large sites, split into multiple runs with smaller URL batches.
How It Compares
| Aspect | Website Contact Scraper Pro | HTTP-only scrapers |
|---|---|---|
| JavaScript sites | Full rendering | Empty results |
| SPA support | Native (React, Angular, Vue, Next.js) | None |
| Contact types | Emails, phones, social, addresses | Emails only |
| Dynamic content | Waits for JS execution | Skipped |
License
MIT