Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
Parse Dmarc
DMARC aggregate report parser with a built-in dashboard. One Go binary, IMAP in, SQLite, Prometheus metrics, MCP server. Apache-2.0.
Install
brew install dmarcguardhq/tap/parse-dmarcInstall command taken from the project's README or registry entry. Always review code before running it.
README excerpt
Read full README on GitHub →Parse DMARC
- What it does
- Run it
- Get reports flowing
- Deploy anywhere
- Configuration
- Metrics, Grafana and MCP
- Parse DMARC or DMARCguard?
- Roadmap and contributing
- License
Read your DMARC aggregate reports in one dashboard. One Go binary, SQLite, no Elasticsearch.
Parse DMARC is built and maintained by the team behind DMARCguard, a hosted DMARC monitoring service. The two do not share code, and this repository stays Apache-2.0 in full.
What it does
When your DMARC record carries a rua= address, mail receivers such as Google, Microsoft and Yahoo send you aggregate reports: gzip or zip XML attachments, at the interval your record asks for and daily by default, listing every IP that sent mail as your domain and whether SPF and DKIM passed (RFC 7489 section 7.2, carried forward by RFC 9990). Nobody reads those by hand. Parse DMARC does:
- Fetches reports over IMAP from any mailbox, or from a local Maildir when the mail server is on the same host (
MAILDIR_PATH, see Configuration). Reports that Exchange or Outlook forward asmessage/rfc822attachments are unwrapped too. - Parses gzip, zip and raw XML, with a 16 MB decompression cap per report.
- Stores everything in one SQLite file. No database server, no JVM.
- Shows pass rate, message volume and top sending sources, and opens any report down to its raw records.
- Generates your
_dmarcTXT record from a form. - Exposes 28 Prometheus metrics and ships a Grafana dashboard.
- Serves an MCP server, so an AI assistant can query your reports.
- Dark mode. One static binary. The Docker image is built
FROM scratch.
It reads aggregate (RUA) reports only. Failure reports (RUF), TLS-RPT, alerting, login and multi-mailbox intake are not built; see Roadmap and contributing.
Run it
Docker, with a named volume for the database:
docker run -d --name parse-dmarc -p 8080:8080 \
-e IMAP_HOST=imap.gmail.com \
-e IMAP_PORT=993 \
-e IMAP_USERNAME=dmarc@example.com \
-e IMAP_PASSWORD='your-app-password' \
-v parse-dmarc:/data \
dmarcguard/parse-dmarc
Homebrew on macOS or Linux:
brew install dmarcguardhq/tap/parse-dmarc
parse-dmarc --gen-config # writes a config.json template
parse-dmarc --config config.json
Nix, from our NUR-style repo:
nix profile install github:dmarcguardhq/nur#parse-dmarc # or: nix run github:dmarcguardhq/nur#parse-dmarc
Or download a release archive, parse-dmarc_<os>_.tar.gz, from the releases page.
Open http://localhost:8080. Gmail needs an App Password, not the account password. The same image is on Docker Hub as meysam81/parse-dmarc; both names track the same builds, and tags such as v1 or v1.6.0 pin a release.
Get reports flowing
Similar plugs
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here…
Open-source web crawler and scraper for LLMs and AI agents: any website into clean, LLM-ready Markdown. Run it yourself, or use Crawl4AI Cloud with one key.