Skip to main content
Glama
MCP Web Scrape
by mukul975

πŸ•·οΈ MCP Web Scrape

Clean, cached web content for agentsβ€”Markdown + citations, robots-aware, ETag/304 caching.

npm version License: MIT GitHub stars

πŸ“¦ Version

Current Version: 1.0.7

πŸš€ Quick Start Demo

# Extract content from any webpage
npx mcp-web-scrape@1.0.7

# Example: Extract from a news article
> extract_content https://news.ycombinator.com
βœ… Extracted 1,247 words with 5 citations
πŸ“„ Clean Markdown ready for your AI agent

Related MCP server: crawl-mcp-server

🎯 Tool Examples

# Extract all forms from a webpage
> extract_forms https://example.com/contact
βœ… Found 3 forms with 12 input fields

# Parse tables into structured data
> extract_tables https://example.com/data --format json
βœ… Extracted 5 tables with 247 rows

# Find social media profiles
> extract_social_media https://company.com
βœ… Found Twitter, LinkedIn, Facebook profiles

# Analyze sentiment of content
> sentiment_analysis https://blog.example.com/article
βœ… Sentiment: Positive (0.85), Emotional tone: Optimistic

# Extract named entities
> extract_entities https://news.example.com/article
βœ… Found 12 people, 8 organizations, 5 locations

# Check for security vulnerabilities
> scan_vulnerabilities https://mysite.com
βœ… No XSS vulnerabilities found, 2 header improvements suggested

# Analyze competitor SEO
> analyze_competitors ["https://competitor1.com", "https://competitor2.com"]
βœ… Competitor analysis complete: keyword gaps identified

# Monitor uptime and performance
> monitor_uptime https://mysite.com --interval 300
βœ… Uptime: 99.9%, Average response: 245ms

# Generate comprehensive report
> generate_reports https://website.com --metrics ["seo", "performance", "security"]
βœ… Generated 15-page analysis report

⚑ Quick Start

# Install globally
npm install -g mcp-web-scrape@1.0.7

# Try it instantly (latest version)
npx mcp-web-scrape@latest

# Try specific version
npx mcp-web-scrape@1.0.7

# Or start HTTP server
node dist/http.js

ChatGPT Desktop Setup

Add to your ~/Library/Application Support/ChatGPT/config.json:

{
  "mcpServers": {
    "web-scrape": {
      "command": "npx",
      "args": ["mcp-web-scrape@1.0.7"]
    }
  }
}

Claude Desktop Setup

Add to your ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "web-scrape": {
      "command": "npx",
      "args": ["mcp-web-scrape@1.0.7"]
    }
  }
}

πŸ› οΈ Available Tools

Core Extraction Tools

Tool

Description

extract_content

Convert HTML to clean Markdown with citations

summarize_content

AI-powered content summarization

get_page_metadata

Extract title, description, author, keywords

extract_links

Get all links with filtering options

extract_images

Extract images with alt text and dimensions

search_content

Search within page content

check_url_status

Verify URL accessibility

validate_robots

Check robots.txt compliance

extract_structured_data

Parse JSON-LD, microdata, RDFa

compare_content

Compare two pages for changes

batch_extract

Process multiple URLs efficiently

get_cache_stats

View cache performance metrics

clear_cache

Manage cached content

Advanced Extraction Tools

Tool

Description

extract_forms

Extract form elements, fields, and validation rules

extract_tables

Parse HTML tables with headers and structured data

extract_social_media

Find social media links and profiles

extract_contact_info

Discover emails, phone numbers, and addresses

extract_headings

Analyze heading structure (H1-H6) for content hierarchy

extract_feeds

Discover and parse RSS/Atom feeds

Content Transformation Tools

Tool

Description

convert_to_pdf

Convert web pages to PDF format with customizable settings

extract_text_only

Extract plain text content without formatting or HTML

generate_word_cloud

Generate word frequency analysis and word cloud data

translate_content

Translate web page content to different languages

extract_keywords

Extract important keywords and phrases from content

Advanced Analysis Tools

Tool

Description

analyze_readability

Analyze text readability using various metrics (Flesch, Gunning-Fog, etc.)

detect_language

Detect the primary language of web page content

extract_entities

Extract named entities (people, places, organizations)

sentiment_analysis

Analyze sentiment and emotional tone of content

classify_content

Classify content into categories and topics

SEO & Marketing Tools

Tool

Description

analyze_competitors

Analyze competitor websites for SEO and content insights

extract_schema_markup

Extract and validate schema.org structured data

check_broken_links

Check for broken links and redirects on pages

analyze_page_speed

Analyze page loading speed and performance metrics

generate_meta_tags

Generate optimized meta tags for SEO

Security & Privacy Tools

Tool

Description

scan_vulnerabilities

Scan pages for common security vulnerabilities

check_ssl_certificate

Check SSL certificate validity and security details

analyze_cookies

Analyze cookies and tracking mechanisms

detect_tracking

