Beelzebub logo

Beelzebub

by mariocandela

Runs configurable MCP bait tools and other decoys to observe suspicious agent or attacker behavior.

Install Beelzebub

Pick your client, then add it in one click or paste the config.

No confirmed install command yet

We only publish a config when the install details come from the project itself — its README, its docs, or a verified owner. We haven’t found those for mariocandela/beelzebub, and we’d rather show nothing than a guess you’d paste into your client.

Open setup steps on GitHub

Overview

mariocandela/beelzebub provides configurable decoy services, including MCP bait tools designed to make suspicious agent interactions observable. YAML defines services, routes, handlers, and response rules; static handlers support predictable behavior, while configured LLM providers can generate adaptive responses. Evidence can be written to logs, sent to RabbitMQ, or reported to Beelzebub Platform, with optional Prometheus metrics. Reach for it when testing prompt-injection defenses or studying activity against controlled security decoys.

Use cases

  • Test agent behavior against MCP bait tools
  • Study prompt-injection attempts in an isolated lab
  • Deploy decoy services that record attacker activity
  • Route structured security events to RabbitMQ
  • Monitor decoy runtime activity with Prometheus

Key features

  • MCP bait tools for controlled agent testing
  • YAML-configured decoy services and response rules
  • Static and LLM-powered handlers
  • Evidence output through logs and RabbitMQ
  • Trusted Go plugin extension support
  • Optional Prometheus metrics

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

17/17 checks healthy over the last 78d

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2.2kStargazers on the source repository.
Last commitTodayMost recent push to the default branch.
Directory activity5 viewsConfig copies, upvotes, and views on AllMCPs.

How Beelzebub works

What mariocandela/beelzebub does

mariocandela/beelzebub is an open-source deception framework for creating and operating decoy services. Its MCP support exposes bait tools that are intended to attract suspicious tool calls during controlled agent testing. Those interactions can provide evidence of prompt-injection attempts or other unusual behavior, although the MCP decoys are not presented as a complete detector for every attack.

The framework also covers SSH, HTTP, TCP, TELNET, and MCP services. Example configurations include remote-access services, web endpoints, database and cache protocols, network services, IoT protocols, and AI-agent bait tools. The examples range from fixed banners and responses to interactive exchanges.

How it works

Services and response rules are described in YAML. Beelzebub validates that configuration before starting listeners, then routes incoming interactions to the configured decoy service. Static handlers operate without an LLM provider. LLM-backed handlers require a configured provider and can generate responses for interactions that fall outside a fixed command or route set.

Trusted Go plugins can extend services and response behavior. Plugins are compiled into the runtime and execute in-process, so their source and versions should be reviewed before deployment.

Interactions produce evidence according to the protocol and configured output. Local logs are available by default, while structured events can optionally be published to RabbitMQ or sent to Beelzebub Platform. Prometheus metrics are separately configurable; the metrics listener is disabled and binds no port by default.

Setup and configuration

The quick-start path requires Git, a shell, and Docker Engine with Compose v2. The project recommends using an isolated lab host and authorizing all configured listeners because the installer starts a bundle of example services, some of which use privileged ports. Host networking may be enabled on Linux, which removes Docker's usual network isolation for that mode.

A basic Docker installation is:

bash
git clone https://github.com/beelzebub-labs/beelzebub.git
cd beelzebub
./install.sh --docker

After installation, the bundled HTTP example can be checked with curl -i http://localhost:8080/; its configured response is 401 Unauthorized. Runtime output can be followed with docker compose logs -f beelzebub, and the lab can be stopped with docker compose down. A Platform token is optional when running independently. Review the production-safety guidance and use synthetic credentials before exposing decoys to the internet.

Tools and capabilities

  • Define decoy services, routes, and response behavior in YAML.
  • Expose MCP bait tools for controlled agent-security testing.
  • Run static handlers or provider-backed LLM responses.
  • Extend the runtime with trusted Go plugins.
  • Capture commands, HTTP request details, and session context where supported by the protocol.
  • Export evidence through logs, RabbitMQ, or Beelzebub Platform.
  • Enable Prometheus metrics for runtime monitoring.

Limitations and notes

MCP bait tools support observation of suspicious invocations but do not guarantee detection of every prompt-injection attempt. LLM examples depend on a configured provider, while static examples do not. The default installation launches multiple example listeners, so occupied ports and deployment exposure need to be managed. In-process plugins require particular trust because they run inside the framework runtime.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Beelzebub

mariocandela/beelzebub is an MCP server that exposes configurable bait tools for observing suspicious agent behavior during controlled testing. It connects MCP clients or agents to decoy interactions, while also supporting SSH, HTTP, TCP, and TELNET decoys. YAML rules, static handlers, and optional LLM responses shape tool behavior.

Install it with Docker Compose by cloning the repository, entering its directory, and running `./install.sh --docker`. Git, a shell, and Docker Engine with Compose v2 are required. Use an isolated lab host because the installer starts several example listeners, including services that may use privileged ports.

Yes, run it independently without a Platform token. Local logs remain available, while RabbitMQ event publishing and Platform reporting are optional outputs. The framework validates its configuration before starting listeners.

It can provide evidence of prompt-injection attempts through MCP bait-tool interactions, but it does not guarantee detection of every attempt. Use the decoys for controlled agent testing and review the resulting interaction evidence.

Configure an LLM provider for handlers that need adaptive responses. Static handlers work without a provider, while LLM-backed examples require one. The framework uses YAML service and response rules to determine how interactions are handled.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewBeelzebub AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/mariocandela-beelzebub?style=directory)](https://allmcps.com/mcp/mariocandela-beelzebub)
HTML Embed
<a href="https://allmcps.com/mcp/mariocandela-beelzebub"><img src="https://allmcps.com/api/badge/mariocandela-beelzebub?style=directory" alt="Beelzebub on AllMCPs" /></a>