AiSensy MCP by usefulapi

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

Read AiSensy contacts, templates and campaigns; add contacts, send WhatsApp messages on approval.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableCommunication & CollaborationBusiness & Commerce

Overview

AI-generated overview

Read AiSensy WhatsApp templates, campaigns and contacts, and send WhatsApp messages or manage contacts through an assistant.

What you can do
  • Inspect the project: plan, quota, credit balance, WhatsApp number status and quality rating
  • List and read WhatsApp templates, campaigns and API campaigns, including status and parameters
  • Review campaign analytics and audience delivery, read and reply outcomes
  • Find and read contacts by phone number or id
  • Create, update or bulk-upsert contacts, with a preview before bulk changes
  • Send template or free-text WhatsApp messages and check message status
When to use it
Useful when you run WhatsApp outreach through AiSensy and want to check template approvals, campaign performance or contact details, or send approved template messages, from a chat assistant instead of the AiSensy dashboard.
Requirements
Remote MCP endpoint reached over HTTP; no local package. Sign-in is via OAuth, and the login page asks for your AiSensy Project API key and project id (AiSensy Developer Hub, Pro plan or higher). No API key or Authorization header goes in the client config. The hosted service has a free tier of 50 tool calls per month, with paid plans above that.
Before you install
Several tools write data: creating campaigns and contacts, updating opt-in or blocked status, bulk upserts and sending WhatsApp messages. Sending spends AiSensy credit and is not idempotent, so each call sends again; new contacts are opted in automatically, so only add people who agreed to be messaged. The service is paid beyond the free call quota, and upgrade tools return payment links. Your AiSensy credentials are entered on the provider's login page.

Installation

In SourceWeft

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

README

AiSensy MCP by usefulapi

Read AiSensy contacts, templates and campaigns; add contacts, send WhatsApp messages on approval.

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

Connect

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

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

On first connect you'll paste your AiSensy Project API key and project id (AiSensy → Developer → Developer Hub; Pro plan or higher).

Tools

ToolTypeWhat it does
aisensy_get_projectreadGet project
aisensy_list_templatesreadList WhatsApp templates
aisensy_get_templatereadGet WhatsApp template
aisensy_list_campaignsreadList campaigns
aisensy_list_api_campaignsreadList API campaigns
aisensy_get_api_campaignreadGet API campaign
aisensy_get_campaign_analyticsreadGet campaign analytics
aisensy_list_campaign_audiencereadList campaign audience
aisensy_create_api_campaignwriteCreate API campaign
aisensy_find_contactreadFind contact by phone number
aisensy_get_contactreadGet contact
aisensy_create_contactwriteCreate contact
aisensy_update_contactwriteUpdate contact
aisensy_upsert_contactswriteCreate or update contacts in bulk
aisensy_get_messagereadGet message
aisensy_send_campaign_messagewriteSend campaign message
aisensy_send_messagewriteSend WhatsApp message
aisensy_usage_statusmetaUsage status (free-tier meter)
aisensy_request_featuremetaRequest a missing feature
aisensy_upgrademetaUpgrade to Pro or Pro+
aisensy_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 aisensy_upgrade (it returns a Stripe Checkout link). Cancel any time with aisensy_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running aisensy_upgrade before then undoes the cancel. Or write to [email protected].

License

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

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

Tools

17

aisensy_get_project

Get project

The AiSensy project (WhatsApp account) this key belongs to: name, status, plan and renewal date, monthly active user quota and usage, credit balance (raw units as AiSensy reports them), WhatsApp number, display name status, quality rating and messaging tier. GET /project/{project_id}.

Takes no parameters.

aisensy_list_templates

List WhatsApp templates

List the WhatsApp template messages of the project with name, language, status (PENDING, APPROVED, REJECTED), category, text and parameter count. Only APPROVED templates can be sent. Pages by record id: pass next_after from the previous reply as `after`. GET /project/{project_id}/wa_template/.

Parametersafterlimitbefore

aisensy_get_template

Get WhatsApp template

One WhatsApp template by id, with status, rejection reason, buttons and text. GET /project/{project_id}/wa_template/{id}.

Parameterstemplate_idrequired

aisensy_list_campaigns

List campaigns

List campaigns (API campaigns, broadcasts or both) with name, type, status, audience size, submitted count, template and creation time. Pages with skip + limit. POST /project/{project_id}/campaigns (a read: it only queries).

Parametersskiplimitcampaign_type

aisensy_list_api_campaigns

List API campaigns

List the project's API campaigns (the campaigns messages can be sent through) with status and template. A campaign must be LIVE to send. GET /project/{project_id}/campaign/api.

Takes no parameters.

aisensy_get_api_campaign

Get API campaign

One API campaign by id: status, template, parameters and counts. GET /project/{project_id}/campaign/api/{campaign_id}.

Parameterscampaign_idrequired

aisensy_get_campaign_analytics

Get campaign analytics

Daily delivery and credit-usage statistics of one campaign (sent, delivered, read, failed counts and message credit usage), optionally within a date range. POST /project/{project_id}/campaign/analytics/{campaign_id} (a read: it only queries).

