MCPOutils MCP/Invitations à laisser un avis

Invitations à laisser un avis

Créer et gérer des campagnes d'invitation à laisser un avis, des modèles et des destinataires.

create_review_campaign

Writereview-invite:write

Create a new review-invite (acquisition) campaign — an email/SMS flow that asks customers to leave a review, screens them by rating, and routes happy customers to a public review site. Created as a draft; use run_campaign_action with op "publish" to launch it once configured. locationId is required; everything else can be filled in now or with update_review_campaign later. Returns the created campaign. You don't pass an agency — it comes from your credentials.

Paramètres
namestringfacultatif
The campaign's display name.
clientIdstringfacultatif
The client this campaign belongs to.
locationIdstringobligatoire
The location this campaign sends invites for.
campaignTypestringfacultatif
The channel mix, e.g. "email", "sms", "email_sms".
channels"EMAIL" | "SMS" | "SMS_AND_EMAIL"facultatif
Which channels the campaign sends on. Anything other than these three is stored as "EMAIL". Email requirements (fromEmail, a verified sending domain) only apply when EMAIL is included; an SMS-only campaign instead needs a carrier-verified number for its location.
status"draft" | "launched" | "stopped" | "archived"facultatif
Campaign status. Prefer run_campaign_action to change status through its lifecycle actions instead of setting this directly.
fromEmailstringfacultatif
The sending "from" email address (requires a verified sending domain to actually send).
replyToEmailstringfacultatif
The reply-to email address.
emailSubjectstringfacultatif
The email's subject line.
emailBodyobjectfacultatif
The email body, as the rich-text JSON the campaign builder's editor produces.
emailHtmlstringfacultatif
Rendered HTML fallback of the email body.
smsBodystringfacultatif
The SMS message text.
smsReviewSitestringfacultatif
Which review site the SMS link points to.
reviewSitesobjectfacultatif
The review site(s) offered to happy customers, as the builder's JSON shape.
screeningEnabledbooleanfacultatif
Whether to screen customers by star rating before directing them to a public review site.
landingTitlestringfacultatif
Title shown on the campaign's landing/funnel page.
landingContentstringfacultatif
Body content shown on the campaign's landing/funnel page.
hideAddressbooleanfacultatif
Hide the business address on the landing page.
hideBusinessNamebooleanfacultatif
Hide the business name on the landing page.
hideImagebooleanfacultatif
Hide the business image on the landing page.
followupsobjectfacultatif
Follow-up reminder schedule, as the builder's JSON shape.
stopFollowupOnClickbooleanfacultatif
Stop sending follow-ups once the recipient clicks through.
scheduleAtstringfacultatif
ISO datetime to schedule the campaign launch for. Pass null/empty to send immediately on publish.
timezonestringfacultatif
IANA timezone for scheduling, e.g. "America/New_York".
autoSendbooleanfacultatif
Whether new recipients are sent to automatically once the campaign is launched. Can also be toggled with run_campaign_action's autoSend op.
staticUrlstringfacultatif
A static/QR review-request URL slug for this campaign, if used instead of (or alongside) email/SMS sends.
thankYouEnabledbooleanfacultatif
Whether to show a thank-you follow-up after a positive review.
thankYouSubjectstringfacultatif
Thank-you email subject.
thankYouBodystringfacultatif
Thank-you email body.
thankYouDelayHoursnumberfacultatif
Hours to wait before sending the thank-you follow-up.
funnelThresholdnumberfacultatif
Star-rating threshold that routes a respondent to the public review site vs. private feedback.
funnelStyleobjectfacultatif
Funnel presentation style, as the builder's JSON shape.
lowRankContentstringfacultatif
Content shown to respondents who rate below funnelThreshold.
hideFeedbackBoxbooleanfacultatif
Hide the free-text feedback box on the landing page.
collectMode"directory" | "internal"facultatif
How feedback is collected on the landing page.
ratingMechanismobjectfacultatif
The star/rating widget configuration, as the builder's JSON shape.
askNamebooleanfacultatif
Ask the respondent for their name.
askFeedbackbooleanfacultatif
Ask the respondent for free-text feedback.
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "create_review_campaign",
    "arguments": {
      "locationId": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/update_review_campaign

update_review_campaign

Writereview-invite:write

Edit an existing review-invite campaign's configuration. Pass only the fields you want to change. Identify the campaign by its id (from list_review_campaigns or create_review_campaign). To change the campaign's lifecycle status (publish/stop/clone/archive) use run_campaign_action instead of setting `status` directly here. Returns the updated campaign, or throws if not found.

Paramètres
campaignIdstringobligatoire
The id of the campaign to update (required).
namestringfacultatif
The campaign's display name.
clientIdstringfacultatif
The client this campaign belongs to.
locationIdstringfacultatif
The location this campaign sends invites for.
campaignTypestringfacultatif
The channel mix, e.g. "email", "sms", "email_sms".
channels"EMAIL" | "SMS" | "SMS_AND_EMAIL"facultatif
Which channels the campaign sends on. Anything other than these three is stored as "EMAIL". Email requirements (fromEmail, a verified sending domain) only apply when EMAIL is included; an SMS-only campaign instead needs a carrier-verified number for its location.
status"draft" | "launched" | "stopped" | "archived"facultatif
Campaign status. Prefer run_campaign_action to change status through its lifecycle actions instead of setting this directly.
fromEmailstringfacultatif
The sending "from" email address (requires a verified sending domain to actually send).
replyToEmailstringfacultatif
The reply-to email address.
emailSubjectstringfacultatif
The email's subject line.
emailBodyobjectfacultatif
The email body, as the rich-text JSON the campaign builder's editor produces.
emailHtmlstringfacultatif
Rendered HTML fallback of the email body.
smsBodystringfacultatif
The SMS message text.
smsReviewSitestringfacultatif
Which review site the SMS link points to.
reviewSitesobjectfacultatif
The review site(s) offered to happy customers, as the builder's JSON shape.
screeningEnabledbooleanfacultatif
Whether to screen customers by star rating before directing them to a public review site.
landingTitlestringfacultatif
Title shown on the campaign's landing/funnel page.
landingContentstringfacultatif
Body content shown on the campaign's landing/funnel page.
hideAddressbooleanfacultatif
Hide the business address on the landing page.
hideBusinessNamebooleanfacultatif
Hide the business name on the landing page.
hideImagebooleanfacultatif
Hide the business image on the landing page.
followupsobjectfacultatif
Follow-up reminder schedule, as the builder's JSON shape.
stopFollowupOnClickbooleanfacultatif
Stop sending follow-ups once the recipient clicks through.
scheduleAtstringfacultatif
ISO datetime to schedule the campaign launch for. Pass null/empty to send immediately on publish.
timezonestringfacultatif
IANA timezone for scheduling, e.g. "America/New_York".
autoSendbooleanfacultatif
Whether new recipients are sent to automatically once the campaign is launched. Can also be toggled with run_campaign_action's autoSend op.
staticUrlstringfacultatif
A static/QR review-request URL slug for this campaign, if used instead of (or alongside) email/SMS sends.
thankYouEnabledbooleanfacultatif
Whether to show a thank-you follow-up after a positive review.
thankYouSubjectstringfacultatif
Thank-you email subject.
thankYouBodystringfacultatif
Thank-you email body.
thankYouDelayHoursnumberfacultatif
Hours to wait before sending the thank-you follow-up.
funnelThresholdnumberfacultatif
Star-rating threshold that routes a respondent to the public review site vs. private feedback.
funnelStyleobjectfacultatif
Funnel presentation style, as the builder's JSON shape.
lowRankContentstringfacultatif
Content shown to respondents who rate below funnelThreshold.
hideFeedbackBoxbooleanfacultatif
Hide the free-text feedback box on the landing page.
collectMode"directory" | "internal"facultatif
How feedback is collected on the landing page.
ratingMechanismobjectfacultatif
The star/rating widget configuration, as the builder's JSON shape.
askNamebooleanfacultatif
Ask the respondent for their name.
askFeedbackbooleanfacultatif
Ask the respondent for free-text feedback.
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_review_campaign",
    "arguments": {
      "campaignId": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/run_campaign_action

run_campaign_action

Writereview-invite:write

Run a lifecycle action on a review-invite campaign. Actions: "publish" launches the campaign — if autoSend is on this starts sending real emails/SMS to recipients immediately, and it is gated per channel: a campaign whose channels include EMAIL requires a verified sending domain for the client, and one whose channels include SMS requires a carrier-verified number for the location (either failure returns an explanatory error); "stop" halts an active campaign; "clone" duplicates it as a new draft (returns the clone); "autoSend" turns automatic sending on/off for new recipients (pass `on`); "archive" archives it (only allowed once stopped — a still-active campaign is silently skipped, check the response); "unarchive" restores an archived campaign. Identify the campaign by its id.

Paramètres
campaignIdstringobligatoire
The id of the campaign to act on (required, from list_review_campaigns).
op"publish" | "stop" | "clone" | "autoSend" | "archive" | "unarchive"obligatoire
The action to run (required).
onbooleanfacultatif
Required when op is "autoSend" — true to enable, false to disable.
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "run_campaign_action",
    "arguments": {
      "campaignId": "string",
      "op": "publish"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/add_campaign_recipients

add_campaign_recipients

Writereview-invite:write

Add recipients to a review-invite campaign. Each recipient needs at least an email or phone. If the campaign is already launched with autoSend on (and sends both email and SMS), adding recipients here immediately triggers a real send to the new rows — not just a data insert. Returns the number of recipients added. Identify the campaign by its id (from list_review_campaigns or create_review_campaign).

Paramètres
campaignIdstringobligatoire
The id of the campaign to add recipients to (required).
recipientsobject[]obligatoire
One or more recipients to add.
namestringfacultatif
Recipient's name.
emailstringfacultatif
Recipient's email address.
phonestringfacultatif
Recipient's phone number.
sourcestringfacultatif
Where this recipient came from, e.g. "manual", "csv", "pos".
contactTypestringfacultatif
Contact type, if tracked (e.g. "customer").
channelstringfacultatif
Preferred send channel for this recipient, e.g. "email" | "sms".
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "add_campaign_recipients",
    "arguments": {
      "campaignId": "string",
      "recipients": [
        {}
      ]
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/list_invite_templates

list_invite_templates

Readreview-invite:read

List the agency's saved review-invite message templates (reusable email/SMS content for campaigns). Use this to find a template's id before update_invite_template or delete_invite_template.

Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "list_invite_templates",
    "arguments": {}
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/create_invite_template

create_invite_template

Writereview-invite:write

Create a reusable review-invite message template. `content` is the rich-text JSON shape the campaign builder's editor produces (pass the same shape as an existing template's `content` if adapting one). Optionally assign it to specific locations so it shows as a suggested template there. Returns the created template.

Paramètres
namestringobligatoire
The template's display name (required).
descriptionstringfacultatif
A short description of when to use this template.
contentobjectfacultatif
The template content, as the builder's rich-text JSON shape.
assignedLocationIdsstring[]facultatif
Location ids this template is suggested for. Omit to make it available agency-wide.
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "create_invite_template",
    "arguments": {
      "name": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/update_invite_template

update_invite_template

Writereview-invite:write

Edit an existing review-invite template. Pass only the fields you want to change. Identify the template by its id (from list_invite_templates). Returns the updated template, or throws if not found.

Paramètres
templateIdstringobligatoire
The id of the template to update (required).
namestringfacultatif
New display name.
descriptionstringfacultatif
New description.
contentobjectfacultatif
New content, as the builder's rich-text JSON shape.
assignedLocationIdsstring[]facultatif
Replaces the assigned location ids.
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_invite_template",
    "arguments": {
      "templateId": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/delete_invite_template

delete_invite_template

Writereview-invite:write

Permanently delete a review-invite template. This does not affect campaigns already using its content — it only removes the reusable template. Identify the template by its id (from list_invite_templates).

Paramètres
templateIdstringobligatoire
The id of the template to delete (required).
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "delete_invite_template",
    "arguments": {
      "templateId": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/find_campaign_recipients

find_campaign_recipients

Readreview-invite:read

Search the agency's review-invite recipients by name, email or phone, across every campaign, location and source (manual, CSV, CRM). Use this when you know who someone is but not which campaign or location they're in — unlike list_campaign_recipients, this needs no clientId or locationId. Returns matching contacts with their id, campaign, location, source, contact type, and whether they've already been messaged. The id is what update_campaign_recipient and move_campaign_recipients take.

Paramètres
querystringobligatoire
Name, email address, or phone number to search for. Partial matches work; case-insensitive.
limitnumberfacultatif
How many to return (default 25, max 100).
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "find_campaign_recipients",
    "arguments": {
      "query": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/update_campaign_recipient

update_campaign_recipient

Writereview-invite:write

Correct a review-invite recipient's details — name, email, phone or contact type. Pass only the fields you're changing. Identify the recipient by id (from find_campaign_recipients or list_campaign_recipients). Editing email or phone on a contact who has ALREADY been messaged is refused: the delivered message and any reply are tied to the address it went to, so changing it would misattribute them. Returns the updated contact.

Paramètres
recipientIdstringobligatoire
The id of the recipient to update (required).
namestringfacultatif
Corrected name.
emailstringfacultatif
Corrected email address.
phonestringfacultatif
Corrected phone number.
contactType"Customer" | "Lead" | "Prospect" | "Contact"facultatif
Contact type.
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_campaign_recipient",
    "arguments": {
      "recipientId": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.

MCPOutils MCP/Invitations à laisser un avis/move_campaign_recipients

move_campaign_recipients

Writereview-invite:write

Move review-invite recipients to a campaign at a different location — the fix when an import filed contacts under the wrong branch. A recipient's location IS its campaign's location, so this takes a target campaignId; use list_review_campaigns to find campaigns at the location you want. Contacts that have already been messaged cannot be moved (the delivered message belongs to the location it was sent from), and moving pending contacts into a live auto-sending campaign is refused unless you pass allowSend:true, because it would message them immediately. Returns how many moved.

Paramètres
recipientIdsstring[]obligatoire
Ids of the recipients to move (required).
campaignIdstringobligatoire
The campaign to move them into — this is what sets their location (required).
allowSendbooleanfacultatif
Set true to accept that a live auto-sending campaign will message these contacts on arrival. Defaults to false, which refuses that case.
Exemple de requête
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "move_campaign_recipients",
    "arguments": {
      "recipientIds": [
        "string"
      ],
      "campaignId": "string"
    }
  }
}
Exemple de réponse
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "..."
      }
    ]
  }
}

La forme de la réponse est indicative — le contenu réel dépend de l'outil et de vos données.