Scrapling MCP Server

Scrapling MCP Server

Enables MCP-compatible AI clients to extract live web content and convert it into structured Markdown for LLM ingestion, RAG pipelines, and agentic workflows.

Category
访问服务器

README

Scrapling MCP Server on AWS Lightsail

A high-performance web extraction MCP server that turns live web content into LLM-ready Markdown — deploy once, then plug it into your AI IDEs, agents, RAG pipelines, and automation workflows.

AWS MCP Python Docker Scrapling

Overview

Modern AI applications increasingly need access to fresh, structured, external knowledge. Instead of implementing web scraping separately inside every RAG system or AI agent, this project exposes Scrapling's web extraction capabilities through the Model Context Protocol (MCP).

Once deployed, any MCP-compatible AI client can connect to the server and use it as a reusable web data-ingestion component.

┌──────────────────────┐
│   AI IDE / AI Agent   │
│ Claude / MCP Client   │
└──────────┬────────────┘
           │ MCP
           ▼
┌──────────────────────┐
│   Scrapling MCP       │
│      Server           │
└──────────┬────────────┘
           ▼
┌──────────────────────┐
│        Web            │
│  Dynamic / Static      │
│     Content            │
└──────────┬────────────┘
           ▼
┌──────────────────────┐
│      Markdown          │
│   LLM-ready Data       │
└──────────┬────────────┘
           ▼
┌─────────────────────────────────┐
│ RAG / Embeddings / Vector DB /   │
│ Knowledge Base / Agent Memory    │
└─────────────────────────────────┘

Why MCP for Web Extraction?

Traditionally, every AI application that needs web data implements its own:

  • HTTP requests
  • HTML parsing
  • Browser automation
  • Dynamic page handling
  • Extraction logic
  • Retry mechanisms
  • Content normalization

This creates duplicated infrastructure. With MCP, web extraction becomes a shared capability.

Before — multiple implementations:

RAG App        ──────► Scraper
Agent          ──────► Scraper
Research Tool  ──────► Scraper
AI IDE         ──────► Scraper

After — one capability, multiple clients:

RAG App    ──┐
Agent      ──┼──► Scrapling MCP Server
AI IDE     ──┤
Research   ──┘

Deploy the server once and reuse it across MCP-compatible workflows.

Not Just a Web Scraper

The core idea behind this project is broader than scraping. For many LLM applications, external information eventually needs to become a representation that can be parsed, cleaned, structured, chunked, embedded, indexed, and retrieved.

Markdown is particularly useful in this pipeline because it preserves useful document hierarchy:

Web Page → Scrapling → Markdown
                          ├── Heading
                          ├── Subheading
                          ├── Paragraph
                          ├── List
                          ├── Table
                          └── Links
                          │
                          ▼
                      Chunking → Embeddings → Vector Database → RAG / Agent

This makes the MCP server useful as an LLM data insertion/ingestion layer, rather than only a scraping utility.

Features

  • MCP-compatible web extraction
  • Powered by Scrapling
  • Designed for AI agents and AI IDEs
  • Markdown-oriented output
  • Suitable for RAG ingestion pipelines
  • Containerized with Docker
  • Deployable on AWS Lightsail
  • Reusable across multiple AI applications
  • Separates data acquisition from the AI application itself
  • Can be integrated into agentic workflows

Architecture

                    Internet
                       │
                       ▼
                ┌───────────────┐
                │      Web       │
                └───────┬───────┘
                        ▼
              ┌───────────────────┐
              │     Scrapling      │
              │  Extraction Layer  │
              └─────────┬─────────┘
                        ▼
              ┌───────────────────┐
              │    MCP Server      │
              │   Tool Interface   │
              └─────────┬─────────┘
                        │
                   MCP Protocol
                        │
          ┌─────────────┼─────────────┐
          ▼             ▼             ▼
       AI IDE         Agent          RAG
          │             │             │
          └─────────────┼─────────────┘
                        ▼
                Markdown / Data
                        ▼
              ┌────────────────────┐
              │ LLM Data Pipeline   │
              └──────────┬─────────┘
                        ▼
              ┌────────────────────┐
              │  Embeddings / DB    │
              └──────────┬─────────┘
                        ▼
                     LLM / RAG