Parametersend_datestart_datecampaign_idrequired

aisensy_list_campaign_audience

List campaign audience

Who a campaign was sent to, with name, number and sent/delivered/read times, optionally filtered by outcome (SENT, DELIVERED, READ, FAILED, REPLIED, CLICKED) and date range. Pages by cursor: pass next_after from the previous reply as `after`. GET /project/{project_id}/campaign/audience/{campaign_id}.

Parameterssortafterlimitcategoryend_datestart_datecampaign_idrequired

aisensy_create_api_campaign

Create API campaign

WRITE: create an API campaign that binds a name to an APPROVED WhatsApp template. It sends nothing; messages go out only when aisensy_send_campaign_message is called for it. Not idempotent: calling twice with the same name may create two campaigns or fail. POST /project/{project_id}/campaign/api.

Parameterscampaign_namerequiredtemplate_namerequired

aisensy_find_contact

Find contact by phone number

Look up a contact by phone number: id, name, tags, attributes, opt-in/chat state and last activity. 404 means no such contact. GET /project/{project_id}/contact?action=FetchContact&mobile_number=.

Parametersphone_numberrequired

aisensy_get_contact

Get contact

One contact by id: name, phone number, tags, attributes, chat state and last activity. GET /project/{project_id}/contact/{contact_id}.

Parameterscontact_idrequired

aisensy_create_contact

Create contact

WRITE: add a contact (name and phone number with country code). AiSensy opts new contacts in to WhatsApp notifications automatically, so only add people who agreed to be messaged. A number that already exists returns a 409 conflict. POST /project/{project_id}/contact.

Parametersnamerequiredphone_numberrequired

aisensy_update_contact

Update contact

WRITE: change a contact's name, custom attributes, WhatsApp opt-in status or blocked status. Setting opted_in=false stops campaign messages to that person; blocked=true blocks them. Only the fields you pass change. PATCH /project/{project_id}/contact/{contact_id}.

Parametersnameblockedopted_inattributescontact_idrequired

aisensy_upsert_contacts

Create or update contacts in bulk

WRITE (bulk): create or update up to 50 contacts by phone number in one call. Each row: phone_number, and optionally name (needed to create a new contact), attributes and opted_in. Without confirm=true it only PREVIEWS: it looks up every number and returns what would be created, updated (with the exact changes) or left unchanged. With confirm=true it looks each number up again and applies the rows one by one; a failed row does not stop the others, and every row reports its outcome (created, updated, unchanged, partial or failed). AiSensy ignores attribute names the project does not have: such fields come back in not_applied and the row is partial. Re-running the same rows changes nothing. AiSensy opts NEW contacts in to WhatsApp notifications automatically (opted_in=false on the row opts them out right after creation), so only add people who agreed to be messaged. Tags cannot be set here: the AiSensy Project API has no tag write for contacts. Uses GET/POST /project/{project_id}/contact and PATCH /project/{project_id}/contact/{contact_id}.

Parametersconfirmcontactsrequired

aisensy_get_message

Get message

One WhatsApp message by id: status (SENT, DELIVERED, READ), sent/delivered/read times, sender, campaign, content and price. GET /project/{project_id}/messages/{message_id}.

Parametersmessage_idrequired

aisensy_send_campaign_message

Send campaign message

WRITE, SENDS A WHATSAPP MESSAGE TO A CUSTOMER AND SPENDS AISENSY CREDIT: send the template of a LIVE API campaign to one phone number (a new contact is created if the number is unknown). Not idempotent: every call sends again. template_params must match the template's parameter count. Show the user the recipient and the template first and set confirm=true only after they approve. POST /project/{project_id}/campaign/api/send.

Parametersnamerequiredtagssourceconfirmrequiredmedia_urlattributesphone_numberrequiredcampaign_namerequiredmedia_filenametemplate_paramsdefault_country_code

aisensy_send_message

Send WhatsApp message

WRITE, SENDS A WHATSAPP MESSAGE TO A CUSTOMER AND MAY SPEND AISENSY CREDIT: send either a free-text message (type=text; WhatsApp only delivers it inside the 24-hour window after the customer last wrote) or an approved template (type=template with template_name, language_code and body_params). Not idempotent. Show the user the recipient and the text first and set confirm=true only after they approve. POST /project/{project_id}/messages.

Parameterstexttyperequiredconfirmrequiredbody_paramsphone_numberrequiredlanguage_codetemplate_name

Version history

14
  1. v1.16.4LatestNov 7, 2026
  2. v1.15.3Nov 5, 2026
  3. v1.15.2Nov 5, 2026
  4. v1.15.1Nov 4, 2026
  5. v1.15.0Nov 3, 2026
  6. v1.14.1Nov 3, 2026
  7. v1.13.0Nov 1, 2026
  8. v1.11.0Oct 31, 2026
  9. v1.10.0Oct 31, 2026
  10. v1.9.2Oct 30, 2026
  11. v1.9.0Oct 30, 2026
  12. v1.4.0Oct 26, 2026
  13. v1.1.3Oct 25, 2026
  14. v1.1.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