{
  "name": "io.github.postmark-mcp/postmark-mcp",
  "description": "The Postmark MCP connects an AI agent to a Postmark server token. Send transactional email, look up message status, search the message stream for bounces and complaints, and inspect server-level statistics. Postmark's strict transactional-only policy makes it a safer default than general SMTP relays for agent-driven send because the model cannot accidentally trigger marketing sends.",
  "status": "active",
  "version": "latest",
  "_meta": {
    "com.top-mcps/lastVerified": "2026-06-02",
    "com.top-mcps/score": {
      "value": 59,
      "rubricVersion": "2026-04",
      "lastComputed": "2026-06-02T13:16:41.660Z",
      "methodology": "https://top-mcps.com/about/methodology"
    },
    "com.top-mcps/stats": {
      "fetchedAt": "2026-06-02T13:16:41.462Z"
    }
  },
  "repository": {
    "url": "https://github.com/postmark-mcp/postmark-mcp",
    "source": "github"
  },
  "author": {
    "name": "Community"
  },
  "packages": [
    {
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "identifier": "run",
      "version": "latest",
      "transport": {
        "type": "stdio"
      },
      "runtimeArguments": [
        {
          "type": "positional",
          "value": "--rm"
        },
        {
          "type": "positional",
          "value": "-i"
        },
        {
          "type": "positional",
          "value": "-e"
        },
        {
          "type": "positional",
          "value": "POSTMARK_SERVER_TOKEN"
        },
        {
          "type": "positional",
          "value": "-e"
        },
        {
          "type": "positional",
          "value": "POSTMARK_FROM"
        },
        {
          "type": "positional",
          "value": "postmarkapp/mcp-server:latest"
        }
      ],
      "environmentVariables": [
        {
          "name": "POSTMARK_SERVER_TOKEN",
          "description": "POSTMARK_SERVER_TOKEN — required credential for Postmark.",
          "isRequired": true,
          "isSecret": true
        },
        {
          "name": "POSTMARK_FROM",
          "description": "POSTMARK_FROM — required credential for Postmark.",
          "isRequired": true,
          "isSecret": true
        }
      ]
    }
  ],
  "capabilities": {
    "tools": [
      {
        "name": "send_email",
        "description": "Send a transactional email.",
        "sideEffect": "write",
        "args": [
          {
            "name": "to",
            "type": "string",
            "required": true
          },
          {
            "name": "subject",
            "type": "string",
            "required": true
          },
          {
            "name": "body",
            "type": "string",
            "required": true
          }
        ]
      },
      {
        "name": "send_template",
        "description": "Send a templated transactional email.",
        "sideEffect": "write",
        "args": [
          {
            "name": "template_id",
            "type": "string",
            "required": true
          },
          {
            "name": "to",
            "type": "string",
            "required": true
          },
          {
            "name": "model",
            "type": "object",
            "required": true
          }
        ]
      },
      {
        "name": "get_message",
        "description": "Look up a sent message by ID.",
        "sideEffect": "read",
        "args": [
          {
            "name": "message_id",
            "type": "string",
            "required": true
          }
        ]
      },
      {
        "name": "search_messages",
        "description": "Search the message stream by recipient, status, or tag.",
        "sideEffect": "read",
        "args": [
          {
            "name": "query",
            "type": "object",
            "required": true
          }
        ]
      }
    ],
    "security": {
      "scope": "read-write",
      "sandbox": "Authenticates with a Postmark server token scoped to one logical send domain. The MCP exposes message-send and read-stream tools; rate-limited per token.",
      "gotchas": [
        "Server tokens can send email — treat them as production secrets and rotate on team changes.",
        "POSTMARK_FROM must match a verified sender signature in the Postmark account, or sends 422.",
        "Agent-drafted email can still hallucinate addresses — gate the send tool through a human approval step for high-blast-radius flows."
      ]
    }
  },
  "_links": {
    "html": "https://top-mcps.com/mcp/postmark",
    "markdown": "https://top-mcps.com/mcp/postmark.md",
    "methodology": "https://top-mcps.com/about/methodology"
  }
}
