Crawl4AI RAG MCP Server

by coleam00
MIT License
115
  • Linux
  • Apple

Integrations

  • Allows running the MCP server as a container, with configuration options for both SSE and stdio transports

  • Supports integration with n8n, with special network configuration instructions for Docker environments

  • Planned future integration to enable running embedding models locally for complete privacy and control

Una poderosa implementación del Protocolo de Contexto de Modelo (MCP) integrado con Crawl4AI y Supabase para proporcionar a los agentes de IA y asistentes de codificación de IA capacidades avanzadas de rastreo web y RAG.

Con este servidor MCP, puedes extraer cualquier cosa y luego usar ese conocimiento en cualquier lugar para RAG.

El objetivo principal es integrar este servidor MCP en Archon a medida que lo desarrollo para que sea un motor de conocimiento para que los asistentes de programación de IA creen agentes de IA. Esta primera versión del servidor MCP de Crawl4AI/RAG se mejorará considerablemente próximamente, especialmente para que sea más configurable y permita usar diferentes modelos de incrustación y ejecutar todo localmente con Ollama.

Descripción general

Este servidor MCP proporciona herramientas que permiten a los agentes de IA rastrear sitios web, almacenar contenido en una base de datos vectorial (Supabase) y ejecutar RAG sobre el contenido rastreado. Sigue las mejores prácticas para crear servidores MCP, basándose en la plantilla de servidor MCP Mem0 que compartí anteriormente en mi canal.

Visión

El servidor Crawl4AI RAG MCP es solo el comienzo. Aquí es donde nos dirigimos:

  1. Integración con Archon : incorporar este sistema directamente en Archon para crear un motor de conocimiento integral para que los asistentes de codificación de IA creen mejores agentes de IA.
  2. Múltiples modelos de integración : expansión más allá de OpenAI para admitir una variedad de modelos de integración, incluida la capacidad de ejecutar todo localmente con Ollama para un control y privacidad completos.
  3. Estrategias RAG avanzadas : implementación de técnicas de recuperación sofisticadas como recuperación contextual, fragmentación tardía y otras para ir más allá de las "búsquedas ingenuas" básicas y mejorar significativamente la potencia y la precisión del sistema RAG, especialmente a medida que se integra con Archon.
  4. Estrategia de fragmentación mejorada : implementación de un enfoque de fragmentación inspirado en Context 7 que se centra en ejemplos y crea secciones distintas y semánticamente significativas para cada fragmento, lo que mejora la precisión de la recuperación.
  5. Optimización del rendimiento : aumentar la velocidad de rastreo e indexación para que sea más realista indexar "rápidamente" nueva documentación para luego aprovecharla dentro del mismo mensaje en un asistente de codificación de IA.

Características

  • Detección inteligente de URL : detecta y gestiona automáticamente distintos tipos de URL (páginas web normales, mapas de sitios, archivos de texto)
  • Rastreo recursivo : sigue enlaces internos para descubrir contenido
  • Procesamiento paralelo : rastrea eficientemente varias páginas simultáneamente
  • Fragmentación de contenido : divide de forma inteligente el contenido por encabezados y tamaño para un mejor procesamiento
  • Búsqueda vectorial : realiza RAG sobre el contenido rastreado y filtra opcionalmente por fuente de datos para mayor precisión
  • Recuperación de fuentes : recupera fuentes disponibles para filtrar y guiar el proceso RAG

Herramientas

El servidor proporciona cuatro herramientas esenciales de búsqueda y rastreo web:

  1. crawl_single_page : Rastrea rápidamente una sola página web y almacena su contenido en la base de datos vectorial
  2. smart_crawl_url : rastrea de forma inteligente un sitio web completo según el tipo de URL proporcionada (mapa del sitio, llms-full.txt o una página web normal que necesita rastrearse de forma recursiva)
  3. get_available_sources : obtiene una lista de todas las fuentes (dominios) disponibles en la base de datos
  4. perform_rag_query : busca contenido relevante mediante búsqueda semántica con filtrado de fuente opcional

Prerrequisitos

Instalación

Uso de Docker (recomendado)

  1. Clonar este repositorio:
    git clone https://github.com/coleam00/mcp-crawl4ai-rag.git cd mcp-crawl4ai-rag
  2. Construya la imagen de Docker:
    docker build -t mcp/crawl4ai-rag --build-arg PORT=8051 .
  3. Cree un archivo .env basado en la sección de configuración a continuación

Usando uv directamente (sin Docker)

  1. Clonar este repositorio:
    git clone https://github.com/coleam00/mcp-crawl4ai-rag.git cd mcp-crawl4ai-rag
  2. Instalar uv si no lo tienes:
    pip install uv
  3. Crear y activar un entorno virtual:
    uv venv .venv\Scripts\activate # on Mac/Linux: source .venv/bin/activate
  4. Instalar dependencias:
    uv pip install -e . crawl4ai-setup
  5. Cree un archivo .env basado en la sección de configuración a continuación

Configuración de la base de datos

Antes de ejecutar el servidor, debe configurar la base de datos con la extensión pgvector:

  1. Vaya al Editor SQL en su panel de Supabase (primero cree un nuevo proyecto si es necesario)
  2. Cree una nueva consulta y pegue el contenido de crawled_pages.sql
  3. Ejecute la consulta para crear las tablas y funciones necesarias

Configuración

Cree un archivo .env en la raíz del proyecto con las siguientes variables:

# MCP Server Configuration HOST=0.0.0.0 PORT=8051 TRANSPORT=sse # OpenAI API Configuration OPENAI_API_KEY=your_openai_api_key # Supabase Configuration SUPABASE_URL=your_supabase_project_url SUPABASE_SERVICE_KEY=your_supabase_service_key

Ejecución del servidor

Usando Docker

docker run --env-file .env -p 8051:8051 mcp/crawl4ai-rag

Usando Python

uv run src/crawl4ai_mcp.py

El servidor se iniciará y escuchará en el host y puerto configurados.

Integración con clientes MCP

Configuración de SSE

Una vez que tenga el servidor funcionando con el transporte SSE, puede conectarse a él utilizando esta configuración:

{ "mcpServers": { "crawl4ai-rag": { "transport": "sse", "url": "http://localhost:8051/sse" } } }

Nota para los usuarios de Windsurf : utilice serverUrl en lugar de url en su configuración:

{ "mcpServers": { "crawl4ai-rag": { "transport": "sse", "serverUrl": "http://localhost:8051/sse" } } }

Nota para usuarios de Docker : Usen host.docker.internal en lugar de localhost si su cliente se ejecuta en un contenedor diferente. Esto aplica si usan este servidor MCP dentro de n8n.

Configuración de Stdio

Agregue este servidor a su configuración de MCP para Claude Desktop, Windsurf o cualquier otro cliente de MCP:

{ "mcpServers": { "crawl4ai-rag": { "command": "python", "args": ["path/to/crawl4ai-mcp/src/crawl4ai_mcp.py"], "env": { "TRANSPORT": "stdio", "OPENAI_API_KEY": "your_openai_api_key", "SUPABASE_URL": "your_supabase_url", "SUPABASE_SERVICE_KEY": "your_supabase_service_key" } } } }

Docker con configuración de Stdio

{ "mcpServers": { "crawl4ai-rag": { "command": "docker", "args": ["run", "--rm", "-i", "-e", "TRANSPORT", "-e", "OPENAI_API_KEY", "-e", "SUPABASE_URL", "-e", "SUPABASE_SERVICE_KEY", "mcp/crawl4ai"], "env": { "TRANSPORT": "stdio", "OPENAI_API_KEY": "your_openai_api_key", "SUPABASE_URL": "your_supabase_url", "SUPABASE_SERVICE_KEY": "your_supabase_service_key" } } } }

Construyendo su propio servidor

Esta implementación proporciona una base para construir servidores MCP más complejos con capacidades de rastreo web. Para construir el suyo propio:

  1. Agregue sus propias herramientas creando métodos con el decorador @mcp.tool()
  2. Crea tu propia función de vida útil para agregar tus propias dependencias
  3. Modifique el archivo utils.py para cualquier función auxiliar que necesite
  4. Amplíe las capacidades de rastreo agregando rastreadores más especializados
-
security - not tested
A
license - permissive license
-
quality - not tested

Implementación de rastreo web y RAG que permite a los agentes de IA rastrear sitios web y realizar búsquedas semánticas sobre el contenido rastreado, almacenando todo en Supabase para la recuperación de conocimiento persistente.

  1. Visión
    1. Características
      1. Herramientas
        1. Prerrequisitos
          1. Instalación
            1. Uso de Docker (recomendado)
            2. Usando uv directamente (sin Docker)
          2. Configuración de la base de datos
            1. Configuración
              1. Ejecución del servidor
                1. Usando Docker
                2. Usando Python
              2. Integración con clientes MCP
                1. Configuración de SSE
                2. Configuración de Stdio
                3. Docker con configuración de Stdio
              3. Construyendo su propio servidor

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  This server enables AI systems to integrate with Tavily's search and data extraction tools, providing real-time web information access and domain-specific searches.
                  Last updated -
                  2
                  5,133
                  334
                  JavaScript
                  MIT License
                  • Apple
                  • Linux
                • A
                  security
                  A
                  license
                  A
                  quality
                  A server that provides web scraping and intelligent content searching capabilities using the Firecrawl API, enabling AI agents to extract structured data from websites and perform content searches.
                  Last updated -
                  5
                  2
                  TypeScript
                  MIT License
                  • Apple
                  • Linux
                • -
                  security
                  A
                  license
                  -
                  quality
                  Empowers AI agents to perform web browsing, automation, and scraping tasks with minimal supervision using natural language instructions and Selenium.
                  Last updated -
                  1
                  Python
                  Apache 2.0
                  • Apple
                • -
                  security
                  -
                  license
                  -
                  quality
                  Integrates with Dumpling AI to provide data scraping, content processing, knowledge management, and code execution capabilities through tools for web interactions, document handling, and AI services.
                  Last updated -
                  2
                  JavaScript
                  MIT License

                View all related MCP servers

                ID: 0tzydxm4hi