Vision6 MCP by usefulapi

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

Read Vision6 lists, contacts, messages and reports; update contacts; send transactional email/SMS.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableCommunication & CollaborationBusiness & Commerce

Overview

AI-generated overview

Connects an assistant to a Vision6 account to read lists, contacts, messages and campaign reports, and to create or update contacts and send email/SMS.

What you can do
  • Inspect the account: API key scopes, folders, contact lists and their fields
  • Search and read contacts, including filtering by email, mobile, status or custom fields
  • Browse saved email and SMS messages, sender defaults and message bodies
  • Review send reports, per-link clicks, recipient domains and who opened a campaign
  • Create, update or delete contacts and lists; create or update draft messages
  • Send transactional email or SMS to up to 100 recipients per call
When to use it
Useful when you work in Vision6 and want an assistant to answer questions about lists, contacts and campaign performance, or to add and update contacts and fire off transactional messages without switching to the app.
Requirements
Remote MCP endpoint reached over HTTP; no local package. Sign-in is via OAuth, and the login page asks for the Vision6 REST API endpoint and a REST-compatible API key from Vision6 under Integrations → API Keys. No API key or Authorization header goes in the client config. A free plan allows 50 tool calls per month; paid plans are available.
Before you install
Write tools change real data: contacts can be created, updated or deleted, and deletion is irreversible. Sending transactional email or SMS goes out immediately, cannot be recalled and consumes account sending credits. Creating or updating contacts may trigger Vision6 automations and notification emails. The server also offers paid subscription tools that return payment links, and it handles your Vision6 API key.

Installation

In SourceWeft

  1. Open Vision6 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%2Fvision6/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": {
    "vision6-by-usefulapi": {
      "type": "http",
      "url": "https://vision6.usefulapi.io/mcp"
    }
  }
}

README

Vision6 MCP by usefulapi

Read Vision6 lists, contacts, messages and reports; update contacts; send transactional email/SMS.

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

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://vision6.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http vision6 https://vision6.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": {    "vision6": {      "url": "https://vision6.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 Vision6 credentials.

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

On first connect you'll enter your Vision6 REST API endpoint and a REST-compatible API key (both shown in Vision6 under Integrations → API Keys).

Tools

ToolTypeWhat it does
vision6_get_accountreadGet API key details
vision6_list_listsreadList contact lists
vision6_get_listreadGet a contact list
vision6_list_list_fieldsreadList a list's fields
vision6_list_foldersreadList folders
vision6_list_contactsreadList contacts
vision6_get_contactreadGet a contact
vision6_list_messagesreadList messages
vision6_get_messagereadGet a message
vision6_get_message_sender_defaultsreadGet default sender details
vision6_list_reportsreadList send reports
vision6_get_reportreadGet a send report
vision6_list_sent_contactsreadList contacts a message was sent to
vision6_list_transactional_groupsreadList transactional groups
vision6_get_transactional_groupreadGet a transactional group
vision6_create_contactwriteCreate a contact
vision6_add_contactswriteAdd several contacts
vision6_update_contactwriteUpdate a contact
vision6_delete_contactwriteDelete a contact
vision6_create_listwriteCreate a contact list
vision6_create_messagewriteCreate a message (draft)
vision6_update_messagewriteUpdate a message
vision6_send_transactionalwriteSend a transactional email or SMS
vision6_usage_statusmetaUsage status (free-tier meter)
vision6_request_featuremetaRequest a missing feature
vision6_upgrademetaUpgrade to Pro or Pro+
vision6_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 vision6_upgrade (it returns a Stripe Checkout link). Cancel any time with vision6_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running vision6_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT © usefulapi. Not affiliated with or endorsed by Vision6.

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

Tools

23

vision6_get_account

Get API key details

Details of the API key this server uses: the scopes it grants (e.g. list.view, contact.create, message.edit, report.view) and its creation/expiry time. Use it to see why a request is refused. GET /v1/.

Takes no parameters.

vision6_list_lists

