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.
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.
- 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`
A reachable Crawl4ai server and its credentials, configured as `cawl4ai.base-url` and `cawl4ai.api-token` in `application.properties`. Java and Maven: `mvn clean install` produces the runnable jar, or download it from the release link, then launch it with `java -jar` from your client over stdio. Logs are written to `./target/mcp-stdio-server.log`.
