LabscoMCP early access ↗
rainyheartMCP SERVER

JCrawl4AI

A Java front end to a Crawl4ai server — start a crawl with a strategy, depth and output format, then collect the result by task id.

by rainyheart ↗Site Crawling & Scraping InfrastructureCommunity

LABSCO SUMMARY

Submit and collect, rather than wait.

Splitting the crawl into a submit call and a fetch-by-task-id call is the right shape for anything that walks more than one page — the assistant is not blocked while the crawler works, and a result can be picked up later in the conversation. It is a client for a Crawl4ai deployment, not a crawler in itself, so the base URL and token point at infrastructure you run.

What it is

A Spring Boot MCP server that calls the Crawl4ai API. The crawl is asynchronous by design: one call submits the job and another collects the result, so a deep crawl does not hold the tool call open.

What you get

  • Crawl submission over an array of target URLs, with a crawl strategy, a maximum depth and an output format — crawl
  • Result retrieval for a submitted job by its task id, returned as a JSON string — task

Requirements

A reachable Crawl4ai server and its credentials, configured as crawl4ai.base-url and crawl4ai.api-token in src/main/resources/application.properties. Java 17 and Maven: clone the repository, and mvn clean install produces target/jcrawl4ai-mcp-server-1.0.0.jar, which your client launches with java -jar over stdio. Logs are written to ./target/mcp-stdio-server.log.

Setup effort

Build from source — git clone https://github.com/rainyheart/jcrawl4ai-mcp-server.git