List contact lists

List the account's contact lists with id, name, creation/modification time and notification settings. Filter by exact name. GET /lists.

Parametersnamelimitoffset

vision6_get_list

Get a contact list

One contact list by id. GET /lists/{list_id}.

Parameterslist_idrequired

vision6_list_list_fields

List a list's fields

The fields (columns) of a contact list: label, type (email, mobile, text, dropdown, date ...), allowed values and whether they are mandatory. The lowercase underscore form of a label is the key used for contact values and filters. GET /lists/{list_id}/fields.

Parameterslimitoffsetlist_idrequired

vision6_list_folders

List folders

List the account's folders (list folders and message folders) with id, name, type and size. Needed for the folder id when creating a list or message. GET /folders.

Parametersnametypelimitoffset

vision6_list_contacts

List contacts

List the contacts of one list: email, mobile, subscribed/blocked status, active flag, double opt-in and the list's custom fields. Filter by email, mobile, active flag, creation/modification time or any custom field (`filters`, e.g. {"city":"Brisbane"} or {"source:ne":"promo"}). GET /lists/{list_id}/contacts.

Parametersemaillimitfieldsmobileoffsetfilterslist_idrequiredis_activecreated_sincemodified_since

vision6_get_contact

Get a contact

One contact by id within a list, with all fields. GET /lists/{list_id}/contacts/{contact_id}.

Parametersfieldslist_idrequiredcontact_idrequired

vision6_list_messages

List messages

List saved email and SMS messages (templates and campaigns) with id, type, name, subject and sender. Filter by type or exact name/subject. GET /messages.

Parametersnametypelimitoffsetsubject

vision6_get_message

Get a message

One message by id. With include_content=true the HTML and plain-text body is included. GET /messages/{message_id}.

Parametersmessage_idrequiredinclude_content

vision6_get_message_sender_defaults

Get default sender details

The account's default from name, from address and reply-to, applied to new email messages when you omit them. GET /message-sender-defaults.

Takes no parameters.

vision6_list_reports

List send reports

Send reports for campaigns, newest first: message name, type, sent, bounced, opened, unique clicks, unsubscribes, complaints, total recipients and last sent time. Filter by message, type, test sends or creation time. Click and domain breakdowns are only returned when requested via `fields`. GET /reports.

Parameterslimitfieldsoffsetis_testmessage_idmessage_typecreated_since

vision6_get_report

Get a send report

One send report by id with all delivery and engagement counts, per-link click counts and recipient domain distribution. Optionally includes A/B test results and social click/share statistics. GET /reports/{report_id}.

Parametersfieldsreport_idrequiredinclude_socialinclude_ab_test

vision6_list_sent_contacts

List contacts a message was sent to

The contacts one message was sent to, with send time, first/last open time and open type (html, text, sms or not_opened). Use it to see who opened a campaign. GET /messages/{message_id}/sent-contacts.

Parameterslimitoffsetlist_idopen_typereport_idcontact_idmessage_idrequired

vision6_list_transactional_groups

List transactional groups

Transactional send groups (one per group name used with vision6_send_transactional) with sent, failed, bounced, delivered, opened, clicked and unsubscribed counts. GET /transactional-groups.

Parametersnametyperequiredlimitoffset

vision6_get_transactional_group

Get a transactional group

One transactional group by id with its delivery statistics. GET /transactional-groups/{group_id}.

Parametersgroup_idrequired

vision6_create_contact

Create a contact

WRITE: add one contact to a list (needs an email and/or mobile that matches a field of the list). May trigger the list's 'contact created' automations and notification emails. Returns the new contact. POST /lists/{list_id}/contacts.

Parametersemailfieldsmobilelist_idrequiredis_activedouble_opt_inemail_subscribedmobile_subscribedremove_unsubscribers

vision6_add_contacts

Add several contacts

WRITE: add up to 200 contacts to a list in one request (faster than one by one). Each needs an email and/or mobile. Vision6 returns no contact data (HTTP 204), so use vision6_list_contacts to read them back. May trigger automations. POST /lists/{list_id}/contacts.

