mcpField
B
bunny.net CDN and Shield

bunny.net CDN and Shield

Local
github.com/fullfatthingsCloud & Infra0Updated 1w ago

About bunny.net CDN and Shield

bunny.net CDN and Shield is an MCP server for diagnosing bunny.net CDN sites and managing Shield WAF. It is intended for teams handling CDN and web security settings, and covers cache, edge rules, statistics, origin errors, and WAF, with diffs for updates.

Key features

  1. 01Inspect pull zones and CDN statistics
  2. 02Review origin errors and edge rules
  3. 03Manage cache purges and zone settings
  4. 04Configure WAF, custom rules, and rate limits
  5. 05View WAF event logs and bot detection
  6. 06Show before-and-after update diffs and hide credentials

Use cases

  1. 01Diagnose CDN request errors and cache performance
  2. 02Purge a URL or an entire pull zone
  3. 03Adjust WAF rules and rate limits
  4. 04Review recently blocked, challenged, or logged requests

MCP support

The MCP server exposes tools to read and manage bunny.net pull zones, edge rules, cache, statistics, and Shield WAF. Setting BUNNY_READONLY=1 registers only read tools.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"fullfatthings-bunny": {
"command": "npx",
"args": [
"-y",
"@fullfatthings/bunny-mcp"
],
"env": {
"BUNNY_API_KEY": "<BUNNY_API_KEY>",
"BUNNY_READONLY": "<BUNNY_READONLY>"
}
}
}
}
Run commandnpx -y @fullfatthings/bunny-mcp
Environment variables to set
BUNNY_API_KEYSecretbunny.net account API key (full account access)
BUNNY_READONLYSet to 1 to register only read tools

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@fullfatthings/bunny-mcp1.0.1

Tools

16

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
pageintegerNo
searchstringNoFilter by name or hostname
perPageintegerNo

Details

From the project README

bunny-mcp

An MCP server for debugging bunny.net CDN sites and managing bunny Shield, the bunny.net web application firewall (WAF).

This is an unofficial project. It is not affiliated with or endorsed by bunny.net.

It covers pull zones (CDN sites), edge rules, cache purges, CDN statistics, origin error logs, and Shield: WAF settings, custom WAF rules, rate limits, bot detection and WAF event logs. It does not cover DNS, storage, Stream or edge scripts. For those, see anvme/bunnycdn-mcp or Digitizers/bunny-mcp.

What it does differently

  • Explains what rules will really do. get_shield_zone returns notes that warn, for example, when Block rules only log because the zone's WAF execution mode is Log.
  • Reads WAF event logs. shield_event_logs shows what the WAF blocked, challenged or logged in the last 72 hours, grouped by rule, IP, JA4 fingerprint and more.
  • Reports what changed. Update tools return a before-and-after diff. update_pull_zone also lists settings bunny.net changed that you did not ask for.
  • Keeps responses small. Pull zones, edge rules, origin errors and event logs are summarised. Pass detail: true for the raw response.
  • Hides credentials. Token authentication keys, AWS signing keys, TLS certificates and private keys, log forwarding tokens, and cookie or Authorization values in edge rule triggers are replaced with <hidden>, also in raw responses.

Requirements

  • Node.js 20 or later
  • A bunny.net account API key, from Account settings > API key in the bunny.net dashboard. This key gives full access to the account.

Install

Claude Code:

claude mcp add bunny --env BUNNY_API_KEY=your-key -- npx -y @fullfatthings/bunny-mcp

Other MCP clients (for example Claude Desktop):

{
  "mcpServers": {
    "bunny": {
      "command": "npx",
      "args": ["-y", "@fullfatthings/bunny-mcp"],
      "env": { "BUNNY_API_KEY": "your-key" }
    }
  }
}

Configuration

VariableMeaning
BUNNY_API_KEYRequired. Your bunny.net account API key.
BUNNY_READONLYSet to 1 to register only the read tools. Write tools are then absent from the tool list, so the assistant cannot call them.

Tools

Read tools:

ToolPurpose
list_pull_zonesList pull zones with IDs, origins and hostnames.
get_pull_zoneOne pull zone: hostnames, readable edge rules, and caching, origin and security settings.
cdn_statisticsBandwidth, requests, cache hit rate and error responses.
origin_errorsFailed requests from bunny.net to your origin on one day, with counts by error.
get_shield_zoneWAF settings, custom rules, rate limits and bot detection, with notes.
shield_event_logsRequests the WAF blocked, challenged or logged in the last 72 hours.

Write tools (not registered when BUNNY_READONLY=1):

ToolPurpose
update_pull_zoneChange pull zone settings.
purge_cachePurge one URL or a whole pull zone.
save_edge_ruleCreate or update an edge rule.
set_edge_rule_enabledSwitch an edge rule on or off.
delete_edge_ruleDelete an edge rule.
update_shield_zoneChange WAF settings, including adding or removing single rule IDs from lists.
update_bot_detectionChange bot detection mode and sensitivity.
save_waf_ruleCreate or update a custom WAF rule.
save_rate_limitCreate or update a rate limit.
delete_shield_ruleDelete a custom WAF rule or rate limit.

To test a new WAF rule safely, save it with action Log, check shield_event_logs, then save it again with action Block.

Development

npm install
npm test

To release, run npm version patch (or minor or major). It updates package.json and server.json, commits, tags and pushes; the tag starts a GitHub Action that publishes to npm and the MCP registry.

Licence

MIT. See LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.