whatisgithub

What is mulot?

io-tl/mulot — explained in plain English

Analysis updated 2026-05-18

7GoAudience · researcherComplexity · 4/5LicenseSetup · hard

In one sentence

An AI agent that drives a real browser through Burp-style tools to test websites for security vulnerabilities.

Mindmap

mindmap
  root((mulot))
    What it does
      AI drives a browser
      Tests for vulnerabilities
      Burp-style toolkit
    Tech stack
      Go
      MCP
      Chromium
    Use cases
      Automated web pentesting
      CTF challenge solving
      Traffic capture and fuzzing
    Audience
      Security researchers
      Pentesters

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Test a web application for common vulnerabilities using an AI agent instead of manual pentesting.

USE CASE 2

Study how AI agents can be equipped with security-testing tools to solve CTF-style web challenges.

USE CASE 3

Automate traffic capture, replay, and fuzzing against a target using a browser-driven proxy.

What is it built with?

GoMCPChromiumSQLitePython

How does it compare?

io-tl/mulotdemomanito/helperemersion/minilustre
Stars777
LanguageGoGoGo
Last pushed2023-03-072019-01-07
MaintenanceDormantDormant
Setup difficultyhardeasymoderate
Complexity4/51/54/5
Audienceresearchergeneralresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires building a Go binary, running a local or cloud LLM provider, and setting API keys for the model you use.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

So what is it?

mulot is an agentic AI web pentesting tool that controls a real web browser to test websites for security weaknesses, the way a human penetration tester would. Instead of relying on the biggest, most expensive AI models, it is designed to work with open weights models like GLM-5.2, Gemma, or Qwen, running a real headless Chromium browser rather than just sending raw HTTP requests. The idea behind the project is that the tools an agent has access to matter as much as the model itself. Security professionals commonly use tools like Burp Suite, ZAP, or Fiddler for intercepting and replaying web traffic, and language models have seen a lot of writing about these tools during training. So mulot gives the model that same kind of toolkit rather than something unfamiliar. The project is split into two halves. The proxy half keeps a full history of HTTP traffic in a SQLite database that can be queried and replayed, lets the agent rebuild and reissue requests, run automated fuzzing against a marked point in a request, and run passive or active scans over captured traffic. Because it captures traffic through the browser itself, it can read HTTPS content without needing a separate interception certificate. The thinking half runs JavaScript directly inside the target web page, letting the agent write its own scripts for things like padding oracle attacks or time based SQL injection, plus a library of pre-written playbooks and wordlists built into the program that get loaded based on what technology stack the target uses. To use it, you build the Go binary that acts as an MCP server, then run a small Python script called agent.py that connects the tool to any OpenAI-compatible model provider, with presets for OpenRouter, local llama.cpp, and Zai. A handful of environment variables control things like the browser's user agent, whether it runs headless, and any upstream proxy to route traffic through. The author reports that GLM-5.2, running only through this toolkit, solved 87 percent of the OverTheWire Natas web security challenges and 73 percent of Root-Me's Web-Server challenges. The README includes a detailed results table listing which specific challenges were solved and which technique each one required, along with a short note on the ones that failed.

Copy-paste prompts

Prompt 1
Help me build and run the mulot MCP server binary on my machine.
Prompt 2
Show me how to connect mulot to a local llama.cpp model using agent.py.
Prompt 3
Explain how mulot's in-page JavaScript toolbox is used to test for SQL injection.
Prompt 4
Walk me through mulot's embedded skills system and how playbooks are selected for a target.

Frequently asked questions

What is mulot?

An AI agent that drives a real browser through Burp-style tools to test websites for security vulnerabilities.

What language is mulot written in?

Mainly Go. The stack also includes Go, MCP, Chromium.

What license does mulot use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is mulot to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is mulot for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.