whed-tools
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@whed-toolsExtract WHED profile from https://harvard.edu"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
WHED Tools — Higher Education Intelligence Pipeline
An MCP-native pipeline for collecting structured intelligence on higher education institutions, aligned with the IAU World Higher Education Database (WHED) schema.
Scrape → Extract → Validate → Save — the Host LLM performs extraction directly using MCP tools. No external LLM required.
Built on samirsaci/mcp-webscraper.
Overview
Step | How |
Scrape | MCP |
Extract | Host LLM reads scraped content, uses |
Validate |
|
Save |
|
Related MCP server: agent-api-gateway-mcp
Architecture
┌─────────────────────────────────────────────────────────────────┐
│ HOST LLM (Claude in Cursor / any MCP client) │
│ │
│ crawl_website(url) → get_extraction_schema() │
│ scrape_url(url) get_db_context(domain) │
│ │ │
│ Host LLM reads content and fills JSON │
│ │ │
│ validate_profile(json) → save_profile(domain, json) │
└─────────────────────────────────────────────────────────────────┘
│ │ │
▼ ▼ ▼
output/pages/ schema.py output/structured/
output/sites/ db_reference.pyProject Structure
mcp-webscraper/
├── MCP_server/
│ ├── server.py # MCP entry — 9 tools (scrape + extraction)
│ ├── models/
│ └── utils/
│ └── web_scraper.py # Scraper (static, Playwright, pdfplumber)
├── schema.py # SchoolProfile, EXTRACTION_TEMPLATE, FIELD_URL_HINTS
├── db_reference.py # WHED DB — picklists, reference examples, ground truth
├── run_scraper.py # Standalone CLI — schema-driven crawl, PDF extraction
├── docs/
│ ├── USAGE_GUIDE.md # Architecture, flow, outputs, comparison
│ ├── PROJECT_ITERATIONS.md
│ └── MCP_VS_N8N_COMPARISON.md
└── output/
├── pages/ # Per-page cache from crawl
├── sites/ # Combined site crawl
├── structured/ # MCP extraction output
├── ground_truth/ # WHED DB exports
└── stages/ # Human review stagingPrerequisites
Python 3.10+
uv package manager
Cursor (for MCP usage)
MySQL with WHED database (optional — for DB grounding and comparison)
Installation
git clone https://github.com/your-username/mcp-webscraper.git
cd mcp-webscraper
uv sync
uv run playwright install chromiumCopy .env.example to .env and add WHED DB credentials (if available).
Connect MCP to Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"whed-tools": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/mcp-webscraper",
"python",
"MCP_server/server.py"
]
}
}
}MCP Tools (whed-tools)
Tool | Description |
| Fetch HTML from a URL |
| Extract by CSS selector |
| First matching element |
| Multiple URLs |
| Discover and crawl site ( |
| Download a PDF and extract its text content |
| WHED field template (REQUIRED only) |
| Picklists + reference example for domain |
| Pydantic + DB picklist validation |
| Save profile to |
Example prompt
"Crawl https://www.example.edu and extract a WHED profile. Use get_extraction_schema and get_db_context, then validate and save."
Standalone Scripts
Scrape (schema-driven, with PDFs)
Edit run_scraper.py (TARGET_URL, MODE, etc.), then:
uv run python run_scraper.pyUses
schema.FIELD_URL_HINTSto follow only relevant URLsExtracts text from PDFs via
pdfplumber
Schema & DB Grounding
REQUIRED fields are in
EXTRACTION_TEMPLATE; DEFERRED fields are in Pydantic but not prompted.With WHED DB: picklists, few-shot examples, and post-validation reduce hallucination.
Edit
schema.pyto add or reactivate fields.
Documentation
Doc | Content |
Architecture, flow, and outputs | |
Evolution from Ollama to MCP-native | |
KPI comparison with N8N + Firecrawl |
License
MIT — based on samirsaci/mcp-webscraper.
This server cannot be deployed
Maintenance
Related MCP Connectors
Remote MCP server to enrich company profiles with structured B2B data and confidence scores.
Universities MCP — Hipolabs Universities API (free, no auth)
One MCP for the Web. Easily search, crawl, navigate, and extract websites without getting blocked.…
Scrape, crawl and search the web for AI agents via MCP.
Related MCP Servers
- AlicenseAqualityDmaintenanceStructured web context infrastructure for AI agents. Extract reliable schema-guided JSON from websites using Claude-powered parsing, Browserless fallback rendering, and MCP-native workflows.11MIT
- AlicenseAqualityBmaintenanceMCP server that extracts structured JSON from public URLs for AI agents using schemas like product, article, and company.645 npmMIT
- AlicenseNot gradedqualityCmaintenanceA general-purpose MCP server for crawling and extracting structured data from any website. Supports tools for crawling, single-page extraction, search-and-crawl, and schema extraction.2MIT
- AlicenseAqualityCmaintenanceAn agent-agnostic web extraction and fetch layer that turns URLs into verified, typed data with confidence scores via MCP, REST, or SDK, orchestrating scraping engines behind a resilience ladder and supporting structured extraction against any schema.52Apache 2.0