# Book Mangomint appointments from client texts with an AI agent

> Paste a client's text or DM and your agent finds them in Mangomint, checks notes and the stylist's day, and books the slot after your OK.

Source: https://cotlet.dev/integrations/mangomint-api-mcp-server/book-appointments-with-ai

A regular sends a DM on Sunday night asking for a facial with Alex on Friday afternoon. On Monday the front desk has to find her in Mangomint, check her notes, look for a free hour and build the appointment by hand.

Cotlet does it in your own Mangomint account with find\_client, list\_services, list\_appointments and book\_appointment, called by your AI agent, an n8n workflow or a script.

[Request access](https://cotlet.dev/app/signup?app=mangomint) [All Mangomint tools](https://cotlet.dev/integrations/mangomint-api-mcp-server)

Hosted · nothing to install or maintain

Official options

## Can Mangomint do this on its own?

Mangomint has no API to create appointments (checked 12 Oct 2026). Online booking and Express Booking let the client finish a booking, but a request that arrives as a text or a DM still needs a staff member to read it and create the appointment. Webhooks report an appointment only after it exists.

By hand

## How you do it in Mangomint today

1. Click an empty spot on the Mangomint calendar, or tap and hold in the mobile app, to open the appointment details on the right.
2. Select the client and the service, and select Add Service for each extra service.
3. Drag the appointment to another time or staff member if the first slot clashes, then select Book Appointment.
4. To let the client finish the booking, turn on Use Express Booking with only first name, phone and service, and select Send Text Message so the client completes the booking and any card or deposit.
5. Requests pile up overnight by text, DM and email, and each one is a client lookup, a slot search and a booking done by hand the next morning.

With an agent

## How to book Mangomint appointments from client texts with an AI agent

Prompt

```
Jamie texted asking for a signature facial with Alex next Friday afternoon. Find her, check Alex's day and book the first free slot after 1pm.
```

1. 01  
### Match the sender to a client  
The agent searches find\_client by the phone number or email the message came from first, and by name only if that fails. Two or more matches stop the run with a question; a client is never guessed.
2. 02  
### Read notes before booking  
Client notes and tags come back with the match. An allergy or a "deposit required" note is shown to you with the proposed booking.
3. 03  
### Turn the words into a service  
The agent maps "facial" or "brows" to the menu from list\_services and checks that the requested stylist performs it. A loose word that fits several services becomes a short question.
4. 04  
### Find the slot  
It reads the stylist's day with list\_appointments and picks the first gap long enough for every service in the request, inside the window the client asked for, plus one fallback time.
5. 05  
### Book with a note  
After your OK it calls book\_appointment and puts the original request in the appointment note, so the front desk sees where the booking came from.

### What you get back

Example data

```
Request: "facial with Alex Friday afternoon?" from +1 503 555 0142
Client: Jamie Doe, VIP. Note: prefers fragrance-free products
Alex, Fri 16 Oct: free 2:00 to 3:30 PM and 4:30 to 6:00 PM
Booked: Signature Facial, Fri 16 Oct 2:00 to 3:00 PM with Alex (ap_903114)
Fallback offered: 4:30 PM, not used
```

### Other ways to ask

- Here are three Instagram DMs from last night. Book what you can and list the ones that need a call.
- Find Alex's first free hour next week for a Brow Shaping and book it for Dana with a note that she asked by email.
- Book Jamie for a Signature Facial plus Brow Shaping back to back with Alex on Saturday morning.

Before you automate it

## What Mangomint allows, and what to know first

- A booking made by staff sends the client Mangomint's Appointment Booked email and text only when Send for appointments booked by a staff member is on, under Settings > Automated Messages > Appointment Booked.
- Mangomint sets each new appointment to Unconfirmed or Confirmed by an account setting, and an appointment booked after the confirmation request would have gone out is set to Confirmed automatically.
- A client-specific service duration saved on the client's Adjustments tab applies automatically to calendar bookings, so the booked end time can differ from the service menu.
- An Express Booking the client does not complete within the time limit is canceled automatically with a text to the client, and it is deleted from the Mangomint calendar after 24 hours.

book\_appointment asks for your OK by default. To run it on a schedule without you, switch confirmation off for that tool in your dashboard.

Sources: [Mangomint: Create an Appointment](https://www.mangomint.com/learn/create-a-new-appointment/) · [Mangomint: Automated Messages, Appointment Booked](https://www.mangomint.com/learn/automated-messages-appointment-booked/) · [Mangomint: Client-Specific Service Durations](https://www.mangomint.com/learn/client-specific-service-durations/) · [Mangomint: Using Express Booking](https://www.mangomint.com/learn/how-to-use-express-booking/)

REST

## Call book\_appointment from a script

curl

```
curl https://cotlet.dev/api/v1/mangomint/book_appointment \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"client_id":"cl_48213","location_id":"loc_1","service_ids":["svc_signature_facial"],"staff_id":"st_207","start":"2026-10-16T14:00:00-07:00","note":"Booked from client text: facial with Alex Friday afternoon"}'
```

Example response

```
{
"appointment_id": "ap_903114",
"status": "booked",
"client": {
"client_id": "cl_48213",
"name": "Jamie Doe"
},
"services": [
{
"service_id": "svc_signature_facial",
"name": "Signature Facial",
"duration_minutes": 60
}
],
"staff": {
"staff_id": "st_207",
"name": "Alex"
},
"start": "2026-10-16T14:00:00-07:00",
"end": "2026-10-16T15:00:00-07:00"
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the tool is mangomint\_book\_appointment. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/mangomint-api-mcp-server#automations)

Tools

## Mangomint tools this automation uses

__Cotlet Mangomint tools used to book Mangomint appointments from client texts with an AI agent__
| Tool | Parameters |
| ------------------ | -------------------------------------------------------------- |
| find\_client | query |
| list\_services | location\_id |
| list\_appointments | location\_id, from, to, staff\_id, include\_canceled |
| book\_appointment | client\_id, location\_id, service\_ids, staff\_id, start, note |

[All 13 Mangomint tools with descriptions](https://cotlet.dev/integrations/mangomint-api-mcp-server#tools)

## Frequently asked questions

### What if two clients match the name?

find\_client returns every match with contact details, so your agent asks you which one before it books.

## More Mangomint automations

- [Reschedule Mangomint appointments when staff is out](https://cotlet.dev/integrations/mangomint-api-mcp-server/reschedule-appointments-when-staff-is-out)
- [Book clients from the Mangomint Intelligent Waitlist](https://cotlet.dev/integrations/mangomint-api-mcp-server/book-clients-from-the-waitlist)
- [Get a weekly Mangomint sales and cancellations report](https://cotlet.dev/integrations/mangomint-api-mcp-server/weekly-sales-report)
- [Mangomint API and MCP server: every tool](https://cotlet.dev/integrations/mangomint-api-mcp-server)
- [All use cases](https://cotlet.dev/use-cases)

## Give your agent access to Mangomint.

Free 7-day trial with 5,000 credits, no card needed. Cotlet is independent and not affiliated with Mangomint.

[Request access](https://cotlet.dev/app/signup?app=mangomint)
