AI & MCP
Connect an AI agent (MCP)
Sendcore exposes a Model Context Protocol server, so any MCP-compatible assistant (Claude, ChatGPT, Cursor and others) can read your reports, draft campaigns, forms and automations, and manage contacts in plain language. One setup works with every client. Prefer zero setup? The same capabilities are already in the dashboard's AI chat.
On this page5 sections
Server URL#
https://www.sendcore.me/api/mcpRecommended: connect with sign-in (OAuth)#
The simplest path: no API key to manage. In a client with a connector UI (like Claude):
- Open Settings → Connectors → Add custom connector and paste the server URL above. Leave Client ID / Secret empty.
- You'll be sent to Sendcore's authorization page. Sign in and choose the permissions (Full access or Read-only).
- Done: the assistant is connected. Manage or revoke it anytime from your settings.
For clients configured with a JSON file, the OAuth flow is triggered by the URL alone:
{
"mcpServers": {
"sendcore": {
"url": "https://www.sendcore.me/api/mcp"
}
}
}Alternative: connect with an API key#
For clients or scripts without an OAuth flow, authenticate with an API key sent as a Bearer token. Create one under Settings → API keys. A read-scoped key exposes only the read tools below.
{
"mcpServers": {
"sendcore": {
"url": "https://www.sendcore.me/api/mcp",
"headers": {
"Authorization": "Bearer sc_live_xxxxxxxxxxxxxxxx"
}
}
}
}Safety model#
- Drafts only. Agents create drafts (campaigns, forms, automations) and send only TEST emails to explicit addresses. Real sends to your audience, form publishing and automation activation stay human decisions, in the dashboard.
- Per-connection permissions. A read-only connection sees only the Read tools; write operations require full access.
- Preview with `plan`. Every write tool that changes something accepts
plan: true: it returns exactly what would happen (changes, preview, reversibility) without writing anything. Repeating the same call withoutplanexecutes it. - Full audit trail. Every agent write operation (preview or execution, success or failure) is recorded: who, what, when, from which surface, and how it went.
- Destructive operations.
delete_campaignanddelete_automationdelete data, anddisable_automationstops a live workflow: in the in-app chat they require an explicit user confirmation before running. The two workflow tools ask what happens to the contacts inside, just like the dashboard does.generate_campaign_emaildeletes nothing but replaces a campaign's content, including edits made by hand in the editor. On a campaign that already has content, preview withplanfirst.
Tool reference#
Read tools are available on every connection. Write tools require a full-access connection and never send to your audience. The Plan column marks tools that support a no-execution preview.
| Tool | Access | Plan | Description |
|---|---|---|---|
get_account_overview | Read | – | Store name/website, sending domain and verification, sender identity, and email usage for the current period. |
list_campaigns | Read | – | List email campaigns with status and performance (sent, opens, clicks, rates, revenue and the number of orders it came from). |
get_campaign_report | Read | – | Full report for one campaign: settings plus performance metrics. |
analyze_campaign | Read | – | One campaign's metrics side-by-side with the account averages, plus concrete findings (subject length, missing preheader, above/below-average rates). |
get_audience_stats | Read | – | List health: total contacts, subscribed vs unsubscribed, new in last 30 days, suppressed. |
search_contacts | Read | – | Search contacts by free text, tag or consent state (up to 50 matches). Requires the audience-export permission in the in-app Copilot. |
list_segments | Read | – | List audience segments (manual, filter-based, or Shopify-imported) with their rules, in words and as stored, and how many members each has, or whether they are still being calculated. |
get_segment_filter_options | Read | – | The vocabulary for building a filter segment on this account: rule types and their values, plus your custom property keys, tags and sent campaigns, and whether a store is connected. |
list_automations | Read | – | List every automation workflow with status, trigger type and its performance (sent, opens, clicks, orders, revenue) for a period, all time by default. |
list_forms | Read | – | List signup forms (popup, flyout, embedded) with views and submissions. |
get_brand_kit | Read | – | Brand kit: store info, brand context, fonts, colors, logo and links. Grounds on-brand copy. |
search_knowledge | Read | – | Search the official Sendcore documentation and get back matching sections with a link to cite. |
create_campaign_draft | Write | ✓ | Create a new DRAFT campaign (name, optional subject/preheader/language). Never sends. |
generate_campaign_email | Write | ✓ | Generate a draft campaign's content with Sendcore AI using the account's brand kit. Replaces the campaign's current content, editor edits included: preview with plan first. |
generate_subject_lines | Write | – | Generate alternative subject lines (with matching preheaders) from a brief. Nothing is saved. |
send_campaign_test_email | Write | ✓ | Send a TEST version to up to 5 explicit addresses (excluded from reports). Not the audience. |
delete_campaignconfirm | Write | ✓ | Permanently delete a campaign by id. A campaign that is currently sending can't be deleted. |
create_contact | Write | ✓ | Add a subscribed contact (deduped by email). An existing contact is never re-subscribed. |
add_contact_tag | Write | ✓ | Add a tag to one or more existing contacts by email. |
create_segment | Write | ✓ | Create a manual segment from a list of contact emails (max 1000). |
create_filter_segment | Write | ✓ | Create a filter segment from rules (subscription, tags, signup form, orders, engagement, dates, birthday, spend, lifecycle stage, source, deliverability, and a final 'keep only the first N' row). Membership is computed and kept refreshed. With plan, shows the rules in words and how many contacts match. |
create_form_draft | Write | ✓ | Create a DRAFT signup form (popup, flyout or embedded). Never published on its own. |
create_automation_draft | Write | ✓ | Create a DRAFT automation from a preset (welcome, abandoned cart/checkout, birthday), or an empty one from scratch on the trigger you pass (trigger_type), to build in the editor. Never activates on its own. |
disable_automationconfirm | Write | ✓ | Turn a live automation off. The contacts currently inside either finish it or exit it now (contacts_in_workflow). Turning one on stays a dashboard decision. |
delete_automationconfirm | Write | ✓ | Permanently delete an automation with its emails and report. The contacts inside finish it first or exit it now. Cannot be undone. |
get_loyalty_program | Read | – | The loyalty programme: on/off, earning rate, rounding, rewards and the headline figures. Requires the Pro or Enterprise plan. |
get_loyalty_balance | Read | – | One contact's points: balance, the rewards they can afford, their last movements. |
configure_loyalty_program | Write | ✓ | Switch the programme on or off, set the earning rate and rounding, replace the rewards catalogue. Points start from switching on. |
adjust_loyalty_points | Write | ✓ | Credit or debit points to a contact by hand, with a note. Never below zero. |
import_loyalty_balances | Write | ✓ | Import balances from another programme (CSV with email and points): one credit per contact, idempotent per import id. |
redeem_loyalty_reward | Write | ✓ | Redeem a reward for a contact: debits the points and mints a single-use code on the connected store (Shopify discount or WooCommerce coupon), returned to hand over. An account with both stores mints on Shopify. |
list_crm_pipelines | Read | – | List CRM pipelines with their stages (open/won/lost). Card operations start here. Requires a plan with CRM access. |
list_crm_cards | Read | – | List CRM cards for a pipeline or for a contact (by email), with stage, amount, priority and follow-up. |
get_crm_card | Read | – | One CRM card in full, including custom fields. |
create_crm_card | Write | – | Create a card in a pipeline for a contact by email (contact created if missing, never subscribed as a side effect). |
move_crm_card | Write | – | Move a card to another stage of its pipeline (e.g. advance a deal to Won). |
add_crm_note | Write | – | Add a note to a contact's CRM timeline, visible on the contact page and board panel. |
update_crm_card | Write | ✓ | Update a card's title, amount, priority, follow-up, archive flag or custom fields. |
remove_contact_tag | Write | ✓ | Remove one tag from emails, a segment, or the whole audience. Does not create contacts and does not change consent. |
delete_audience_tagsconfirm | Write | ✓ | Delete tags from the account: the label comes off every contact that carries it. Contacts stay. |
set_contact_consentconfirm | Write | ✓ | Subscribe or unsubscribe contacts (emails, a segment, or everyone). Subscribe is an explicit consent change and clears suppression. |
delete_contactsconfirm | Write | ✓ | Permanently delete contacts from the Sendcore audience. Store customers can come back on the next sync. |
import_contacts | Write | ✓ | Import up to 1000 contacts (rows or CSV) with the same rules as Audience → Imports. A file does not re-subscribe anyone. |
rename_segment | Write | ✓ | Rename a segment. Members, rules and the id stay, so campaigns keep targeting it. |
update_filter_segment | Write | ✓ | Replace the rules of an existing filter segment without changing its id. |
delete_segmentconfirm | Write | ✓ | Permanently delete a segment. Contacts are not deleted. |
copy_campaign | Write | ✓ | Duplicate a campaign as a new draft. Nothing is sent. |
set_loyalty_multiplier | Write | ✓ | Set or clear one contact's points multiplier (0 to 10, or empty to use the tier). Requires Pro or Enterprise. |
An end-to-end example, from your assistant: "Create a campaign for the restock, write the content on my brand kit, propose 5 subject lines and send me a test": four tools chained, without opening the editor. The same capabilities, plus per-role team permissions, live in the dashboard's AI chat.