site-crawler-mcp
site-crawler-mcp
Un servidor MCP de rastreo completo del sitio construido sobre crawl4ai (Apache-2.0). Rastrea todos los enlaces internos de un sitio web como un spider de motor de búsqueda (BFS), filtra páginas por fecha de publicación / título / URL, y puede operar sobre páginas rastreadas (resumir, hacer clic en enlaces, descargar archivos). Los resultados se devuelven como JSON y se persisten en SQLite para su reutilización por cualquier proyecto.
Resumen en español: un MCP de rastreo completo de enlaces internos «como el crawler de Google». Basado en crawl4ai con encapsulación propia, admite recorrido BFS completo del sitio, filtrado por fecha/título/URL, operaciones en páginas (resumen LLM/clic en enlaces/descarga de archivos), resultados en JSON + persistencia en SQLite. Regístrelo en Reasonix / Claude Desktop / Cursor o cualquier cliente MCP para reutilizarlo globalmente.
Características
✅ Rastreo BFS completo del sitio — recorre todos los enlaces internos (max_depth / max_page controlables)
✅ Filtro de tiempo — extrae la fecha de publicación de metadatos de página / JSON-LD / URL primero, recurre a la hora de rastreo cuando no está disponible (resultado etiquetado con
time_source)✅ Filtro de título — incluir/excluir por palabra clave en el título (sin distinción de mayúsculas/minúsculas)
✅ Filtros de patrón URL y dominio — coincidencia glob/regex de URL, restricción al mismo dominio
✅ Rastreo educado — respeta
robots.txty limita la tasa por defecto (configurable)✅ Operaciones en páginas — resumen LLM (LiteLLM: DeepSeek / GLM / OpenAI…, fallback local), hacer clic en un enlace específico (selector CSS o texto del enlace), descargar archivos
✅ Persistencia en SQLite — herramienta
query_crawlspara reutilizar datos rastreados en proyectos posteriores
Related MCP server: Spider MCP Server
Herramientas
Herramienta | Descripción |
| Rastreo BFS completo del sitio. Parámetros: |
| Extraer una sola página (markdown / título / fecha de publicación / enlaces) |
| Resumir el contenido de la página. |
| Hacer clic en un enlace dentro de la página ( |
| Descargar archivos de la página al directorio de salida (por defecto |
| Consultar resultados de rastreo persistidos desde SQLite (filtros de título/URL/tiempo) |
Requisitos
Python ≥ 3.12 (probado en 3.12.13)
uv recomendado (opcional — también funciona con
pipnormal)Navegadores Playwright:
python -m playwright install chromium(o apuntePLAYWRIGHT_BROWSERS_PATHa una instalación de navegador existente)
Instalar y Registrar
# 1. Create environment & install
uv venv .venv --python 3.12
uv pip install --python .venv\Scripts\python.exe crawl4ai "mcp>=1.2,<2"
uv pip install --python .venv\Scripts\python.exe -e .
# 2. Install browser (once)
.venv\Scripts\python.exe -m playwright install chromium
# 3. Register as MCP server (example for Reasonix config.toml)
[[plugins]]
name = "site-crawler-mcp"
type = "stdio"
command = "C:\\path\\to\\site-crawler-mcp\\.venv\\Scripts\\python.exe"
args = ["-m", "site_crawler_mcp.server"]Para Claude Desktop / Cursor, agregue los mismos command/args bajo mcpServers en sus archivos de configuración.
Inicio Rápido (API de Python)
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def main():
params = StdioServerParameters(command="python", args=["-m", "site_crawler_mcp.server"])
async with stdio_client(params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
res = await session.call_tool("crawl_site", {
"start_url": "https://example.com",
"max_depth": 2,
"max_pages": 20,
"title_contains": "Example",
})
print(res.content[0].text)
asyncio.run(main())Cómo funciona el filtro de tiempo
Los filtros de URL de crawl4ai solo funcionan sobre las URL, por lo que aquí se implementa el filtrado a nivel de contenido:
Poda a nivel de URL —
TimeRangeFilter/TitleFilter(patrones de fecha en URL, palabras clave en URL)A nivel de contenido — después de obtener cada página, la fecha de publicación se extrae de
<meta property="article:published_time">, JSON-LDdatePublished,<time datetime>, oYYYY/MM/DDen la URL. Si no se encuentra ninguna, se usa la hora de rastreo (decisión documentada comotime_source).
Cumplimiento
Respeta
robots.txty límites de tasa por defecto para evitar estresar los sitios de destino o ser bloqueado por IP.Para aprendizaje / investigación / sus propios sitios; siga los Términos de Servicio de los sitios de destino y las leyes locales.
Licencia
Construido sobre crawl4ai (Apache-2.0).
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
- Alicense-qualityDmaintenanceEnables automated web research and intelligence gathering through recursive web crawling, multi-engine search integration, and persistent SQLite storage with support for keyword filtering and multiple export formats.MIT
- Flicense-qualityDmaintenanceEnables crawling and extracting clean content from documentation websites with optional LLM-powered analysis for intelligent summaries, code example extraction, and content classification.
- AlicenseAqualityFmaintenanceA comprehensive website crawler and SEO analyzer that stores site data in a local SQLite database for AI-driven auditing. It enables users to detect technical SEO issues, broken links, and security vulnerabilities through natural language queries or terminal commands.45416Apache 2.0
- Alicense-qualityCmaintenanceEnables web crawling and content extraction from web pages, supporting multiple output formats like text, markdown, XML, and JSON, with robots.txt compliance and rate limiting.141MIT
Related MCP Connectors
Scrape, crawl, map & search the web. Open-source, self-hostable Rust crawler & search for AI agents.
Converts any URL to clean, LLM-ready Markdown using real Chrome browsers
Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.
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/coolaigit/site-crawler-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server