SendGuard

Check an email before your AI agent sends it: allow, review or block with reasons.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
100%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~618Tokens (tool definitions)
~7.5 KBTypical response size
Minimal attention impact (0.48% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "preflight": {
      "url": "https://api.sendguard.ai/mcp"
    }
  }
}

Remote endpoints

https://api.sendguard.ai/mcpstreamable-http

What it can do

Tool inventory

Tools (1)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡preflight_email(from_email, to_email, subject, body, recipient_company, ...)

Check an AI-written email before sending. Returns allow, delay, requires_approval or block with reason codes (recipient validity, sender authentication, content risk, sensitive industries, volume limits) and recommendations. Does not send email. Without an API key: 3 free checks per day per IP.

Input Schema

{
  "type": "object",
  "properties": {
    "from_email": {
      "type": "string",
      "description": "Sender address the agent will send from"
    },
    "to_email": {
      "type": "string",
      "description": "Recipient address"
    },
    "subject": {
      "type": "string",
      "description": "Email subject"
    },
    "body": {
      "type": "string",
      "description": "Email body as plain text"
    },
    "recipient_company": {
      "type": "string",
      "description": "Recipient company name"
    },
    "recipient_industry": {
      "type": "string",
      "description": "Recipient industry, for example healthcare"
    },
    "recipient_country": {
      "type": "string",
      "description": "Recipient country as ISO 3166-1 alpha-2, for example DE"
    },
    "recipient_source": {
      "type": "string",
      "description": "Where the address came from, for example apollo, website, referral"
    },
    "intent": {
      "type": "string",
      "description": "Purpose, for example cold_outbound or follow_up"
    },
    "relationship": {
      "type": "string",
      "description": "Relationship, for example new_prospect or existing_customer"
    },
    "policy": {
      "type": "string",
      "description": "Policy: default, balanced, strict, growth, enterprise, healthcare or recruiting"
    },
    "agent_id": {
      "type": "string",
      "description": "Your agent identifier (API key callers); used for per-agent limits"
    },
    "workspace_id": {
      "type": "string",
      "description": "Your workspace identifier (API key callers)"
    },
    "campaign_id": {
      "type": "string",
      "description": "Campaign identifier (optional)"
    }
  },
  "required": [
    "from_email",
    "to_email"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "decision": {
      "type": "string",
      "description": "allow, delay, requires_approval or block"
    },
    "risk_score": {
      "type": "integer"
    },
    "confidence": {
      "type": "number"
    },
    "delay_seconds": {
      "type": "integer"
    },
    "reasons": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "severity": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "code",
          "severity",
          "message"
        ],
        "additionalProperties": false
      }
    },
    "recommendations": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      }
    },
    "approval": {
      "type": [
        "null",
        "object"
      ],
      "properties": {
        "queue": {
          "type": "string"
        },
        "reason": {
          "type": "string"
        }
      },
      "required": [
        "queue",
        "reason"
      ],
      "additionalProperties": false
    },
    "recipient_status": {
      "type": "string"
    },
    "suggested_email": {
      "type": "string"
    },
    "billing": {
      "type": "object",
      "properties": {
        "mode": {
          "type": "string",
          "description": "api_key or anonymous_trial"
        },
        "charged": {
          "type": "boolean"
        },
        "balance_remaining": {
          "type": [
            "null",
            "integer"
          ]
        },
        "trial_remaining_today": {
          "type": [
            "null",
            "integer"
          ]
        }
      },
      "required": [
        "mode",
        "charged"
      ],
      "additionalProperties": false
    },
    "next_step": {
      "type": "string"
    }
  },
  "required": [
    "decision",
    "risk_score",
    "confidence",
    "billing",
    "next_step"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded1 tools