Retainful MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.2.4Updated Nov 7, 2026

List contacts and lists; create contacts, add them to lists and record events in Retainful.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableCommunication & CollaborationBusiness & Commerce

Overview

AI-generated overview

Hosted Retainful MCP server that lets an assistant read contacts and lists, create contacts, add them to lists and record events.

What you can do
  • List and read contacts with consent status and source
  • List and read lists and segments with their ids
  • Create or update a contact by email or phone, with email consent
  • Add a contact to a list in one call, which can start an automation
  • Record an event on a contact's timeline
  • Check usage, request a feature, upgrade or cancel the subscription
When to use it
Useful when you work with Retainful marketing contacts and lists from an MCP client and want to look up opt-in status, add people to lists, or log events that drive email automations, without building your own API integration.
Requirements
Remote endpoint over streamable HTTP; no local install. Sign-in is via OAuth, and on first connect you supply a Retainful API key created in Retainful under Integrations. The key is stored per user by the server; no key or Authorization header goes in the client config. A paid plan is needed beyond the free monthly call allowance.
Before you install
Three tools write data: creating or updating contacts, adding contacts to lists, and tracking events. Adding to a list or tracking an event can trigger automations that email the contact, so confirm before running them. email_opt_in sets marketing consent and must reflect real consent; an existing contact can be set to SUBSCRIBED when it is omitted. Your Retainful API key is given to the third-party host. Paid plans involve payment links and charges, and cancelling gives no refund for the…

Installation

In SourceWeft

  1. Open Retainful MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Fretainful/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "retainful-by-usefulapi": {
      "type": "http",
      "url": "https://retainful.usefulapi.io/mcp"
    }
  }
}

README

Retainful MCP by usefulapi

Use your Retainful account from Claude, Cursor, or any MCP client. Read contacts and lists, add contacts to lists, and record events. Hosted, no local install: connect with your own credentials.

Live endpoint: https://retainful.usefulapi.io/mcp · Homepage: https://usefulapi.io

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://retainful.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http retainful https://retainful.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "retainful": {      "url": "https://retainful.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Retainful credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/retainful/

On first connect you provide your Retainful API key, created in Retainful under Integrations → your app → Create API key. The server validates it and stores it per user. No keys go in config files.

Tools

ToolTypeWhat it does
retainful_list_contactsreadList contacts
retainful_get_contactreadGet contact
retainful_list_listsreadList lists and segments
retainful_get_listreadGet list
retainful_upsert_contactwriteCreate or update contact
retainful_add_contact_to_listwriteAdd contact to list
retainful_track_eventwriteTrack event
retainful_usage_statusmetaUsage status (free-tier meter)
retainful_request_featuremetaRequest a missing feature
retainful_upgrademetaUpgrade to Pro or Pro+
retainful_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per user)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with retainful_upgrade (it returns a Stripe Checkout link). Cancel any time with retainful_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running retainful_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT — see LICENSE. Documentation only; the server is hosted.

Source: servers/retainful/README.md at commit 4046075

Tools

7

retainful_list_contacts

List contacts

List contacts (profiles) in the Retainful organization, one page at a time, with consent status and source. Retainful API: GET /customer.

Parameterspagelimit

retainful_get_contact

Get contact

Get one contact (profile) by its Retainful id (contactUUID), with its attributes. Retainful API: GET /customer/{id}.

Parameterscontact_idrequired

retainful_list_lists

List lists and segments

List the lists and segments in the organization with their ids. Use the id as list_id in retainful_add_contact_to_list. Retainful API: GET /contact-groups.

Parameterspagetypelimit

retainful_get_list

Get list

Get one list or segment by its id. Retainful API: GET /contact-groups/{id}.

Parameterslist_idrequired

retainful_upsert_contact

Create or update contact

WRITE: create a contact, or update it when the email or phone already exists. Does not add anyone to a list. email_opt_in is required: it sets marketing consent, so send SUBSCRIBED only with real consent. Needs email or phone. Retainful API: POST /customer/create.

Parametersemailphonesourcelast_namefirst_nameexternal_idemail_opt_inrequiredphone_opt_incustom_properties

retainful_add_contact_to_list

Add contact to list

WRITE: create or update a contact by email and add them to a list in one call. A list can start an automation. email_opt_in is required: an existing contact is set to SUBSCRIBED when it is omitted here. Retainful API: POST /contact-groups/{listId}/contacts.

Parametersemailrequiredphonesourcelist_idrequiredlast_namefirst_nameemail_opt_inrequired

retainful_track_event

Track event

WRITE: record one event on a contact's timeline. Automations triggered by the event can email the contact. Reuse the same unique_identifier only for a retry of the same real occurrence (a repeat does not trigger automations again); use a new one for each new occurrence. Event data must be flat: strings, numbers, or booleans. Retainful API: POST /events.

Parametersemailphoneevent_datarequiredevent_namerequiredcontact_uuidunique_identifierrequired

Version history

6
  1. v1.2.4LatestNov 7, 2026
  2. v1.1.3Nov 5, 2026
  3. v1.1.2Nov 5, 2026
  4. v1.1.1Nov 4, 2026
  5. v1.1.0Nov 3, 2026
  6. v1.0.1Nov 3, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations