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

Мощная реализация протокола контекста модели (MCP), интегрированная с Crawl4AI и Supabase для предоставления агентам ИИ и помощникам по кодированию расширенными возможностями веб-сканирования и RAG.

С помощью этого MCP-сервера вы можете извлечь данные из чего угодно, а затем использовать эти знания где угодно для RAG.

Основная цель — перенести этот сервер MCP в Archon , поскольку я развиваю его, чтобы он стал скорее движком знаний для помощников по кодированию ИИ для создания агентов ИИ. Эта первая версия сервера Crawl4AI/RAG MCP будет значительно улучшена в ближайшее время, особенно в плане ее настройки, чтобы вы могли использовать различные модели встраивания и запускать все локально с помощью Ollama.

Обзор

Этот сервер MCP предоставляет инструменты, которые позволяют агентам ИИ сканировать веб-сайты, хранить контент в векторной базе данных (Supabase) и выполнять RAG над просканированным контентом. Он следует лучшим практикам создания серверов MCP на основе шаблона сервера Mem0 MCP, который я ранее предоставил на своем канале.

Зрение

Сервер Crawl4AI RAG MCP — это только начало. Вот куда мы направляемся:

  1. Интеграция с Archon : встраивание этой системы непосредственно в Archon для создания комплексного механизма знаний для помощников по кодированию ИИ с целью создания более эффективных агентов ИИ.
  2. Множественные модели встраивания : выход за рамки OpenAI для поддержки различных моделей встраивания, включая возможность локального запуска всего с помощью Ollama для полного контроля и конфиденциальности.
  3. Расширенные стратегии RAG : внедрение сложных методов поиска, таких как контекстный поиск, позднее фрагментирование и другие, чтобы выйти за рамки базовых «наивных поисков» и значительно повысить мощность и точность системы RAG, особенно при ее интеграции с Archon.
  4. Улучшенная стратегия фрагментации : реализация подхода к фрагментации, вдохновленного Context 7, который фокусируется на примерах и создает отдельные, семантически значимые разделы для каждого фрагмента, повышая точность поиска.
  5. Оптимизация производительности : увеличение скорости сканирования и индексирования, что делает более реалистичной «быструю» индексацию новой документации, а затем ее использование в том же запросе в помощнике по кодированию на основе ИИ.

Функции

  • Интеллектуальное определение URL-адресов : автоматически обнаруживает и обрабатывает различные типы URL-адресов (обычные веб-страницы, карты сайтов, текстовые файлы)
  • Рекурсивное сканирование : прохождение внутренних ссылок для обнаружения контента.
  • Параллельная обработка : эффективно сканирует несколько страниц одновременно.
  • Разделение контента на части : интеллектуальное разделение контента по заголовкам и размеру для лучшей обработки.
  • Векторный поиск : выполняет RAG по просканированному контенту, опционально фильтруя по источнику данных для точности.
  • Извлечение источника : извлечение источников, доступных для фильтрации, для руководства процессом RAG.

Инструменты

Сервер предоставляет четыре основных инструмента веб-сканирования и поиска:

  1. crawl_single_page : быстрое сканирование одной веб-страницы и сохранение ее содержимого в векторной базе данных
  2. smart_crawl_url : интеллектуальное сканирование всего веб-сайта на основе предоставленного типа URL-адреса (карта сайта, llms-full.txt или обычная веб-страница, которую необходимо сканировать рекурсивно)
  3. get_available_sources : Получить список всех доступных источников (доменов) в базе данных
  4. perform_rag_query : Поиск релевантного контента с использованием семантического поиска с дополнительной фильтрацией источника

Предпосылки

  • Docker/Docker Desktop , если сервер MCP запущен как контейнер (рекомендуется)
  • Python 3.12+, если сервер MCP запущен напрямую через uv
  • Supabase (база данных для RAG)
  • Ключ API OpenAI (для генерации вложений)

Установка

Использование Docker (рекомендуется)

  1. Клонируйте этот репозиторий:
    git clone https://github.com/coleam00/mcp-crawl4ai-rag.git cd mcp-crawl4ai-rag
  2. Создайте образ Docker:
    docker build -t mcp/crawl4ai-rag --build-arg PORT=8051 .
  3. Создайте файл .env на основе раздела конфигурации ниже.

Использование uv напрямую (без Docker)

  1. Клонируйте этот репозиторий:
    git clone https://github.com/coleam00/mcp-crawl4ai-rag.git cd mcp-crawl4ai-rag
  2. Установите uv, если у вас его нет:
    pip install uv
  3. Создайте и активируйте виртуальную среду:
    uv venv .venv\Scripts\activate # on Mac/Linux: source .venv/bin/activate
  4. Установите зависимости:
    uv pip install -e . crawl4ai-setup
  5. Создайте файл .env на основе раздела конфигурации ниже.

Настройка базы данных

Перед запуском сервера необходимо настроить базу данных с расширением pgvector:

  1. Перейдите в редактор SQL на панели управления Supabase (при необходимости сначала создайте новый проект).
  2. Создайте новый запрос и вставьте содержимое crawled_pages.sql
  3. Выполнить запрос для создания необходимых таблиц и функций.

Конфигурация

Создайте файл .env в корне проекта со следующими переменными:

# 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

Запуск сервера

Использование Докера

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

Использование Python

uv run src/crawl4ai_mcp.py

Сервер запустится и будет прослушивать настроенный хост и порт.

Интеграция с клиентами MCP

Конфигурация SSE

После того, как сервер будет запущен с транспортом SSE, вы сможете подключиться к нему, используя следующую конфигурацию:

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

Примечание для пользователей Windsurf : используйте serverUrl вместо url в вашей конфигурации:

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

Примечание для пользователей Docker : используйте host.docker.internal вместо localhost , если ваш клиент работает в другом контейнере. Это будет применяться, если вы используете этот сервер MCP в n8n!

Конфигурация Stdio

Добавьте этот сервер в конфигурацию MCP для Claude Desktop, Windsurf или любого другого клиента 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 с конфигурацией 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" } } } }

Создание собственного сервера

Эта реализация обеспечивает основу для создания более сложных серверов MCP с возможностями веб-сканирования. Чтобы создать свой собственный:

  1. Добавьте свои собственные инструменты, создав методы с помощью декоратора @mcp.tool()
  2. Создайте собственную функцию жизненного цикла, чтобы добавить собственные зависимости
  3. Измените файл utils.py для любых необходимых вам вспомогательных функций.
  4. Расширьте возможности сканирования, добавив больше специализированных сканеров.
-
security - not tested
A
license - permissive license
-
quality - not tested

Реализация веб-сканирования и RAG, позволяющая агентам ИИ сканировать веб-сайты и выполнять семантический поиск по просканированному контенту, сохраняя все данные в Supabase для постоянного извлечения знаний.

  1. Зрение
    1. Функции
      1. Инструменты
        1. Предпосылки
          1. Установка
            1. Использование Docker (рекомендуется)
            2. Использование uv напрямую (без Docker)
          2. Настройка базы данных
            1. Конфигурация
              1. Запуск сервера
                1. Использование Докера
                2. Использование Python
              2. Интеграция с клиентами MCP
                1. Конфигурация SSE
                2. Конфигурация Stdio
                3. Docker с конфигурацией Stdio
              3. Создание собственного сервера

                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