Read your own DMARC aggregate and forensic reports: sources, alignment, alerts, CSV export.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Inspect the public DMARC record at _dmarc.<domain>. The domain does not need to belong to your organization. Returns parsed policy and rua/ruf addresses.
Domain to inspect — does not need to belong to your organization.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Inspect the public DMARC record at _dmarc.<domain>. The domain does not need to belong to your organization. Returns parsed policy and rua/ruf addresses.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain to inspect — does not need to belong to your organization. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain to inspect — does not need to belong to your organization."
}
},
"additionalProperties": false
}Add a new domain to the organization. Response includes the reporting_email and dmarc_record values to publish in DNS. May return 402 if the plan domain limit has been reached.
| Argument | Type | Description |
|---|---|---|
| name* | string | Domain name to monitor (e.g. "example.com"). Stored lowercased. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Domain name to monitor (e.g. \"example.com\"). Stored lowercased."
}
},
"additionalProperties": false
}Create a new webhook endpoint. URL must start with https://. Returns 422 if the organization has reached its webhook limit.
| Argument | Type | Description |
|---|---|---|
| url* | string | HTTPS URL events will be POSTed to |
| name* | string | Human-readable label |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url",
"name"
],
"properties": {
"url": {
"type": "string",
"description": "HTTPS URL events will be POSTed to"
},
"name": {
"type": "string",
"description": "Human-readable label"
}
},
"additionalProperties": false
}Remove a domain from monitoring. Soft-deletes; historical reports remain accessible.
| Argument | Type | Description |
|---|---|---|
| domain_id* | string | Domain UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain_id"
],
"properties": {
"domain_id": {
"type": "string",
"description": "Domain UUID"
}
},
"additionalProperties": false
}Delete a webhook endpoint permanently.
| Argument | Type | Description |
|---|---|---|
| webhook_id* | string | Webhook UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"webhook_id"
],
"properties": {
"webhook_id": {
"type": "string",
"description": "Webhook UUID"
}
},
"additionalProperties": false
}Dismiss a specific alert
| Argument | Type | Description |
|---|---|---|
| alert_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"alert_id"
],
"properties": {
"alert_id": {
"type": "string"
}
},
"additionalProperties": false
}Export a DMARC report as CSV
| Argument | Type | Description |
|---|---|---|
| report_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"report_id"
],
"properties": {
"report_id": {
"type": "string"
}
},
"additionalProperties": false
}Get details of a specific domain
| Argument | Type | Description |
|---|---|---|
| domain_id* | string | Domain UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain_id"
],
"properties": {
"domain_id": {
"type": "string",
"description": "Domain UUID"
}
},
"additionalProperties": false
}Get the full detail of a forensic (RUF) report by UUID, including the raw failed message envelope.
| Argument | Type | Description |
|---|---|---|
| report_id* | string | Forensic report UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"report_id"
],
"properties": {
"report_id": {
"type": "string",
"description": "Forensic report UUID"
}
},
"additionalProperties": false
}Aggregated forensic-report counters grouped by auth failure type, delivery result, source IP (with geolocation) and reported domain.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Summary of forensic activity in the last 7 days — useful for daily digest views.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Get details of a specific DMARC report
| Argument | Type | Description |
|---|---|---|
| report_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"report_id"
],
"properties": {
"report_id": {
"type": "string"
}
},
"additionalProperties": false
}Get statistics for a specific DMARC report
| Argument | Type | Description |
|---|---|---|
| report_id* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"report_id"
],
"properties": {
"report_id": {
"type": "string"
}
},
"additionalProperties": false
}List alerts for your organization
| Argument | Type | Description |
|---|---|---|
| page | number | |
| status | string | |
| per_page | number |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "number"
},
"status": {
"type": "string"
},
"per_page": {
"type": "number"
}
},
"additionalProperties": false
}List all monitored domains in your organization
| Argument | Type | Description |
|---|---|---|
| page | number | |
| per_page | number |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "number"
},
"per_page": {
"type": "number"
}
},
"additionalProperties": false
}List DMARC RUF (forensic) reports with optional filtering and pagination. Returns 403 if the plan does not include forensic reports (Pro plan and above).
| Argument | Type | Description |
|---|---|---|
| page | number | |
| date_to | string | Inclusive upper bound on arrival_date |
| per_page | number | |
| date_from | string | Inclusive lower bound on arrival_date (ISO 8601 / "YYYY-MM-DD HH:MM:SS") |
| domain_id | string | Filter by domain UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "number"
},
"date_to": {
"type": "string",
"description": "Inclusive upper bound on arrival_date"
},
"per_page": {
"type": "number"
},
"date_from": {
"type": "string",
"description": "Inclusive lower bound on arrival_date (ISO 8601 / \"YYYY-MM-DD HH:MM:SS\")"
},
"domain_id": {
"type": "string",
"description": "Filter by domain UUID"
}
},
"additionalProperties": false
}List DMARC reports for your organization
| Argument | Type | Description |
|---|---|---|
| page | number | |
| domain | string | |
| date_to | string | |
| per_page | number | |
| date_from | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "number"
},
"domain": {
"type": "string"
},
"date_to": {
"type": "string"
},
"per_page": {
"type": "number"
},
"date_from": {
"type": "string"
}
},
"additionalProperties": false
}List webhook endpoints configured for the organization. Returns 403 if the plan does not include advanced alerting (Pro and above).
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Send a synchronous webhook.test event to verify connectivity. Returns the delivery status. Test events do NOT update last_triggered_at, last_status or failure_count.
| Argument | Type | Description |
|---|---|---|
| webhook_id* | string | Webhook UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"webhook_id"
],
"properties": {
"webhook_id": {
"type": "string",
"description": "Webhook UUID"
}
},
"additionalProperties": false
}Update a webhook. Any combination of url, name and is_active may be provided; URL must remain HTTPS.
| Argument | Type | Description |
|---|---|---|
| url | string | New HTTPS URL |
| name | string | New label |
| is_active | boolean | Enable/disable delivery without losing config |
| webhook_id* | string | Webhook UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"webhook_id"
],
"properties": {
"url": {
"type": "string",
"description": "New HTTPS URL"
},
"name": {
"type": "string",
"description": "New label"
},
"is_active": {
"type": "boolean",
"description": "Enable/disable delivery without losing config"
},
"webhook_id": {
"type": "string",
"description": "Webhook UUID"
}
},
"additionalProperties": false
}Re-check a domain's DNS to confirm the DMARC record contains the organization's reporting email. Updates status to verified on success.
| Argument | Type | Description |
|---|---|---|
| domain_id* | string | Domain UUID |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain_id"
],
"properties": {
"domain_id": {
"type": "string",
"description": "Domain UUID"
}
},
"additionalProperties": false
}