Skip to main content
Glama
coleam00

Crawl4AI RAG MCP Server

by coleam00

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

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

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

Обзор

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

Related MCP server: Browser Automation MCP Server

Зрение

Сервер 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. Расширьте возможности сканирования, добавив больше специализированных сканеров.

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/coleam00/mcp-crawl4ai-rag'

If you have feedback or need assistance with the MCP directory API, please join our Discord server