What is BlanketFort?

BlanketFort is a Discord moderation federation system. It lets multiple servers share ban and verification records, so a user banned in one community is automatically flagged when they join another connected server.

Key capabilities:

  • Global Bans — issue network-wide bans visible to all federated servers
  • Verifications — verify users as safe and share that record across the network
  • Intel — AI-assisted risk scoring on new members
  • Federation — peer-to-peer ban and verification sharing between trusted servers
  • Appeals — users can appeal global bans through a public form
  • Alt Detection — automatic flagging of possible alternate accounts on join

Installation

Step 1 — Add the bot

Click Add to Server on the dashboard or use the invite link. Select your server and authorize all requested permissions.

BlanketFort needs Ban Members, Kick Members, Manage Roles, and Send Messages at minimum. Administrator is recommended for full functionality.

Step 2 — Run setup

Once the bot is in your server, run:

/blanketfort setup

Registers your server with the BlanketFort network and creates the database record. You only need to do this once.

Step 3 — Configure channels

Go to Dashboard → Settings and configure:

  • Staff Alert Channel — where join alerts, ban notifications, and federation updates are posted
  • Staff Ping Role — role pinged for high-risk join alerts
  • Verified Role — role assigned when someone is verified with /mod verify

Permissions

BlanketFort has three access levels:

RoleAccess
SuperadminFull access to all servers, admin panel, federation management
AdminFull access to their guild dashboard, can manage settings and federation
StaffCan use all /mod commands, read-only dashboard access

Staff roles are auto-populated when someone uses a /mod command. You can also manage them manually in Dashboard → Settings.

/mod Commands

All moderation commands. Requires staff permission.

/mod globalban Issue a network-wide ban

Bans a user across the entire BlanketFort network. Federated servers will receive the ban in their inbox.

ParameterTypeDescription
userrequiredThe Discord user to ban
categoryrequiredBan category — autocompletes from the network list (harassment, grooming, scam, etc.)
reasonrequiredReason for the ban, visible on appeals and in the dashboard
evidence_urloptionalLink to evidence (screenshot, ticket, etc.)
ban_locallyoptionalAlso Discord-ban them from this server (default: yes)
/mod localban Ban user in this server only

Bans a user locally without issuing a network-wide record.

ParameterTypeDescription
userrequiredUser to ban
reasonrequiredReason for ban
evidence_urloptionalEvidence link
duration_hoursoptionalTemporary ban duration. Leave blank for permanent.
Temporary bans are automatically lifted and the user is unbanned in Discord when the timer expires.
/mod verify Verify a user as safe

Records a verification for a user and optionally assigns the Verified role. Shared with federated servers.

ParameterTypeDescription
userrequiredUser to verify
methodrequiredVerification method — autocompletes (age_check, id_verify, vouched, etc.)
noterequiredHow they were verified (e.g. "Verified via ticket #1234")
ticket_urloptionalLink to the verification ticket
evidence_urloptionalSupporting evidence
/mod lookup Quick public trust embed

Posts a visible embed showing a user's network status — active bans, verification count, and risk score. Useful for quickly briefing staff in channel.

ParameterTypeDescription
userrequiredUser to look up
/mod trust Detailed trust history (staff-only)

Ephemeral (private) detailed breakdown of a user's full verification and ban history across all servers.

/mod note Add a staff note

Adds a private staff note to a user without banning or verifying them. Notes appear in the dashboard and user timeline. Great for tracking borderline behavior.

ParameterTypeDescription
userrequiredUser to note
noterequiredNote content (up to 2000 characters)
/mod notes View staff notes for a user

Lists all staff notes on file for a user from this server. Ephemeral — only visible to you.

/mod scan Run intel scan on a user

Triggers the AI intel system to analyze a user and return a risk score, flags, and behavioral analysis.

/mod watchlist / unwatchlist Watch a user

Adds or removes a user from this server's watchlist. Staff will get an alert in the staff channel when a watchlisted user joins.

/mod revoke Revoke a global ban

Revokes a global ban by its ban ID. The ban remains on record but is marked inactive.

/mod localunban Unban from this server only

Removes a local ban from this server without affecting global ban records.

/blanketfort Commands

Server configuration commands. Requires admin permission.

/blanketfort setupInitial server registration

Registers your server with BlanketFort. Run once after inviting the bot. Sets default configuration and enables auto-scanning.

/blanketfort statusShow server configuration

Displays current BlanketFort settings for this server — federation status, alert channel, verified role, and feature flags.

/blanketfort syncManual federation sync

Triggers an immediate federation sync with all peer servers to pull the latest bans and verifications into your inbox.

/federation Commands

Manage federation peers. Requires admin permission.

/federation peer addAdd a federation peer

