Vision6 MCP by usefulapi

io.usefulapi/vision6 · v1.0.0 · communication

Vision6 MCP by usefulapi is healthy: it completed an MCP handshake in 249 ms and exposes 23 tools.

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

Endpoint: https://vision6.usefulapi.io/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count23
Latency249 ms
Last checked (UTC)2026-10-24T17:40:18.695Z

Health history

Checked (UTC)StatusLatencyError
2026-10-24T17:40:18.695ZHealthy249

Tools (23)

vision6_get_accountDetails 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/.
vision6_list_listsList the account's contact lists with id, name, creation/modification time and notification settings. Filter by exact name. GET /lists.
vision6_get_listOne contact list by id. GET /lists/{list_id}.
vision6_list_list_fieldsThe 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.
vision6_list_foldersList 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.
vision6_list_contactsList 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}/
vision6_get_contactOne contact by id within a list, with all fields. GET /lists/{list_id}/contacts/{contact_id}.
vision6_list_messagesList saved email and SMS messages (templates and campaigns) with id, type, name, subject and sender. Filter by type or exact name/subject. GET /messages.
vision6_get_messageOne message by id. With include_content=true the HTML and plain-text body is included. GET /messages/{message_id}.
vision6_get_message_sender_defaultsThe account's default from name, from address and reply-to, applied to new email messages when you omit them. GET /message-sender-defaults.
vision6_list_reportsSend 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 /rep
vision6_get_reportOne 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}.
vision6_list_sent_contactsThe 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.
vision6_list_transactional_groupsTransactional send groups (one per group name used with vision6_send_transactional) with sent, failed, bounced, delivered, opened, clicked and unsubscribed counts. GET /transactional-groups.
vision6_get_transactional_groupOne transactional group by id with its delivery statistics. GET /transactional-groups/{group_id}.
vision6_create_contactWRITE: 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.
vision6_add_contactsWRITE: 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.
vision6_update_contactWRITE: 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}/c
vision6_delete_contactWRITE, 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
vision6_create_listWRITE: create a new, empty contact list inside a list folder (see vision6_list_folders with type list). Returns the new list. POST /lists.
vision6_create_messageWRITE: 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: b
vision6_update_messageWRITE: 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}.
vision6_send_transactionalWRITE: 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). E