io.usefulapi/bunny-net

bunny.net MCP by usefulapi

Inspect pull zones, storage, DNS and video libraries on bunny.net, and purge caches.

1.11.1
Version
remote
Transport
22
Tools

Security review

Review passed

Reviewed 1d ago.

  • tools: 22 tools scanned
  • metadata: scanned

No findings.

Tools (22)

  • bunny_list_pull_zones

    List the CDN pull zones on the account. By default returns a compact view per zone (id, name, origin URL, enabled/suspended, hostnames, linked storage zone, bandwidth and charges this month); set full=true for every setting. bunny.net: GET /pullzone.

  • bunny_get_pull_zone

    Fetch one pull zone with all its settings: origin, hostnames, caching, security, edge rules (with their GUIDs, needed by bunny_set_edge_rule_enabled), blocked IPs, limits and usage. Secrets (token-auth key, AWS signing secret, certificate private keys) are redacted. bunny.net: GET /pullzone/{id}.

  • bunny_list_storage_zones

    List the edge storage zones on the account: region, replication regions, storage used, file count, tier and connected pull zones. Storage passwords are redacted. bunny.net: GET /storagezone.

  • bunny_get_storage_zone

    Fetch one edge storage zone: hostname, region, replication, storage used, files stored, 404 handling and connected pull zones. Storage passwords are redacted. bunny.net: GET /storagezone/{id}.

  • bunny_get_storage_zone_statistics

    Daily charts of storage used and file count for one storage zone. bunny.net: GET /storagezone/{id}/statistics.

  • bunny_list_dns_zones

    List the DNS zones hosted on bunny.net, with nameserver detection, DNSSEC and logging status. bunny.net: GET /dnszone.

  • bunny_get_dns_zone

    Fetch one DNS zone with its settings and records. bunny.net: GET /dnszone/{id}.

  • bunny_list_dns_records

    List the records in one DNS zone, optionally filtered by type or search term. Record Type comes back as bunny.net's integer code (0=A, 1=AAAA, 2=CNAME, 3=TXT, 4=MX, 5=Redirect, 6=Flatten, 7=PullZone, 8=SRV, 9=CAA, 10=PTR, 11=Script, 12=NS, 13=SVCB, 14=HTTPS, 15=TLSA). bunny.net: GET /dnszone/{zoneId}/records.

  • bunny_export_dns_zone

    Export one DNS zone as a BIND zone file (plain text) — handy for review, diffing or backup before a change. bunny.net: GET /dnszone/{id}/export.

  • bunny_list_video_libraries

    List the Stream video libraries: video count, storage and traffic usage, linked pull/storage zones and player/encoding settings. Library API keys are redacted. bunny.net: GET /videolibrary.

  • bunny_get_video_library

    Fetch one Stream video library with its full configuration (resolutions, DRM, referrer rules, transcribing, watermark). Library API keys are redacted. bunny.net: GET /videolibrary/{id}.

  • bunny_get_statistics

    CDN traffic statistics for the account or one pull zone: total bandwidth, origin traffic, requests served, cache hit rate and average origin response time, plus optional charts (bandwidth, requests, origin traffic, response times, 3xx/4xx/5xx errors, geographic distribution). bunny.net: GET /statistics.

  • bunny_list_regions

    List bunny.net's edge regions with their IDs, codes, location and per-GB traffic price. A cheap way to confirm the API key works. bunny.net: GET /region.

  • bunny_get_billing

    The account balance, this month's charges broken down by product (traffic per continent, storage, DNS, Stream, scripting, Shield, ...) and recent billing records. Payment-method tokens are redacted. bunny.net: GET /billing.

  • bunny_get_audit_log

    Who changed what on one day: the account audit log (timestamp, product, resource, action, actor and a diff). Paginate with continuation_token. bunny.net: GET /user/audit/{date}.

  • bunny_purge_pull_zone_cache

    WRITE. Purge the cached content of one pull zone — everything, or only files carrying a cache tag. Nothing is lost (the CDN refetches from the origin) but the origin takes the refill load. bunny.net: POST /pullzone/{id}/purgeCache.

  • bunny_purge_url

    WRITE. Purge one URL from the CDN cache. A URL ending in '/' purges everything under it unless exact_path is true; a '*' wildcard is also accepted. The CDN refetches from the origin. bunny.net: POST /purge.

  • bunny_add_dns_record

    WRITE. Add a record to a DNS zone. Takes effect on live DNS. bunny.net: PUT /dnszone/{zoneId}/records.

  • bunny_update_dns_record

    WRITE. Update an existing DNS record. Takes effect on live DNS. Read the record first with bunny_list_dns_records and pass its type, name and value along with any other fields you want to keep or change. bunny.net: POST /dnszone/{zoneId}/records/{id}.

  • bunny_set_edge_rule_enabled

    WRITE. Turn one edge rule on a pull zone on or off (reversible — the rule is kept). Get the rule's GUID from bunny_get_pull_zone (EdgeRules[].Guid). bunny.net: POST /pullzone/{pullZoneId}/edgerules/{edgeRuleId}/setEdgeRuleEnabled.

  • bunny_add_blocked_ip

    WRITE. Block an IP address from a pull zone (undo with bunny_remove_blocked_ip). bunny.net: POST /pullzone/{id}/addBlockedIp.

  • bunny_remove_blocked_ip

    WRITE. Remove an IP address from a pull zone's block list. bunny.net: POST /pullzone/{id}/removeBlockedIp.