Sends a federation request to another server by Discord server ID. Both servers must accept for federation to be active.

/federation peer listList all peers

Shows all active and pending federation peers for this server.

/federation peer removeRemove a peer

Disconnects federation with a peer server. Existing received bans are retained but no new syncs occur.

Dashboard

Access the dashboard at blanketfort.snugglesmp.com/dashboard. Log in with Discord — you'll only see servers where you have staff access.

Overview

At-a-glance stats for your server: recent bans, recent verifications, high risk joins, and federation sync status.

Bans

Full list of global bans issued by your server. You can revoke bans, view evidence, and see the full ban history per user.

Verifications

All verified users from your server. Verifications are federated to peer servers automatically.

Analytics

Charts showing ban trends by category and month, top staff by ban count, and network-wide totals. Includes CSV export for bans and verifications.

Notes

Staff notes added via /mod note. Can be pinned and searched. Notes are private to your server.

Appeals

Ban appeals submitted by users. Staff can approve (which unbans the user) or deny each appeal.

Audit Log

Full chronological log of every action taken through BlanketFort — bans, verifications, settings changes, federation actions.

Federation → Ban Inbox

Bans received from peer servers appear here. For each one you can:

  • Ban Here — apply the ban locally in Discord
  • Dismiss — acknowledge without banning
  • Bulk Ban All / Dismiss All — process the whole inbox at once

Federation → Verification Inbox

Verifications received from peers. You can accept them (assigns your verified role) or dismiss. Supports per-peer auto-accept.

Federation Health

Per-peer reputation scores, ban actioned rates, and last sync times. Useful for spotting peers that aren't syncing.

Webhooks & API Keys

Webhooks

Configure HTTP callbacks that fire when events happen. Go to Dashboard → Webhooks.

Available events: global_ban, verification, federation_ban, local_ban, appeal

Each delivery includes a signed X-BlanketFort-Signature header (SHA-256 HMAC) when a signing secret is set. Webhooks are auto-disabled after 10 consecutive failures.

API Keys

Generate API keys under Dashboard → API Keys. Use them in the Authorization: Bearer bf_xxxxx header to query BlanketFort from external tools.

Keys are shown only once at creation and cannot be recovered. Save them immediately.

How Federation Works

Federation is peer-to-peer — there's no central authority. Two servers must both accept each other before any data is shared.

  • Server A issues a global ban → it goes into Server B's Ban Inbox
  • Server B's staff decide to ban locally, or dismiss
  • Syncs happen automatically at 3:30am UTC daily, or manually via /blanketfort sync
  • Bans with federation scope = local are NOT pushed to peers

Peer tiers control sync depth. Tier 1 peers get everything; Tier 2 peers get a filtered subset. Set tiers in Dashboard → Federation.

Server reputation scores are calculated nightly based on false positive rate and approved appeals. Higher reputation servers carry more weight in network trust signals.

Ban Categories

Categories are standardized across the network so ban data is comparable and filterable.

CategorySeverityDescription
grooming⚠️ CriticalSexual or manipulative grooming behavior
nsfw_minor⚠️ CriticalExplicit content involving minors
doxxing⚠️ CriticalSharing private personal information
predatory⚠️ CriticalPredatory behavior toward vulnerable members
threats⚠️ CriticalCredible threats of violence
harassmentHighTargeted harassment of members or staff
ban_evasionHighRejoining after being banned
scamHighFinancial scams, phishing, or fraud
raidHighOrganizing or participating in server raids
hate_speechHighSlurs, bigotry, or targeted hate
impersonationMediumImpersonating staff, users, or public figures
spamMediumSpamming, self-bots, or automated abuse
tos_violationMediumDiscord Terms of Service violation
community_harmMediumGeneral behavior harmful to the community
otherLowOther — see ban notes for context

Intel System

BlanketFort includes an AI-assisted risk scoring system that runs when users join federated servers.

  • Risk Score — 0–100% likelihood of being a risk based on behavioral signals
  • Risk Levels — LOW / MEDIUM / HIGH / CRITICAL
  • Alt Detection — automatic flagging of possible alt accounts based on username similarity, account age, and prior ban history

High-risk users trigger an alert in your staff channel on join. You can run a manual scan with /mod scan.

Staff can provide feedback on intel results (correct / false positive) from Dashboard → Intel. Feedback improves accuracy over time.

Ban Appeals

Users with active global bans can submit an appeal at /public/appeal. They need their Discord user ID and the ban ID (or it's looked up automatically).

Appeals appear in Dashboard → Appeals for the issuing server's staff to review. Staff can:

  • Approve & Unban — marks the ban inactive and automatically unbans the user in Discord
  • Deny — closes the appeal without unbanning
The public lookup page at /public/lookup/:userId shows a user's ban status and includes an appeal link.