Gmail only. Fastmail and Proton Mail refuse these verbs. Gmail filters run on Google’s servers. They sort future mail the same way in every client. They do not rewrite mail already in the inbox. Use organize verbs or reconcile for the backlog.

List / create / delete

mailkit filter list --json
mailkit filter create --from newsletters.example.com --label News --skip-inbox --create-label
mailkit filter delete FILTER_ID
filter create options:
FlagMeaning
--fromSender address or domain
--toRecipient
--subjectSubject match
-qExtra Gmail query
--labelLabel to apply (repeatable)
--skip-inboxArchive (skip inbox)
--mark-readMark read
--create-labelCreate a missing --label
Creating a filter needs the gmail.settings.basic scope. If an older authorization lacks it, run mailkit auth add you@gmail.com again.

Backlog

mailkit reconcile --json
Applies existing filters to mail already in the inbox.
mailkit file-inbox --older-than 1 --json
Archives inbox mail that already has a folder label and is older than N days (default 1). Keeps the label. Gives labeled mail a short inbox window. Pair with label-only filters (no --skip-inbox) if you want that grace period.