Crawl4AIProxy

Crawl4AIProxy

Docker app from zkkzkk32312's Repository

Overview

Proxy bridging Open WebUI external web loader to Crawl4AI

Crawl4AI Proxy for Open WebUI

A lightweight proxy that bridges Open WebUI's external web loader API to Crawl4AI, enabling high-quality page content fetching for AI chat sessions.

Why?

Open WebUI's default web loader struggles with JavaScript-heavy pages and bot detection. This proxy uses Crawl4AI's headless browser to fetch clean markdown content from any URL, dramatically improving the quality of web-search-enhanced AI responses.

Architecture

Open WebUI → Crawl4AI Proxy (content fetch) → Crawl4AI (markdown extraction)
  1. Open WebUI sends URLs to this proxy as the external web loader
  2. The proxy calls Crawl4AI /md endpoint with filter=fit to extract clean content (strips navigation, ads, sign-in prompts). If the filtered result is too short (<100 chars), it retries without the filter as a fallback
  3. Content is returned to Open WebUI and injected into the AI model's context

Prerequisites

Quick Deploy (Docker)

docker run -d --name crawl4ai-proxy -p 8087:8087 -e CRAWL4AI_URL=http://<your-crawl4ai-ip>:11235/md zkkzkk32312/crawl4ai-proxy

Environment Variables

Variable Default Description
CRAWL4AI_URL http://192.168.1.10:11235/md Crawl4AI /md endpoint URL
PROXY_API_KEY (empty) Optional API key for Open WebUI authentication

Unraid Deployment

Via Community Apps (recommended)

  1. Go to Apps tab in Unraid
  2. Search for Crawl4AI Proxy
  3. Click Install
  4. Configure the settings:
    • Proxy Port — host port (default 8087)
    • Crawl4AI URL — your Crawl4AI /md endpoint
    • Proxy API Key — optional, leave empty to disable
  5. Click Apply

Manual

  1. Copy templates/crawl4ai-proxy.xml to /boot/config/plugins/dockerMan/templates-user/
  2. Go to Docker → Add Container in Unraid
  3. Select my-crawl4ai-proxy template
  4. Configure the settings and click Apply

Open WebUI Configuration

  1. Go to Admin Panel → Web Loader
  2. Set Web Loader Engine to external
  3. Set External Web Loader URL to: http://<proxy-ip>:8087/search
  4. If you set PROXY_API_KEY, enter it in External Web Loader API Key

Note: Make sure Bypass Web Loader is OFF in Admin Panel.

API

POST /search

Fetches page content for a batch of URLs in parallel (all URLs are fetched simultaneously via asyncio.gather).

Request:

{
  "urls": ["https://example.com", "https://github.com/..."]
}

Headers:

Authorization: Bearer <api_key>   (if PROXY_API_KEY is set)

Response:

[
  {
    "page_content": "# Page Title\n\nExtracted markdown content...",
    "metadata": { "source": "https://example.com" }
  }
]

GET /health

Health check endpoint.

{ "status": "ok" }

License

MIT

Install Crawl4AIProxy on Unraid in a few clicks.

Find Crawl4AIProxy in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Crawl4AIProxy Review the template variables and paths Click Install

Download Statistics

214
Total Downloads

Related apps

Explore more like this

Explore all

Details

Repository
zkkzkk32312/crawl4ai-proxy
Last Updated2026-06-02
First Seen2026-06-02

Runtime arguments

Web UI
http://[IP]:[PORT:8087]/
Network
bridge
Shell
sh
Privileged
false

Template configuration

Proxy PortPorttcp

Host port for the proxy

Target
8087
Default
8087
Value
8087
Crawl4AI URLVariable{3}

Crawl4AI /md endpoint URL

Target
CRAWL4AI_URL
Default
http://192.168.1.10:11235/md
Value
http://192.168.1.10:11235/md
Proxy API KeyVariable{3}

API key for Open WebUI (leave empty to disable)

Target
PROXY_API_KEY