Technology Stack

Component Technology
Web Extraction Scrapling
Protocol Model Context Protocol (MCP)
Language Python
Containerization Docker
Cloud AWS Lightsail
CI/CD GitHub Actions
Output Markdown / Structured Content
AI Integration MCP-compatible clients

Project Structure

.
├── src/
│   └── ...
├── Dockerfile
├── requirements.txt
├── .dockerignore
├── .gitignore
├── docker-compose.yml
└── README.md

Adjust the structure above if your repository uses a different source layout.

Running Locally

1. Clone the repository

git clone https://github.com/Santhosh-p653/aws-mcp-test.git
cd aws-mcp-test

2. Install dependencies

Create and activate a virtual environment:

python -m venv .venv

# Linux / macOS
source .venv/bin/activate

# Windows
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Run with Docker

Build the image:

docker build -t scrapling-mcp .

Run the container:

docker run -d \
  --name scrapling-mcp \
  -p 8000:8000 \
  scrapling-mcp

Verify that the container is running:

docker ps

Deploy to AWS Lightsail

The project is designed to run as a containerized service on AWS Lightsail.

High-level deployment flow:

GitHub → Push → GitHub Actions → Build → Docker Image → Deploy → AWS Lightsail
                                                                      │
                                                                      ▼
                                                          Scrapling MCP Server
                                                                      │
                                                                      ▼
                                                      MCP-Compatible AI Clients

Deployment Steps

  1. Create an AWS Lightsail container service — from the AWS Console or AWS CLI.
  2. Build the Docker image
    docker build -t scrapling-mcp .
    
  3. Push/deploy the container — configure the Lightsail container deployment using the image produced by your CI/CD workflow.
  4. Configure environment variables — keep credentials and deployment configuration outside the repository:
    AWS_REGION=
    LIGHTSAIL_SERVICE=
    CONTAINER_NAME=
    

⚠️ Never commit secrets or credentials to Git.

GitHub Actions

The repository can use GitHub Actions to automate deployment:

git push → GitHub Actions
             ├── Checkout
             ├── Configure AWS credentials
             ├── Build container
             ├── Push/deploy
             └── Update Lightsail

Deployment then follows a simple workflow:

git add .
git commit -m "update scraper"
git push origin main

After the workflow completes, the updated MCP server is deployed.

Using the MCP Server

Once the server is deployed, connect its MCP endpoint to an MCP-compatible AI client:

AI Client → MCP → https://your-mcp-server.example.com → Scrapling → Web Content

The AI client can then invoke the exposed tools as part of its workflow — the server behaves like a plugin for AI applications, replacing custom scraping code inside every project:

AI Application
      ├── RAG
      ├── Agents
      ├── Research
      └── Automation
             │
             ▼
        MCP Server → Scrapling

RAG Integration

A typical RAG pipeline can use this server as the ingestion layer:

Web Sources → Scrapling MCP → Markdown → Document Parser → Chunking
    → Embeddings → Vector Store → Retriever → LLM

Possible downstream components include:

  • Qdrant
  • PostgreSQL + pgvector
  • Elasticsearch
  • OpenSearch
  • Chroma
  • FAISS
  • Custom knowledge stores

The MCP server remains independent of the downstream storage layer.

Agentic Workflow

The server can also become a tool available to an AI agent:

User → AI Agent
         ├── Decide what information is required
         ├── Call Scrapling MCP
         ├── Extract relevant content
         ├── Transform/use Markdown
         ├── Store information
         └── Generate final response