Parameterslist_idrequiredcontactsrequiredremove_unsubscribers

vision6_update_contact

Update a contact

WRITE: change one contact's email, mobile, custom field values, subscription status (email_subscribed/mobile_subscribed=false unsubscribes), active flag or double opt-in. Only the fields you pass change. May trigger 'contact updated' automations. Returns the updated contact. PATCH /lists/{list_id}/contacts/{contact_id}.

Parametersemailfieldsmobilelist_idrequiredis_activecontact_idrequireddouble_opt_inemail_subscribedmobile_subscribed

vision6_delete_contact

Delete a contact

WRITE, IRREVERSIBLE: permanently delete one contact from a list (for example for a privacy erasure request). To stop emailing someone but keep the record, use vision6_update_contact with email_subscribed=false instead. Pass confirm=true only after the user agreed to the deletion. DELETE /lists/{list_id}/contacts?id={contact_id}.

Parametersconfirmrequiredlist_idrequiredcontact_idrequired

vision6_create_list

Create a contact list

WRITE: create a new, empty contact list inside a list folder (see vision6_list_folders with type list). Returns the new list. POST /lists.

Parametersnamerequiredfolder_idrequiredis_gdpr_complianton_update_addresson_register_addresson_unsubscribe_addressallow_send_to_duplicates

vision6_create_message

Create a message (draft)

WRITE: save a new email or SMS message in Vision6. This only stores the message; it is NOT sent (use the Vision6 app to send a campaign, or vision6_send_transactional for a one-off send). Email needs email_type, subject and matching body fields (plain: content_text; html: content_html; plain-html: both; raw_html: content_html or content_html_raw). SMS needs content_sms. The drag-and-drop builder is not supported. POST /messages.

Parametersnamerequiredtyperequiredsubjectreply_tofolder_idfrom_nameemail_typecontent_smsis_templatecontent_htmlcontent_textfrom_address+2 more

vision6_update_message

Update a message

WRITE: change a saved message's name, subject, sender, folder or body. Only the fields you pass change. It does not send anything. PATCH /messages/{message_id}.

Parametersnamesubjectreply_tofolder_idfrom_namemessage_idrequiredcontent_smsis_templatecontent_htmlcontent_textfrom_addressis_responsive+1 more

vision6_send_transactional

Send a transactional email or SMS

WRITE: SENDS REAL EMAIL OR SMS to the recipients immediately (asynchronously) and USES ACCOUNT SENDING CREDITS. It cannot be recalled. Up to 100 recipients per call, each identified by exactly one of contact_id, email or mobile, plus optional personalisation values (wildcards %%key%% in the body). Either send a saved message (message_id) or custom content (subject/body_html/body_text, and for SMS body_text + from_address). Unsubscribed addresses are skipped. Email always needs list_id. Results appear in the transactional group (vision6_get_transactional_group). The account owner's email must be confirmed in Vision6 first. Pass confirm_send=true only after the user approved these recipients and this content. POST /transactional-sends.

Parameterstyperequiredlist_idsubjectgroup_idreply_tobody_htmlbody_textfrom_namegroup_namemessage_idrecipientsrequiredconfirm_sendrequired+2 more

Version history

14
  1. v1.15.4LatestNov 7, 2026
  2. v1.14.3Nov 5, 2026
  3. v1.14.2Nov 5, 2026
  4. v1.14.1Nov 4, 2026
  5. v1.14.0Nov 3, 2026
  6. v1.13.1Nov 3, 2026
  7. v1.12.0Nov 1, 2026
  8. v1.10.0Oct 31, 2026
  9. v1.9.0Oct 31, 2026
  10. v1.8.2Oct 30, 2026
  11. v1.8.0Oct 30, 2026
  12. v1.3.0Oct 26, 2026
  13. v1.0.3Oct 25, 2026
  14. v1.0.0Oct 25, 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