Scrapling MCP Server
AWS Lightsail上のScrapling MCPサーバー
ライブWebコンテンツをLLM対応Markdownに変換する高性能Web抽出MCPサーバー — 一度デプロイすれば、AI IDE、エージェント、RAGパイプライン、自動化ワークフローにプラグインとして組み込めます。
概要
現代のAIアプリケーションは、新鮮で構造化された外部知識へのアクセスをますます必要としています。すべてのRAGシステムやAIエージェント内でWebスクレイピングを個別に実装する代わりに、このプロジェクトはScraplingのWeb抽出機能をModel Context Protocol (MCP)を通じて公開します。
一度デプロイすれば、MCP互換のAIクライアントはサーバーに接続し、再利用可能なWebデータ取り込みコンポーネントとして使用できます。
┌──────────────────────┐
│ 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 │
└─────────────────────────────────┘Related MCP server: Anybrowse
なぜWeb抽出にMCPなのか?
従来、Webデータを必要とするすべてのAIアプリケーションは、独自に以下を実装していました:
HTTPリクエスト
HTMLパース
ブラウザ自動化
動的ページ処理
抽出ロジック
リトライ機構
コンテンツ正規化
これにより重複したインフラストラクチャが生まれていました。MCPを使えば、Web抽出は共有機能になります。
導入前 — 複数の実装:
RAG App ──────► Scraper
Agent ──────► Scraper
Research Tool ──────► Scraper
AI IDE ──────► Scraper導入後 — 1つの機能、複数のクライアント:
RAG App ──┐
Agent ──┼──► Scrapling MCP Server
AI IDE ──┤
Research ──┘サーバーを一度デプロイすれば、MCP互換のワークフロー全体で再利用できます。
単なるWebスクレイパーではない
このプロジェクトの核となるアイデアは、スクレイピングよりも広い範囲をカバーしています。多くのLLMアプリケーションでは、外部情報は最終的に、パース、クリーニング、構造化、チャンク分割、埋め込み、インデックス化、検索が可能な表現になる必要があります。
Markdownは、有用なドキュメント階層を保持するため、このパイプラインで特に有用です:
Web Page → Scrapling → Markdown
├── Heading
├── Subheading
├── Paragraph
├── List
├── Table
└── Links
│
▼
Chunking → Embeddings → Vector Database → RAG / Agentこれにより、MCPサーバーは単なるスクレイピングユーティリティではなく、LLMデータ挿入/取り込みレイヤーとして機能します。
特徴
MCP互換のWeb抽出
Scraplingを搭載
AIエージェントとAI IDE向けに設計
Markdown指向の出力
RAG取り込みパイプラインに適合
Dockerでコンテナ化
AWS Lightsailにデプロイ可能
複数のAIアプリケーション間で再利用可能
データ取得をAIアプリケーション自体から分離
エージェンティックワークフローに統合可能
アーキテクチャ
Internet
│
▼
┌───────────────┐
│ Web │
└───────┬───────┘
▼
┌───────────────────┐
│ Scrapling │
│ Extraction Layer │
└─────────┬─────────┘
▼
┌───────────────────┐
│ MCP Server │
│ Tool Interface │
└─────────┬─────────┘
│
MCP Protocol
│
┌─────────────┼─────────────┐
▼ ▼ ▼
AI IDE Agent RAG
│ │ │
└─────────────┼─────────────┘
▼
Markdown / Data
▼
┌────────────────────┐
│ LLM Data Pipeline │
└──────────┬─────────┘
▼
┌────────────────────┐
│ Embeddings / DB │
└──────────┬─────────┘
▼
LLM / RAG技術スタック
コンポーネント | 技術 |
Web抽出 | Scrapling |
プロトコル | Model Context Protocol (MCP) |
言語 | Python |
コンテナ化 | Docker |
クラウド | AWS Lightsail |
CI/CD | GitHub Actions |
出力 | Markdown / 構造化コンテンツ |
AI統合 | MCP互換クライアント |
プロジェクト構造
.
├── src/
│ └── ...
├── Dockerfile
├── requirements.txt
├── .dockerignore
├── .gitignore
├── docker-compose.yml
└── README.mdリポジトリのソースレイアウトが異なる場合は、上記の構造を調整してください。
ローカルでの実行
1. リポジトリをクローン
git clone https://github.com/Santhosh-p653/aws-mcp-test.git
cd aws-mcp-test2. 依存関係をインストール
仮想環境を作成して有効化:
python -m venv .venv
# Linux / macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activate依存関係をインストール:
pip install -r requirements.txtDockerで実行
イメージをビルド:
docker build -t scrapling-mcp .コンテナを実行:
docker run -d \
--name scrapling-mcp \
-p 8000:8000 \
scrapling-mcpコンテナが実行中であることを確認:
docker psAWS Lightsailへのデプロイ
このプロジェクトは、AWS Lightsail上のコンテナ化されたサービスとして実行されるように設計されています。
高レベルのデプロイフロー:
GitHub → Push → GitHub Actions → Build → Docker Image → Deploy → AWS Lightsail
│
▼
Scrapling MCP Server
│
▼
MCP-Compatible AI Clientsデプロイ手順
AWS Lightsailコンテナサービスを作成 — AWSコンソールまたはAWS CLIから。
Dockerイメージをビルド
docker build -t scrapling-mcp .コンテナをプッシュ/デプロイ — CI/CDワークフローで生成されたイメージを使用して、Lightsailコンテナデプロイを構成します。
環境変数を設定 — 認証情報とデプロイ設定はリポジトリの外部に保持:
AWS_REGION= LIGHTSAIL_SERVICE= CONTAINER_NAME=
⚠️ 認証情報やシークレットをGitにコミットしないでください。
GitHub Actions
リポジトリはGitHub Actionsを使用してデプロイを自動化できます:
git push → GitHub Actions
├── Checkout
├── Configure AWS credentials
├── Build container
├── Push/deploy
└── Update Lightsailデプロイはシンプルなワークフローに従います:
git add .
git commit -m "update scraper"
git push origin mainワークフローが完了すると、更新されたMCPサーバーがデプロイされます。
MCPサーバーの使用
サーバーがデプロイされたら、そのMCPエンドポイントをMCP互換のAIクライアントに接続します:
AI Client → MCP → https://your-mcp-server.example.com → Scrapling → Web ContentAIクライアントは、ワークフローの一部として公開されたツールを呼び出せます — サーバーはAIアプリケーションのプラグインのように動作し、各プロジェクト内のカスタムスクレイピングコードを置き換えます:
AI Application
├── RAG
├── Agents
├── Research
└── Automation
│
▼
MCP Server → ScraplingRAG統合
典型的なRAGパイプラインは、このサーバーを取り込みレイヤーとして使用できます:
Web Sources → Scrapling MCP → Markdown → Document Parser → Chunking
→ Embeddings → Vector Store → Retriever → LLM考えられるダウンストリームコンポーネントは次のとおりです:
Qdrant
PostgreSQL + pgvector
Elasticsearch
OpenSearch
Chroma
FAISS
カスタムナレッジストア
MCPサーバーはダウンストリームのストレージレイヤーから独立しています。
エージェンティックワークフロー
サーバーはAIエージェントが利用できるツールにもなります:
User → AI Agent
├── Decide what information is required
├── Call Scrapling MCP
├── Extract relevant content
├── Transform/use Markdown
├── Store information
└── Generate final responseこれにより、エージェントは静的トレーニングデータや以前にインデックス化されたドキュメントにのみ依存するのではなく、動的に情報を取得できます。
なぜMarkdownなのか?
Markdownは、意味構造を保持するため、LLMパイプラインにとって有用な中間表現を提供します。
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.生のHTMLとの比較:
<div>
<h1>AWS Lambda</h1>
<div>
<h2>Overview</h2>
...
</div>
</div>Markdownは一般的に、検査、クリーニング、チャンク分割、処理、保存、LLMパイプラインへの受け渡しが容易です。
したがって、目標は単に「Webページをスクレイピングする」ことではなく、LLMデータパイプラインに自然に取り込める形式で外部知識を取得することです。
ユースケース
ユースケース | 説明 |
RAGシステム | インデックス化する前に新鮮なWeb情報を自動取得します。 |
AIリサーチエージェント | エージェントがライブWebサイトから情報を取得・分析できるようにします。 |
ナレッジベース | 継続的に更新される知識リポジトリを構築します。 |
AI IDE | MCPを通じてコーディングアシスタントに外部Web抽出機能を提供します。 |
ドキュメント取り込み | オンラインドキュメントをダウンストリーム処理に適したMarkdownに変換します。 |
エージェンティック自動化 | 自律ワークフロー内の多くのツールの1つとしてWeb抽出を使用します。 |
パフォーマンス指向の設計
アーキテクチャは、Web取得レイヤーをAIアプリケーションから分離します。
すべてのAIアプリケーションがカスタムスクレイパーを維持する代わりに、アプローチは次のようになります:
┌───────────────┐
│ Scrapling MCP │
└───────┬───────┘
│
┌─────────────┼─────────────┐
▼ ▼ ▼
RAG Agent AI IDEこれにより、スクレイピングインフラストラクチャを一度デプロイし、複数のワークフローで再利用できます。
セキュリティに関する考慮事項
サーバーを公開デプロイする場合:
コンテナ内にAWS認証情報を公開しない
本番環境ではHTTPSを使用する
必要に応じてネットワークアクセスを制限する
要求されたURLを検証する
必要に応じてレート制限を適用する
リソース消費を監視する
サイトの利用規約や適用される法律に違反するスクレイピングを避ける
シークレットは環境変数または専用のシークレットマネージャーに保持する
本番環境での推奨事項
本番デプロイでは、以下を追加することを検討してください:
認証
API/MCPアクセス制御
HTTPS
レート制限
リクエストロギング
可観測性
リトライポリシー
キャッシング
URL許可リスト
リソース制限
ヘルスチェック
監視とアラート
今後の改善点
MCPクライアントの認証
URL/ドメイン許可リスト
コンテンツキャッシング
分散クローリング
キューベースの取り込み
自動ドキュメントチャンク分割
ベクトルデータベースへの直接統合
S3ベースのドキュメントストレージ
クロールスケジューリング
可観測性ダッシュボード
マルチユーザーアクセス制御
エンドツーエンドのワークフロー例
User / Agent → MCP-Compatible IDE → Scrapling MCP Server → Website
→ Markdown → Document Processing → Chunking → Embeddings
→ Vector DB → Retriever → LLM → Final Responseリポジトリ
GitHub: github.com/Santhosh-p653/aws-mcp-test
技術記事
このプロジェクトのアーキテクチャ、デプロイ方法、および動機はAWS Builder Centerに文書化されています:
Supercharging Agentic AI with Fast Web Scraping using Scrapling, MCP, and AWS Lightsail
貢献
貢献、アイデア、改善、実験を歓迎します。このMCPサーバーを使用して何かを構築した場合は、遠慮なくissueまたはプルリクエストを開いてワークフローを共有してください。
著者
Santhosh P
以下を中心としたシステムを構築:
AIエージェント
RAG
MCP
クラウドインフラストラクチャ
Webデータパイプライン
AI/ML
GitHub: @Santhosh-p653
重要なアイデア: スクレイピング機能を一度デプロイします。新鮮で構造化されたWebデータが必要なときはいつでも、AIワークフローにプラグインします。
Scrapling + MCPは、Web抽出を最新のLLMスタックの再利用可能なインフラストラクチャコンポーネントに変えます。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceAn MCP server that extracts clean, structured Markdown content from web page URLs using the WebforAI library. It simplifies feeding web content into AI models by removing HTML noise and intelligently processing tables and links.
- AlicenseAqualityCmaintenanceMCP-native web scraping and search API for AI agents. Converts any URL to clean Markdown with 90% success rate, including Cloudflare-protected sites and JS SPAs. Real-time web search via Brave Search API. CAPTCHA solving built-in. 10 free scrapes/day.584MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for AI agents -- fetch any URL with full JavaScript rendering (Playwright/Chromium) and convert to clean, token-efficient markdown. Works on React, Vue, Angular, and any JS-heavy page. Includes web search, batch fetching, binary file download, LRU cache, SSRF protection, and structured output.13MIT
- AlicenseAqualityDmaintenanceConverts URLs and raw HTML to clean Markdown, enabling AI assistants to read web pages for summarization, analysis, or ingestion.2171MIT
Related MCP Connectors
Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.
Jina AI Reader/Search MCP — turn any URL into clean LLM-ready markdown, plus web search.
Converts any URL to clean, LLM-ready Markdown using real Chrome browsers
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Santhosh-p653/aws-mcp-test'
If you have feedback or need assistance with the MCP directory API, please join our Discord server