This allows the agent to dynamically acquire information instead of relying only on static training data or previously indexed documents.

Why Markdown?

Markdown provides a useful intermediate representation for LLM pipelines because it preserves semantic structure.

Markdown:

# AWS Lambda

## Overview
AWS Lambda is a serverless compute service.

## Features
- Event-driven execution
- Automatic scaling
- Pay-per-use pricing

## Architecture
### Invocation
Lambda functions can be invoked through multiple AWS services.

Compared with raw HTML:

<div>
    <h1>AWS Lambda</h1>
    <div>
        <h2>Overview</h2>
        ...
    </div>
</div>

Markdown is generally easier to inspect, clean, chunk, process, store, and pass to LLM pipelines.

The goal, therefore, is not simply to "scrape a webpage" — it is to acquire external knowledge in a form that can naturally enter an LLM data pipeline.

Use Cases

Use Case Description
RAG Systems Automatically acquire fresh web information before indexing it.
AI Research Agents Allow agents to retrieve and analyze information from live websites.
Knowledge Bases Build continuously updated knowledge repositories.
AI IDEs Give coding assistants an external web extraction capability through MCP.
Documentation Ingestion Convert online documentation into Markdown suitable for downstream processing.
Agentic Automation Use web extraction as one tool among many in an autonomous workflow.

Performance-Oriented Design

The architecture separates the web acquisition layer from the AI application.

Instead of every AI application maintaining a custom scraper, the approach becomes:

                ┌───────────────┐
                │ Scrapling MCP  │
                └───────┬───────┘
                        │
          ┌─────────────┼─────────────┐
          ▼             ▼             ▼
        RAG          Agent          AI IDE

This allows scraping infrastructure to be deployed once and reused across multiple workflows.

Security Considerations

When deploying the server publicly:

  • Do not expose AWS credentials in the container
  • Use HTTPS in production
  • Restrict network access where appropriate
  • Validate requested URLs
  • Apply rate limits where required
  • Monitor resource consumption
  • Avoid scraping websites in violation of their terms or applicable laws
  • Keep secrets in environment variables or a dedicated secrets manager

Production Recommendations

For a production deployment, consider adding:

  • Authentication
  • API/MCP access control
  • HTTPS
  • Rate limiting
  • Request logging
  • Observability
  • Retry policies
  • Caching
  • URL allowlists
  • Resource limits
  • Health checks
  • Monitoring and alerting

Future Improvements

  • [ ] Authentication for MCP clients
  • [ ] URL/domain allowlisting
  • [ ] Content caching
  • [ ] Distributed crawling
  • [ ] Queue-based ingestion
  • [ ] Automatic document chunking
  • [ ] Direct vector database integration
  • [ ] S3-based document storage
  • [ ] Crawl scheduling
  • [ ] Observability dashboard
  • [ ] Multi-user access control

Example End-to-End Workflow

User / Agent → MCP-Compatible IDE → Scrapling MCP Server → Website
    → Markdown → Document Processing → Chunking → Embeddings
    → Vector DB → Retriever → LLM → Final Response

Repository

GitHub: github.com/Santhosh-p653/aws-mcp-test

Technical Article

The architecture, deployment, and motivation behind this project is documented on AWS Builder Center:

Supercharging Agentic AI with Fast Web Scraping using Scrapling, MCP, and AWS Lightsail

Contributing

Contributions, ideas, improvements, and experiments are welcome. If you build something using this MCP server, feel free to open an issue or pull request and share the workflow.

Author

Santhosh P

Building systems around:

  • AI Agents
  • RAG
  • MCP
  • Cloud Infrastructure
  • Web Data Pipelines
  • AI/ML

GitHub: @Santhosh-p653


Key Idea: Deploy the scraping capability once. Plug it into your AI workflows whenever you need fresh, structured web data.

Scrapling + MCP turns web extraction into a reusable infrastructure component for the modern LLM stack.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选