Detect tracking scripts and privacy concerns

check_privacy_policy

Analyze privacy policy compliance and coverage

Advanced Monitoring Tools

Tool

Description

monitor_uptime

Monitor website uptime and availability

track_changes_detailed

Advanced change tracking with similarity analysis

analyze_traffic_patterns

Analyze website traffic patterns and trends

benchmark_performance

Benchmark performance against competitors

generate_reports

Generate comprehensive analysis reports

Analysis & Monitoring Tools

Tool

Description

monitor_changes

Track content changes over time with similarity analysis

analyze_performance

Measure page performance, SEO, and accessibility metrics

generate_sitemap

Crawl websites to generate comprehensive sitemaps

validate_html

Validate HTML structure, accessibility, and SEO compliance

πŸ€” Why Not Just Use Built-in Browsing?

Deterministic Results β†’ Same URL always returns identical content
Smart Citations β†’ Every fact links back to its source
Robots Compliant β†’ Respects robots.txt and rate limits
Lightning Fast β†’ ETag/304 caching + persistent storage
Agent-Optimized β†’ Clean Markdown instead of messy HTML

πŸ”’ Safety First

  • βœ… Respects robots.txt by default

  • βœ… Rate limiting prevents server overload

  • βœ… No paywall bypass - ethical scraping only

  • βœ… User-Agent identification for transparency

πŸ“¦ Installation

# Install specific version
npm install -g mcp-web-scrape@1.0.7

# Or use directly (latest)
npx mcp-web-scrape@latest

# Or use specific version
npx mcp-web-scrape@1.0.7

πŸ”§ Configuration

# Environment variables
export MCP_WEB_SCRAPE_CACHE_DIR="./cache"
export MCP_WEB_SCRAPE_USER_AGENT="MyBot/1.0"
export MCP_WEB_SCRAPE_RATE_LIMIT="1000"

🌐 Transports

STDIO (default)

mcp-web-scrape

HTTP/SSE

node dist/http.js --port 3000

πŸ“š Resources

Access cached content as MCP resources:

cache://news.ycombinator.com/path β†’ Cached page content
cache://stats β†’ Cache statistics
cache://robots/news.ycombinator.com β†’ Robots.txt status

🀝 Contributing

We love contributions! See CONTRIBUTING.md for guidelines.

Good First Issues:

  • Add new content extractors

  • Improve error handling

  • Write more tests

  • Enhance documentation

πŸ“„ License

MIT Β© Mahipal

🌟 Star History

Star History Chart


Built with ❀️ for the Model Context Protocol ecosystem

Available Tools

48 tools
analyze_competitorsC

Analyze competitor websites for SEO and content insights

Inputs: urls (required), metrics, useCache.

analyze_cookiesB

Analyze cookies set by web pages for privacy and security

Inputs: url (required), includeThirdParty, checkSecurity.

analyze_page_speedC

Analyze page loading speed and performance metrics

Inputs: url (required), device, metrics.

analyze_performanceC

Analyze web page performance metrics

Inputs: url (required), metrics, useCache.

analyze_readabilityC

Analyze text readability using various metrics

Inputs: url (required), metrics, useCache.

analyze_traffic_patternsC

Analyze traffic patterns and user behavior indicators

Inputs: url (required), timeframe, metrics.

batch_extractC

Extract content from multiple URLs in a single operation

Inputs: urls (required), format, maxConcurrent, useCache.

benchmark_performanceC

Benchmark website performance against competitors and industry standards

Inputs: url (required), competitors, metrics.

check_privacy_policyC

Analyze privacy policy content and compliance

Inputs: url (required), regulations, useCache.

check_ssl_certificateC

Check SSL certificate validity and security details

Inputs: url (required), includeChain.

check_url_statusC

Check if URL is accessible and get HTTP status codes

Inputs: url (required), followRedirects.

classify_contentC

Classify web content into categories and topics

Inputs: url (required), categories, useCache.

clear_cacheC

Clear cached content entries

Inputs: url.

compare_contentC

Compare content between two URLs or cached versions

Inputs: url1 (required), url2 (required), compareType, useCache.

convert_to_pdfB

Convert web page content to PDF format

Inputs: url (required), format, includeImages, useCache.

detect_languageB

Detect the primary language of web page content

Inputs: url (required), confidence, useCache.

detect_trackingC

Detect tracking scripts and privacy-related elements

Inputs: url (required), trackerTypes, useCache.

extract_contact_infoC

Extract contact information like emails, phones, addresses from web pages

Inputs: url (required), types, useCache.

extract_contentB

Extract and clean content from a web page, returning Markdown with citation

Inputs: url (required), format, includeImages, includeLinks, +2 more.

extract_entitiesB

Extract named entities (people, places, organizations) from web content

Inputs: url (required), entityTypes, useCache.

extract_feedsB

Discover and parse RSS/Atom feeds from web pages

Inputs: url (required), maxItems, includeContent, useCache.

extract_formsC

