Maileroo · Capability

Maileroo Email API

The Maileroo REST API allows sending transactional and marketing emails via JSON requests with high deliverability. Supports HTML and plain text emails, attachments, tracking, templates, scheduled delivery, and bulk sending. All requests are authenticated via an API sending key passed in the X-Api-Key header or as a Bearer token in the Authorization header.

Run with Naftiko MailerooAPI

What You Can Do

POST
Sendbasicemail — Send a basic email
/emails
POST
Sendtemplatedemail — Send a templated email
/emails/template
POST
Sendbulkemails — Send bulk emails
/emails/bulk
GET
Listscheduledemails — List scheduled emails
/emails/scheduled
DELETE
Deletescheduledemail — Delete a scheduled email
/emails/scheduled/{reference_id}

MCP Tools

sendbasicemail

Send a basic email

sendtemplatedemail

Send a templated email

sendbulkemails

Send bulk emails

listscheduledemails

List scheduled emails

read-only idempotent
deletescheduledemail

Delete a scheduled email

idempotent

Capability Spec

maileroo-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Maileroo Email API
  description: The Maileroo REST API allows sending transactional and marketing emails via JSON requests with high deliverability.
    Supports HTML and plain text emails, attachments, tracking, templates, scheduled delivery, and bulk sending. All requests
    are authenticated via an API sending key passed in the X-Api-Key header or as a Bearer token in the Authorization header.
  tags:
  - Maileroo
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: maileroo
    baseUri: https://smtp.maileroo.com/api/v2
    description: Maileroo Email API HTTP API.
    authentication:
      type: apikey
      in: header
      name: X-Api-Key
      value: '{{MAILEROO_TOKEN}}'
    resources:
    - name: emails
      path: /emails
      operations:
      - name: sendbasicemail
        method: POST
        description: Send a basic email
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: emails-template
      path: /emails/template
      operations:
      - name: sendtemplatedemail
        method: POST
        description: Send a templated email
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: emails-bulk
      path: /emails/bulk
      operations:
      - name: sendbulkemails
        method: POST
        description: Send bulk emails
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: emails-scheduled
      path: /emails/scheduled
      operations:
      - name: listscheduledemails
        method: GET
        description: List scheduled emails
        inputParameters:
        - name: domain
          in: query
          type: string
          description: Sender domain (required for app-scoped API keys)
        - name: page
          in: query
          type: integer
        - name: per_page
          in: query
          type: integer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: emails-scheduled-reference-id
      path: /emails/scheduled/{reference_id}
      operations:
      - name: deletescheduledemail
        method: DELETE
        description: Delete a scheduled email
        inputParameters:
        - name: reference_id
          in: path
          type: string
          required: true
          description: The 24-character hex reference ID of the scheduled email
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: maileroo-rest
    description: REST adapter for Maileroo Email API.
    resources:
    - path: /emails
      name: sendbasicemail
      operations:
      - method: POST
        name: sendbasicemail
        description: Send a basic email
        call: maileroo.sendbasicemail
        outputParameters:
        - type: object
          mapping: $.
    - path: /emails/template
      name: sendtemplatedemail
      operations:
      - method: POST
        name: sendtemplatedemail
        description: Send a templated email
        call: maileroo.sendtemplatedemail
        outputParameters:
        - type: object
          mapping: $.
    - path: /emails/bulk
      name: sendbulkemails
      operations:
      - method: POST
        name: sendbulkemails
        description: Send bulk emails
        call: maileroo.sendbulkemails
        outputParameters:
        - type: object
          mapping: $.
    - path: /emails/scheduled
      name: listscheduledemails
      operations:
      - method: GET
        name: listscheduledemails
        description: List scheduled emails
        call: maileroo.listscheduledemails
        outputParameters:
        - type: object
          mapping: $.
    - path: /emails/scheduled/{reference_id}
      name: deletescheduledemail
      operations:
      - method: DELETE
        name: deletescheduledemail
        description: Delete a scheduled email
        call: maileroo.deletescheduledemail
        with:
          reference_id: rest.reference_id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: maileroo-mcp
    transport: http
    description: MCP adapter for Maileroo Email API for AI agent use.
    tools:
    - name: sendbasicemail
      description: Send a basic email
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: maileroo.sendbasicemail
      outputParameters:
      - type: object
        mapping: $.
    - name: sendtemplatedemail
      description: Send a templated email
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: maileroo.sendtemplatedemail
      outputParameters:
      - type: object
        mapping: $.
    - name: sendbulkemails
      description: Send bulk emails
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: maileroo.sendbulkemails
      outputParameters:
      - type: object
        mapping: $.
    - name: listscheduledemails
      description: List scheduled emails
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: maileroo.listscheduledemails
      with:
        domain: tools.domain
        page: tools.page
        per_page: tools.per_page
      inputParameters:
      - name: domain
        type: string
        description: Sender domain (required for app-scoped API keys)
      - name: page
        type: integer
        description: page
      - name: per_page
        type: integer
        description: per_page
      outputParameters:
      - type: object
        mapping: $.
    - name: deletescheduledemail
      description: Delete a scheduled email
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: maileroo.deletescheduledemail
      with:
        reference_id: tools.reference_id
      inputParameters:
      - name: reference_id
        type: string
        description: The 24-character hex reference ID of the scheduled email
        required: true
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    MAILEROO_TOKEN: MAILEROO_TOKEN