Local services & SaaS
PatientNow
Appointments and patient follow-ups in PatientNow for med spas and aesthetic practices.
5 endpoints
AestheticsPro offers custom API work only on its $350 a month Enterprise plan, with no public API documentation, and no official AestheticsPro MCP server was found (checked 11 Nov 2026). Cotlet runs a hosted AestheticsPro MCP server with 60 scheduling and client contact tools that ChatGPT and Claude use in your own AestheticsPro account.
60 tools Read and write
AestheticsPro offers "Custom API solutions" only as custom work on its Enterprise plan at $350 a month, and publishes no public API documentation or self-serve key page. Outbound webhooks send practice data to other tools. No official AestheticsPro MCP server was found, and no ChatGPT or Claude directory listing was verified.
| What you need | AestheticsPro custom API | Webhooks | Cotlet |
|---|---|---|---|
| Book an appointment from a client text | Enterprise, custom build | Sends data out | In your account |
| Move an injector's day | Enterprise, custom build | Sends data out | In your account |
| Assign new leads | Enterprise, custom build | Lead data out | In your account |
| Any AestheticsPro plan | Enterprise only | Yes | Yes |
Checked 11 Nov 2026. Sources: AestheticsPro pricing (Enterprise: Custom API solutions) · AestheticsPro integrations (webhooks) · AestheticsPro AI suite (Kai) · AestheticsPro training videos · AestheticsPro customer login
Once, in a browser we host for you.
One address in its settings.
Ask it to book Thursday's consults and answer the scheduling texts.
Your agent works in your own AestheticsPro calendar and client list, within your AestheticsPro user's access. Who can see your session
Sign in to AestheticsPro in a Cloud Browser. Open AestheticsPro in your Cotlet Cloud Browser and sign in at the Customer Login with your own AestheticsPro user.
Add the Cotlet address. Enter https://cotlet.dev/mcp/v1 as the MCP server or connector URL in your agent.
Let the agent in. Chat apps open a Cotlet sign-in page. Editors, n8n and scripts send an API key made in the console.
AestheticsPro shares the address https://cotlet.dev/mcp/v1 with every other app you enable, so one connector covers them all. Turned AestheticsPro on after connecting? Refresh the connector and the 60 tools appear.
Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect
Claude Code:
claude mcp add --transport http cotlet \
https://cotlet.dev/mcp/v1 \
--header "Authorization: Bearer $COTLET_API_KEY" // ~/.cursor/mcp.json
{
"mcpServers": {
"cotlet": {
"url": "https://cotlet.dev/mcp/v1",
"headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
}
}
} # ~/.codex/config.toml
[mcp_servers.cotlet]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY" MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: aestheticspro_read Read the calendar, book and move appointments, including online and virtual bookings.
Read appointments and resource allocation by provider, room, and equipment.
MCP callaestheticspro_read → read_calendar
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/calendars/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} See current appointment changes, cancellations, and available time.
MCP callaestheticspro_read → read_scheduling_updates
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/scheduling-updates/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Create an appointment from AP Toolbar. Booking can trigger client communications.
MCP callaestheticspro_write → create_appointment
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/appointments
| Name | Type | Description |
|---|---|---|
| client string required | string | Existing client name. |
| service string required | string | Service to book. |
| provider string required | string | Provider or injector. |
| starts_at string required | string | Date and time in your med spa timezone. |
| room string | string | Treatment room, when the service uses one. |
{
"client": "Example client",
"service": "Filler consultation",
"provider": "Example injector",
"starts_at": "2026-11-19T14:00",
"room": "Treatment room 2"
} {
"example": true,
"result": "Saved after confirmation"
} Change an existing booking. Scope: Exact cancellation, deletion, rescheduling, and notification controls remain unverified.
MCP callaestheticspro_write → modify_appointment
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/appointment/modify
| Name | Type | Description |
|---|---|---|
| appointment string required | string | The booked appointment to change. |
| starts_at string | string | New date and time. |
| provider string | string | New provider. |
| room string | string | New treatment room. |
{
"appointment": "appointment"
} {
"example": true,
"result": "Saved after confirmation"
} Read current available booking slots in Book Now.
MCP callaestheticspro_read → read_online_booking_availability
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/online-booking-availabilities/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Choose a service and available time, then submit the booking through Book Now.
MCP callaestheticspro_write → book_appointment_online
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/appointment-onlines
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Choose a service and available time, then submit the booking through Book Now. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} A signed-in client books an appointment through Client Portal.
MCP callaestheticspro_write → book_appointment_in_client_portal
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/appointment-in-client-portals
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | A signed-in client books an appointment through Client Portal. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} A client reads their appointment history through the self-service portal.
MCP callaestheticspro_read → read_own_appointment_history
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/own-appointment-histories/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Schedule a Zoom-backed appointment. Delivering care and accessing associated clinical records are excluded. Scope: Retain booking only; exclude care delivery and clinical documentation.
MCP callaestheticspro_write → schedule_virtual_appointment
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/virtual-appointment/schedule
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Schedule a Zoom-backed appointment. Delivering care and accessing associated clinical records are excluded. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Notify a waiting client when an appointment spot becomes available. Scope: Manual versus automatic triggering, channels, and acceptance controls are unverified.
MCP callaestheticspro_write → notify_client_of_opening
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-of-opening/notify
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Notify a waiting client when an appointment spot becomes available. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Provider and room calendars, equipment, service lengths, staff schedules, templates and staff announcements.
Create a staff scheduling calendar.
MCP callaestheticspro_write → create_staff_calendar
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/staff-calendars
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Create a staff scheduling calendar. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Create a room scheduling calendar.
MCP callaestheticspro_write → create_room_calendar
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/room-calendars
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Create a room scheduling calendar. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Add a scheduling resource, excluding inventory.
MCP callaestheticspro_write → add_scheduling_equipment
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/scheduling-equipments
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Add a scheduling resource, excluding inventory. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Associate appointment services with staff, equipment, and rooms. E-Record mapping is excluded. Scope: Exclude E-Record associations and service pricing.
MCP callaestheticspro_write → map_scheduling_resources
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/scheduling-resources/map
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Associate appointment services with staff, equipment, and rooms. E-Record mapping is excluded. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Set service booking length; no treatment administration.
MCP callaestheticspro_write → set_service_appointment_duration
REST endpointPUT https://cotlet.dev/api/v1/aestheticspro/service-appointment-duration
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Set service booking length; no treatment administration. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Configure staff scheduling availability.
MCP callaestheticspro_write → set_staff_schedule
REST endpointPUT https://cotlet.dev/api/v1/aestheticspro/staff-schedule
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Configure staff scheduling availability. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Create a reusable staff schedule.
MCP callaestheticspro_write → create_schedule_template
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/schedule-templates
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Create a reusable staff schedule. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Create a nonclinical announcement for staff, restricted here to scheduling changes, availability, or contact coordination. Scope: Recipient selection, publication controls, delivery channels, editing, deletion, and read receipts were not verified. Confirmation is an audit safety recommendation, not a verified vendor dialog.
MCP callaestheticspro_write → create_staff_announcement
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/staff-announcements
| Name | Type | Description |
|---|---|---|
| message string required | string | Scheduling, availability or contact coordination note for staff. |
{
"message": "message"
} {
"example": true,
"result": "Saved after confirmation"
} Set up online scheduling.
MCP callaestheticspro_write → configure_book_now
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/book-now/configure
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Set up online scheduling. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Configure portal scheduling and contact access only. Scope: Retain scheduling/contact configuration only; individual permission toggles are not verified.
MCP callaestheticspro_write → configure_client_portal
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-portal/configure
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Configure portal scheduling and contact access only. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Use the advertised Google Calendar integration for appointment visibility. Synchronization direction and connection-management controls are not publicly established. Scope: No two-way synchronization, connection-management command, or API action is established.
MCP callaestheticspro_write → sync_google_calendar
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/google-calendar/sync
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Use the advertised Google Calendar integration for appointment visibility. Synchronization direction and connection-management controls are not publicly established. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Use the advertised Apple Calendar integration for appointment visibility. Detailed setup and reverse synchronization are unverified. Scope: Setup, directionality, and reverse writes remain unverified.
MCP callaestheticspro_write → sync_apple_calendar
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/apple-calendar/sync
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Use the advertised Apple Calendar integration for appointment visibility. Detailed setup and reverse synchronization are unverified. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} How and when clients are asked to confirm and reminded.
Set up email and SMS confirmations.
MCP callaestheticspro_write → configure_appointment_confirmation
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/appointment-confirmation/configure
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Set up email and SMS confirmations. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Customize when appointment reminders are sent.
MCP callaestheticspro_write → set_appointment_reminder_timing
REST endpointPUT https://cotlet.dev/api/v1/aestheticspro/appointment-reminder-timing
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Customize when appointment reminders are sent. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Choose SMS or email for appointment reminders.
MCP callaestheticspro_write → set_appointment_reminder_channel
REST endpointPUT https://cotlet.dev/api/v1/aestheticspro/appointment-reminder-channel
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Choose SMS or email for appointment reminders. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Send appointment reminders through the configured automation; this does not establish a separate manual resend control. Scope: An automation capability, not evidence of a separate manual-send or resend command.
MCP callaestheticspro_write → send_automated_appointment_reminders
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/automated-appointment-reminders
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Send appointment reminders through the configured automation; this does not establish a separate manual resend control. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Client contact details, appointment history without clinical detail, scheduling texts and review requests.
Find a client through AP Toolbar search; access is restricted here to nonclinical contact information.
MCP callaestheticspro_read → search_clients
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/clients/search
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Add a client using the AP Toolbar shortcut; only contact creation is included. Scope: Contact creation only; individual fields and duplicate-handling behavior are unverified.
MCP callaestheticspro_write → create_client
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/clients
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Add a client using the AP Toolbar shortcut; only contact creation is included. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Read the nonclinical portion of Client Details. Clinical and financial profile sections are excluded. Scope: No field-complete contact schema or contact-only permission boundary was verified.
MCP callaestheticspro_read → read_client_contact_details
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/client-contact-details/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Customize nonclinical identity choices.
MCP callaestheticspro_write → configure_gender_identity_options
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/gender-identity-options/configure
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Customize nonclinical identity choices. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Apply an identity option to Client Details.
MCP callaestheticspro_write → set_client_gender_identity
REST endpointPUT https://cotlet.dev/api/v1/aestheticspro/client-gender-identity
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Apply an identity option to Client Details. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} An authorized staff user views a client's appointment history, excluding treatment details, clinical records, purchases, invoices, and balances. Scope: Exact history fields, filters, and permission controls were not inspected. Do not retrieve an entire mixed medical profile to implement this narrowly scoped read.
MCP callaestheticspro_read → read_client_appointment_history_staff
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/client-appointment-history-staffs/read
| Name | Type | Description |
|---|---|---|
| client string required | string | Client whose appointment dates, services and providers to list. |
{
"client": "client"
} {
"example": true,
"result": "Records for review"
} Read incoming client messages in the built-in two-way texting experience. Scope: Scheduling and general contact correspondence only.
MCP callaestheticspro_read → read_client_text_messages
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/client-text-messages/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Send or reply to a general client text within AestheticsPro. Clinical content is excluded. Scope: Clinical correspondence and attachments are excluded.
MCP callaestheticspro_write → send_client_text_message
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-text-messages
| Name | Type | Description |
|---|---|---|
| client string required | string | Client to text. |
| message string required | string | Scheduling or general contact text, no clinical content. |
{
"client": "client",
"message": "message"
} {
"example": true,
"result": "Saved after confirmation"
} Generate a draft email, text, lead response, or rebooking message. Drafting does not send it. Scope: Drafting only; no autonomous sending or available AI concierge is inferred.
MCP callaestheticspro_write → draft_client_communication_with_kai
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-communication-with-kai/draft
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Generate a draft email, text, lead response, or rebooking message. Drafting does not send it. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Send a general client-feedback or review invitation, including the advertised automated post-appointment workflow. Exclude clinical questionnaires and medical content. Scope: Does not establish a manual resend button, recipient-list controls, delivery channels, or automation settings. Confirmation applies before sending or enabling delivery.
MCP callaestheticspro_write → send_client_review_request
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-review-requests
| Name | Type | Description |
|---|---|---|
| client string required | string | Client who recently visited. |
{
"client": "client"
} {
"example": true,
"result": "Saved after confirmation"
} Find, add, segment and assign leads.
Find a lead through AP Toolbar search.
MCP callaestheticspro_read → search_leads
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/leads/search
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Read leads in the centralized lead database.
MCP callaestheticspro_read → read_lead_list
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/lead-lists/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Create a lead contact.
MCP callaestheticspro_write → create_lead
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/leads
| Name | Type | Description |
|---|---|---|
| name string required | string | Lead name. |
| phone string | string | Phone number. |
| email string | string | Email address. |
| interest string | string | Service the lead asked about. |
{
"name": "Jane Doe"
} {
"example": true,
"result": "Saved"
} Select lead audiences by documented criteria for contact outreach. Scope: Retain audience selection, not creation or persistence of saved segments.
MCP callaestheticspro_read → segment_leads
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/leads/segment
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Assign a lead for follow-up. Assignment notification behavior is not documented. Scope: Assignment notifications and reassignment controls remain unverified.
MCP callaestheticspro_write → assign_lead
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/lead/assign
| Name | Type | Description |
|---|---|---|
| lead string required | string | Lead to assign. |
| staff_member string required | string | Team member who follows up. |
{
"lead": "lead",
"staff_member": "staff member"
} {
"example": true,
"result": "Saved after confirmation"
} Filter nonclinical contact demographics. Scope: Only nonclinical contact-demographic filters are in scope.
MCP callaestheticspro_read → read_client_lead_demographics_report
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/client-lead-demographics-reports/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Transfer a filtered client or lead list to Constant Contact. This does not itself establish sending a campaign. Scope: No campaign sending or self-service connection management is inferred.
MCP callaestheticspro_write → export_contacts_to_constant_contact
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/contacts-to-constant-contact/export
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Transfer a filtered client or lead list to Constant Contact. This does not itself establish sending a campaign. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Templates, recipient lists, blasts, touchpoints and client journeys.
Read upcoming direct outreach and active client journeys. Social and financial information are excluded. Scope: Direct-contact content only; exclude social and financial sections.
MCP callaestheticspro_read → read_marketing_dashboard
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/marketing-dashboards/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Review scheduled email and SMS outreach before delivery.
MCP callaestheticspro_read → read_outreach_calendar
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/outreach-calendars/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Draft reusable email content.
MCP callaestheticspro_write → create_email_template
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/email-templates
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Draft reusable email content. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Draft reusable text-message content.
MCP callaestheticspro_write → create_sms_template
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/sms-templates
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Draft reusable text-message content. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Generate email and SMS campaign drafts from a goal or promotion; no publication or sending. Scope: Email and SMS drafts only; no sending or social publication.
MCP callaestheticspro_write → draft_outreach_campaign_with_ai
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/outreach-campaign-with-ai/draft
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Generate email and SMS campaign drafts from a goal or promotion; no publication or sending. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Adjust draft audience, tone, offer, and timing.
MCP callaestheticspro_write → customize_outreach_campaign
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/outreach-campaign/customize
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Adjust draft audience, tone, offer, and timing. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Prepare SMS outreach recipients.
MCP callaestheticspro_write → create_sms_recipient_list
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/sms-recipient-lists
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Prepare SMS outreach recipients. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Send bulk client texts through the Twilio-backed integration. The training index states that Twilio setup requires contacting the client success manager. Scope: Availability and setup depend on the enabled messaging service.
MCP callaestheticspro_write → send_sms_blast
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/sms-blasts
| Name | Type | Description |
|---|---|---|
| list string required | string | Text recipient list. |
| message string required | string | Text to send. |
{
"list": "list",
"message": "message"
} {
"example": true,
"result": "Saved after confirmation"
} Prepare email outreach recipients.
MCP callaestheticspro_write → create_email_recipient_list
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/email-recipient-lists
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Prepare email outreach recipients. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Queue email delivery to a selected list.
MCP callaestheticspro_write → schedule_email_blast
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/email-blast/schedule
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Queue email delivery to a selected list. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Enable event-triggered client emails. Scope: Exclude clinical and invoice-triggered operations.
MCP callaestheticspro_write → configure_touchpoint_automation
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/touchpoint-automation/configure
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Enable event-triggered client emails. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Create an AI-assisted direct-contact journey without activating delivery. Scope: Draft only; exclude clinical triggers and delivery.
MCP callaestheticspro_write → draft_client_journey
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-journey/draft
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Create an AI-assisted direct-contact journey without activating delivery. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved"
} Customize journey triggers, timing, conditions, email, and SMS. Scope: Retain nonclinical contact and scheduling triggers only.
MCP callaestheticspro_write → configure_client_journey
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-journey/configure
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Customize journey triggers, timing, conditions, email, and SMS. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Activate automated client outreach, including documented welcome, birthday, re-engagement, and rebooking sequences. Scope: A capability-level activation claim, not verification of the exact activation control.
MCP callaestheticspro_write → activate_client_journey
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/client-journey/activate
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Activate automated client outreach, including documented welcome, birthday, re-engagement, and rebooking sequences. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Move scheduled direct outreach when availability or campaign timing changes. Scope: Exact move controls and already-queued delivery behavior are unverified.
MCP callaestheticspro_write → reschedule_outreach
REST endpointPOST https://cotlet.dev/api/v1/aestheticspro/outreach/reschedule
| Name | Type | Description |
|---|---|---|
| record string required | string | Record or setting selected in your account. |
| fields object required | object | Move scheduled direct outreach when availability or campaign timing changes. |
{
"record": "record",
"fields": "fields"
} {
"example": true,
"result": "Saved after confirmation"
} Read direct-communication engagement and campaign performance. Scope: Exclude social analytics, financial metrics, and unsupported individual metrics.
MCP callaestheticspro_read → read_email_sms_engagement
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/email-sms-engagements/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Appointment information only, no financial reports.
Read appointment reporting, including location-filtered views; exclude financial and clinical reporting. Scope: Appointment information only; exclude financial, clinical, and inventory reports.
MCP callaestheticspro_read → read_appointment_reports
REST endpointGET https://cotlet.dev/api/v1/aestheticspro/appointment-reports/read
| Name | Type | Description |
|---|---|---|
| filter string | string | Client, lead, provider, date range or status to review. |
{
"example": true,
"result": "Records for review"
} Your signed-in AestheticsPro profile, AES-256-GCM encrypted, in Finland. No password.
The 60 AestheticsPro tools, never the session cookie.
The calendar, client contact details, leads and outreach your AestheticsPro user can open. The tools stop at scheduling and contact data.
Charts, treatment notes, before and after photos, consent forms, prescriptions, invoices, payments and inventory. AP Payments and your password stay with you.
You sign in again yourself, in the same Cloud Browser.
Disable for agents, reset the browser, or change your AestheticsPro password.
Cotlet never types your password: you sign in yourself, and the agent only uses the session. Our site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results).
Cotlet watches the apps it serves and updates the server when AestheticsPro changes its calendar, client or marketing screens.
New AestheticsPro scheduling and contact features become available to your agent.
Your AestheticsPro user and role determine which providers, clients and leads it sees.
Cotlet never sees or stores your password. If AestheticsPro signs you out, open your Cloud Browser with one click from the Cotlet console and sign in again.
| Action | Undo |
|---|---|
| Book an appointment | Move it with the reschedule tool or in AestheticsPro |
| Move an appointment | Move it back the same way |
| Add or assign a lead | Reassign it in AestheticsPro |
| Send a client text | A sent text cannot be recalled |
| Send an SMS blast | Sent messages cannot be recalled |
Tools marked Asks first wait for your approval by default; you can switch that off per tool. Unmarked tools run at once.
{
"name": "create_appointment",
"arguments": {
"client": "Example client",
"service": "Filler consultation",
"provider": "Example injector",
"starts_at": "2026-11-19T14:00",
"room": "Treatment room 2"
}
} curl -X POST https://cotlet.dev/api/v1/aestheticspro/appointments \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"client":"Example client","service":"Filler consultation","provider":"Example injector","starts_at":"2026-11-19T14:00","room":"Treatment room 2"}' {
"appointment": "Booked for review",
"calendar": "Example injector, Thursday 2:00 PM"
} A cron job or n8n flow can call the same tools over REST at /api/v1/aestheticspro with the same key and price, in JSON. Failed calls are free. Each tool row above shows its REST path.
About $21 a monthfor a two-injector med spa booking about 15 appointments a week, over four weeks, 3,560 credits. Your AestheticsPro plan stays as it is.
| Job | Calls | Credits |
|---|---|---|
| Check the next day's calendar on 22 workdays | 1 × 22 | 220 |
| Book 15 requested appointments a week | 1 × 60 | 600 |
| Move 4 appointments a week | 1 × 16 | 160 |
| Read and answer 10 scheduling texts a week | 2 × 40 | 800 |
| Add and assign 3 new leads a week | 2 × 12 | 240 |
| Review the appointment report each week | 1 × 4 | 40 |
| Cloud Browser, 30 days | 1,500 | |
| Total | 3,560 |
The $29 pack covers a typical month for most owners.
Illustrative consumption at the smallest credit pack rate, not a subscription or measured usage. Buy credit packs separately; extra calls add usage.
| Credits | Price, one time | Calls at 10 credits | Per 1,000 credits |
|---|---|---|---|
| 5,000 | $29 | 500 | $5.80 |
| 15,000 | $79 | 1,500 | $5.27 |
| 32,000 | $149 | 3,200 | $4.66 |
| 60,000 | $249 | 6,000 | $4.15 |
Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.
| Option | What it does | Where it stops |
|---|---|---|
| AestheticsPro custom API | Custom integration work on the $350 a month Enterprise plan | No public docs or self-serve key; not on smaller plans |
| Webhooks | Send real-time events from AestheticsPro to your systems | Outbound only; does not book or change appointments |
| Kai | Drafts client messages inside AestheticsPro | Built into the app; not reachable from ChatGPT or Claude |
Cotlet works on your AestheticsPro plan through your own sign-in and covers the calendar, client contact, leads and outreach.
Take Group sp. z o.o. runs Cotlet. It is a software company registered in Poland, EU (VAT PL6342984273), in business since 2019, led by its founders Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the AestheticsPro tools go to contact@cotlet.dev.
Start a free Cotlet trial, open AestheticsPro in your Cloud Browser and sign in at www.aestheticspro.com/Login with your own AestheticsPro user. Your agent then gets the 60 AestheticsPro tools.
Sign up at cotlet.dev, log in to AestheticsPro once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your AestheticsPro account through Cotlet, in their phone apps too.
ChatGPT and Claude book and move appointments on the AestheticsPro calendar, text clients about their visits, add and assign new leads and prepare email and SMS outreach. The tools cover scheduling and client contact only.
No official AestheticsPro MCP server was found on AestheticsPro's site, integrations page or help pages, and no AestheticsPro listing was verified in the ChatGPT apps or Claude connectors directories (checked 11 Nov 2026). Kai, AestheticsPro's own AI, drafts messages inside the app. Cotlet is an independent MCP server for ChatGPT, Claude and other agents in your signed-in AestheticsPro account.
ChatGPT books the client, service, provider and time you give it on your AestheticsPro calendar, after you approve the booking. Confirmations and reminders then follow your AestheticsPro settings.
ChatGPT moves an existing AestheticsPro appointment to the new time, provider or room you choose, after you approve the change.
ChatGPT reads a client's AestheticsPro text thread and sends the scheduling or contact reply you approve. Clinical questions and attachments stay with your team.
ChatGPT creates the lead from the name and contact details you give it and assigns it to the staff member you pick in AestheticsPro, after you approve the assignment.
ChatGPT builds the recipient list and message you describe and sends the SMS blast after you approve it, when your AestheticsPro account has text messaging enabled.
No. Cotlet's AestheticsPro tools cover the calendar, client contact details, leads and outreach. Charts, treatment notes, photos, consent forms and invoices stay outside them.
AestheticsPro offers "Custom API solutions" only as custom work on its $350 a month Enterprise plan and publishes no public API documentation or self-serve key page (checked 11 Nov 2026). Its outbound webhooks send practice data to other tools. Cotlet works on any AestheticsPro plan through your own sign-in.
Only in how it is called. Both carry the same 60 tools, inputs, answers, API key and price. Agents use MCP; scripts and HTTP steps use REST.
No. Cotlet is independent and not affiliated with AestheticsPro.
Free 7-day trial with 2,000 credits, no card needed.
May we use Google Analytics to see which pages help people? It sets cookies only if you accept. No ads, and we never sell data. Cookie policy