Extract form elements and their structure from web pages

Inputs: url (required), includeHidden, includeDisabled, useCache.

extract_headingsB

Extract document structure and heading hierarchy from web pages

Inputs: url (required), levels, includeText, useCache.

extract_imagesC

Extract all images from a web page with metadata

Inputs: url (required), includeAltText, includeDimensions, useCache.

extract_keywordsB

Extract important keywords and phrases from web content

Inputs: url (required), maxKeywords, includePhrases, useCache.

extract_schema_markupC

Extract and validate schema.org structured data markup

Inputs: url (required), schemaTypes, validate, useCache.

extract_social_mediaC

Extract social media links and metadata from web pages

Inputs: url (required), platforms, useCache.

extract_structured_dataC

Extract JSON-LD, microdata, and schema.org data

Inputs: url (required), dataTypes, useCache.

extract_tablesC

Extract and parse HTML tables with optional CSV export

Inputs: url (required), format, includeHeaders, minRows, +1 more.

extract_text_onlyB

Extract plain text content without any formatting or HTML

Inputs: url (required), removeWhitespace, useCache.

generate_meta_tagsC

Generate optimized meta tags for SEO based on content analysis

Inputs: url (required), targetKeywords, useCache.

generate_reportsC

Generate comprehensive reports combining multiple analysis tools

Inputs: url (required), reportType, format, useCache.

generate_sitemapC

Generate sitemap by crawling website pages

Inputs: url (required), maxDepth, maxPages, includeExternal, +1 more.

generate_word_cloudB

Generate word frequency analysis and word cloud data from web content

Inputs: url (required), maxWords, minLength, useCache.

get_cache_statsC

Get detailed cache statistics and usage information

Inputs: includeEntries.

get_page_metadataB

Extract meta tags, title, description, keywords from web pages

Inputs: url (required), useCache.

monitor_changesC

Monitor web page content changes over time

Inputs: url (required), interval, threshold, useCache.

monitor_uptimeC

Monitor website uptime and availability

Inputs: url (required), interval, timeout, expectedStatus.

scan_vulnerabilitiesC

Scan web pages for common security vulnerabilities

Inputs: url (required), scanTypes, useCache.

search_contentB

Search for specific text patterns within extracted content

Inputs: content (required), query (required), caseSensitive, useRegex, +1 more.

sentiment_analysisC

Analyze sentiment and emotional tone of web content

Inputs: url (required), granularity, useCache.

summarize_contentC

Generate a summary of already extracted content

Inputs: content (required), maxLength, format.

track_changes_detailedC

Track detailed changes in web page content with diff analysis

Inputs: url (required), sections, sensitivity, useCache.

translate_contentB

Translate web page content to different languages

Inputs: url (required), targetLanguage (required), sourceLanguage, useCache.

validate_htmlC

Validate HTML structure, accessibility, and SEO

Inputs: url (required), checks, useCache.

validate_robotsC

Check robots.txt compliance for specific URLs

Inputs: url (required), userAgent.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.1/5.0

    Scored across 48 tools

    Disambiguation3/5

    Most tools have distinct purposes, but there is notable overlap in some areas, such as analyze_performance and analyze_page_speed both focusing on performance metrics, and extract_structured_data and extract_schema_markup both handling structured data extraction. The descriptions help differentiate them, but agents might still face confusion in selecting the right tool for specific tasks.

    Naming Consistency5/5

    Tool names follow a highly consistent verb_noun pattern throughout, such as analyze_competitors, extract_content, and validate_html. There are no deviations in naming conventions, making the set predictable and easy to navigate for agents.

    Tool Count2/5

    With 48 tools, the count is excessive for a web scraping server, leading to potential bloat and complexity. A more focused set of 10-20 tools could cover the domain effectively without overwhelming agents, as many tools could be consolidated or omitted.

    Completeness5/5

    The tool set provides comprehensive coverage for web scraping and analysis, including extraction, analysis, monitoring, validation, and reporting. There are no obvious gaps; it supports full workflows from data retrieval to insights, ensuring agents can handle diverse tasks without dead ends.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      B
      maintenance
      A context-optimized web scraping server that converts HTML to markdown/text and applies CSS selectors server-side, reducing token usage by 70-90% while providing AI tools with clean, filtered web content.
      8
      MIT
    • F
      license
      Not graded
      quality
      Not graded
      maintenance
      An MCP server for web content extraction that converts HTML pages into clean, LLM-optimized Markdown using Mozilla's Readability. It supports batch processing, intelligent multi-page crawling, and configurable caching while respecting robots.txt standards.
      48 npm
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      A headless web scraping server that extracts main content from web pages into Markdown, text, or HTML for AI and automation integration. It features per-domain rate limiting and robust error handling using Playwright and BeautifulSoup.
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A secure web scraping MCP server for AI agents that fetches pages with token budgeting, robots.txt compliance, and injection warnings, providing parsed content like markdown, metadata, and structured data.
      1
      MIT