Newsletters

Connect the business's email service

newsletters_connect_service · Changes data · Markdown

Connects the business's own email service (Brevo, Amazon SES, Mailgun or any SMTP server), which every newsletter email goes out through.

Free

This tool costs nothing to call.

An example

Our newsletter should go out through our Brevo account from news@halversoncycle.example. The SMTP key is in the Brevo settings.

Your agent callsnewsletters_connect_serviceFree

The example business is Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon. The reply is the one the tool really gives.

With these arguments
{
  "host": "smtp-relay.brevo.com",
  "port": 587,
  "username": "8a1b2c001@smtp-brevo.com",
  "password": "xsmtpsib-example-key",
  "from_email": "news@halversoncycle.example",
  "per_day": 300
}
What comes back
{
  "service": {
    "host": "smtp-relay.brevo.com",
    "port": 587,
    "security": "starttls",
    "username": "8a1b2c001@smtp-brevo.com",
    "from_email": "news@halversoncycle.example",
    "per_day": 300,
    "checked_at": "2026-10-14T08:00:00+00:00",
    "last_error": null,
    "last_error_at": null,
    "paused_until": null
  },
  "next": "Create a newsletter with newsletters_create, or write an issue for one with newsletters_write_issue."
}

Use it when

Before the first newsletter, or when the business moves to another email service or changes its password.

  • For a newsletter tool that keeps its own list, like Mailchimp or Kit, use connect_add.

What it does

Newsletters go out through the business's own email service, from an address on its own domain: any service that takes mail over SMTP, such as Brevo, Amazon SES, Mailgun, Postmark, SendGrid, Mailchimp Transactional or the web host. Give its SMTP server, login and the from address; Conecto logs in to check them and keeps the password encrypted, never shown again. Calling it again replaces them, and issues waiting for the service go out on the next round. With test_to, a short email also goes out, which shows the service takes mail from that address. Free.

What comes back

service: the server, port, security, login, from address and daily limit (never the password), and next: what to do now. Every reply also carries cost_usd and balance_usd.

Inputs

NameTypeWhat it is
hostRequiredstringThe SMTP server, e.g. smtp-relay.brevo.com or email-smtp.eu-west-1.amazonaws.com. 3 to 255 characters.
portinteger587 (STARTTLS) or 465 (SSL/TLS). Port 25 is blocked on Conecto's servers. 1 to 65,535. Default: 587.
securitystringstarttls or ssl. Left out: ssl on port 465, starttls otherwise. One of: starttls,ssl.
usernameRequiredstringThe SMTP login (for Brevo the SMTP login, for SendGrid "apikey"). 1 to 254 characters.
passwordRequiredstringThe SMTP password or key (for Brevo an SMTP key, not the account password). 1 to 1,000 characters.
from_emailRequiredstringThe address issues come from, on a domain the service lets the business send from, e.g. news@halversoncycle.com. Up to 254 characters.
per_dayintegerThe service's own daily limit, if it has one (Brevo's free plan: 300). Issues then go out over several days. 1 to 10,000,000.
test_tostringAlso send a short test email to this address. Up to 254 characters.

The call

Over MCP, call newsletters_connect_service on https://api.conecto.chat/mcp/newsletters. Over REST:

Terminal
curl -X POST https://api.conecto.chat/v1/tools/newsletters_connect_service \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"host":"smtp-relay.brevo.com","port":587,"username":"8a1b2c001@smtp-brevo.com","password":"xsmtpsib-example-key","from_email":"news@halversoncycle.example","per_day":300}'

When it refuses

A refused call costs nothing and says what to do next.

CodeWhenWhat to do
payment_required402The business has never topped up; newsletters need one real top-up.Top up once (POST /v1/topups), then try again.
sending_paused403The business's email is paused after bounces, complaints or emails refused as cold outreach.Tell the owner. Conecto reviews the pause before sending resumes.
invalid_input400Port 25, or an address that is not an email address.Use port 587 or 465, and fix the address the message names.
login_failed400The business's email service refused the login.Check the SMTP login and password (often an SMTP key, not the account password) and connect it again.
service_unreachable502The business's email service could not be reached.Check the SMTP server and port (587 or 465), then try again.
service_refused502The business's email service turned the email down, often a from address it does not allow.Allow the from address in the service, or connect it with one it allows.
service_busy503The business's email service asked to slow down.Try again in a few minutes.
refused422The business's email service will not take mail for an address.Use another address for that person.

Give this to your agent.

Set up Conecto from https://conecto.chat/SKILL.md