[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Boulevard API and MCP server: Let your AI agent run the Boulevard front desk.

> Boulevard has GraphQL Admin and Client APIs and no MCP server, and its Support Center says Enterprise customers have API access (checked 31 Oct 2026). Below Enterprise there is no API key to get. Cotlet runs 15 Boulevard tools hosted, over MCP for agents and REST for scripts, in your own dashboard login on any plan.

Appointments, waitlist, clients and reports for your Boulevard salon or spa. Use it in ChatGPT, Claude or any AI agent over MCP, or in n8n, Make and scripts over REST.

[MCP setup](https://cotlet.dev/integrations/boulevard-api-mcp-server.md#connect)
[REST API guide](https://cotlet.dev/integrations/boulevard-api-mcp-server.md#rest-api)

- Free 7-day trial, no card
- Unofficial, not affiliated with Boulevard
- Page: https://cotlet.dev/integrations/boulevard-api-mcp-server

## What can you automate in Boulevard?

- Book requests from texts and DMs
- Fill cancellations from the waitlist
- Move clients when a provider is out
- Monday sales and cancellations
- Save formulas and allergies as notes
- Morning brief with client alerts

## Does Boulevard have an MCP server or an API?

- Enterprise customers may build a custom app or hire a developer, and install it with an Application ID. Premier and Enterprise admins can turn integrations on and off.
- Boulevard's Zapier app needs a Premier, Prestige or Enterprise plan, an Admin user and a Zapier account. Its examples tag clients, send data to Klaviyo, set time blocks and confirm by text.
- AI Receptionist, in beta, answers inbound calls so callers can book, reschedule or cancel. It needs a Boulevard phone number, and from 1 Dec 2026 costs $125 a location for 200 minutes. Your own agent cannot give it work.

| What you need | Admin API | Zapier | AI Receptionist | Cotlet |
|---|---|---|---|---|
| Plan you need | Enterprise | Premier or higher | A Boulevard phone number | Any plan |
| Your own AI agent can use it | If a developer builds it | Through Zapier steps | No | Yes, any MCP client |
| Book, move and cancel for you | With custom code | Only what the Zapier app lists | For callers only | Yes, after your OK |
| Read client notes and alerts | Not confirmed | Not confirmed | No | Yes, with your permission |
| Dashboard reports | Not confirmed | Not confirmed | No | Yes, by date range |
| What it costs on top | Enterprise is a custom plan | Zapier tasks | $125 a location from Dec | Credits per call |

Checked 31 Oct 2026. Sources: [Boulevard Developer Portal](https://developers.joinblvd.com/), [Support Center: Connect Custom and Public Apps](https://support.boulevard.io/en/articles/6265963-connect-custom-and-public-apps-to-boulevard), [Support Center: Zapier Integration](https://support.boulevard.io/en/articles/5941545-zapier-integration), [Support Center: AI Receptionist Beta Pricing](https://support.boulevard.io/en/articles/16102622-ai-receptionist-beta-pricing)

## How does Cotlet connect to Boulevard?

1. **Sign in to Boulevard.** Use your own account in its Cotlet Cloud Browser.
2. **Choose MCP or REST.** Connect your agent or create a Cotlet API key.
3. **Run your workflow.** Ask your agent or send an HTTP request.

We never keep your Boulevard password, and no booking, move, cancellation or waitlist booking is saved before you approve it.

## Connect Boulevard to your agent or workflow

Use MCP with your AI agent, or HTTP requests in n8n, Make, Zapier and scripts. Follow the MCP setup below or jump to the REST guide.

1. **Log in to Boulevard as yourself.** Make a Cotlet account, open Boulevard in its Cloud Browser, log in with your own Boulevard user, then press Enable for agents.
2. **Add the Cotlet address.** Paste https://cotlet.dev/mcp/v1 into your agent as an MCP server or connector.
3. **Approve the connection.** Chat apps send you to a Cotlet sign-in. Code editors, n8n and scripts take an API key from the console.

One address, `https://cotlet.dev/mcp/v1`, carries every app on your Cotlet account, Boulevard too. Enable Boulevard after the agent is connected and you need to refresh the connector before its tools show up.

Claude:

```
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"
```

ChatGPT:

```
Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth
```

Cursor:

```
// ~/.cursor/mcp.json
{
  "mcpServers": {
    "cotlet": {
      "url": "https://cotlet.dev/mcp/v1",
      "headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
    }
  }
}
```

Codex:

```
# ~/.codex/config.toml
[mcp_servers.cotlet]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY"
```

n8n:

```
MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: boulevard_read
```

Make, Zapier:

```
Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: boulevard_write
```

## How to use the Boulevard REST API

### Create your Cotlet API key

Create a Cotlet API key with access to Boulevard and its read operations. Store it as `COTLET_API_KEY` in your environment or automation platform's credential store.

Connect Boulevard in Cotlet and enable it for agents. Account access: Your own Boulevard dashboard user (an Admin, or a staff role with the permission for the task: client notes and reports have their own).

### Make your first Boulevard API request

REST:

```
curl "https://cotlet.dev/api/v1/boulevard/appointments?location_id=loc_1&from=2026-11-02&to=2026-11-06" \
  -H "Authorization: Bearer $COTLET_API_KEY"
```

### Read appointments and apply the operation limits

A successful REST call puts the tool output in `result`. This illustrative response excerpt omits call IDs, messages and credit details.

Illustrative response excerpt:

```
{
  "status": "success",
  "app": "boulevard",
  "tool": "list_appointments",
  "result": {
    "appointments": [
      {
        "appointment_id": "ap_903114",
        "client": {
          "client_id": "cl_48213",
          "name": "Jamie Doe"
        },
        "services": [
          {
            "name": "Signature Facial"
          }
        ],
        "provider": {
          "staff_id": "st_207",
          "name": "Alex"
        },
        "start": "2026-11-02T14:00:00-08:00",
        "end": "2026-11-02T15:00:00-08:00",
        "state": "confirmed"
      }
    ]
  }
}
```

Returns the appointments in a date range in start order, each with client, services, provider, start, end and state.

Canceled appointments are not on the calendar. Read them with `list_cancelled_appointments`.

Replace `loc_1` with a location_id from `list_locations`; multi-location accounts need the correct location selection.

Keep the same selection when continuing a list. Compare changed record values as well as identifiers when refreshing your destination.

### Boulevard workflows for agents and automations

| Tool | Connect through | Example workflow |
|---|---|---|
| n8n | HTTP Request | List the waitlist entries with client, requested provider and preferred time. Use `list_waitlist` in your configured business report. |
| Make | HTTP > Make a request | Read the Daily Summary report for a date range. Use `get_report` in your configured business report. |
| Python or Node.js | REST API | List the canceled appointments to find slots that opened up. Use `list_cancelled_appointments` in your configured business report. |

Send `Authorization: Bearer <your Cotlet API key>` in request headers. You configure the schedule, destination and record comparisons.

Cotlet reads Boulevard; your workflow steps write to your chosen destination. These HTTP workflows do not require a native Cotlet connector or a prebuilt template.

Python and Node.js can use the same HTTP requests without an AI agent. Keep access keys in credentials, outside shared workflow exports.

The [API and MCP reference](https://cotlet.dev/integrations/boulevard-api-mcp-server.md#tools) lists operations and inputs. The [REST API guide](https://cotlet.dev/docs/api.md) explains authentication, errors and approvals.

## Boulevard API endpoints and MCP tools

### Locations and calendar

Each location has its own calendar and waitlist. Canceled appointments leave the calendar, so they have their own list.

- **List locations** (`list_locations`, read): Your business locations with name and address.
- **List appointments** (`list_appointments`, read): Appointments on the calendar for a day or week with client, services, provider and status.
- **Get appointment** (`get_appointment`, read): One appointment with its services, notes and the Appointment Updates history.
- **List cancelled appointments** (`list_cancelled_appointments`, read): The Recent Cancellations list: canceled appointments with client, service and reason.

### Booking and changes

A booking takes the time off online booking. A move can notify the client or not, and a multi-service appointment stays on one day.

- **Book appointment** (`book_appointment`, write, asks first): Book one or more services for a client with a provider.
- **Reschedule appointment** (`reschedule_appointment`, write, asks first): Move an appointment to a new time, day or provider.
- **Cancel appointment** (`cancel_appointment`, write, asks first): Cancel an appointment with one of the five Boulevard reasons.
- **Restore cancelled appointment** (`restore_cancelled_appointment`, write, asks first): Undo a cancellation from the Cancelled Appointments List.

### Waitlist

Online entries are first-available requests and ignore closures and the requested provider, so the agent checks the day before it books.

- **List waitlist** (`list_waitlist`, read): Waitlist entries with client, phone, requested provider, services and preferred time.
- **Book from waitlist** (`book_from_waitlist`, write, asks first): Book a waitlist entry into an open time.

### Clients and notes

Notes, allergies and the scheduling alert are internal. Reading and writing them follow your Boulevard permissions.

- **Find client** (`find_client`, read): Search clients by name, phone or email.
- **Get client profile** (`get_client_profile`, read): A client profile: visit metrics, scheduling alert, client notes and allergies.
- **Add client note** (`add_client_note`, write): Add a private note or an allergy to a client profile.
- **Set scheduling alert** (`set_scheduling_alert`, write): Set the one Scheduling Alert on a client profile.

### Reports

Daily Summary, Appointments and Client Waitlist, if the new reporting experience has reached your account and you have the permission.

- **Get report** (`get_report`, read): One of the dashboard reports for a date range, as rows.

Inputs, REST path and example response of every tool: https://cotlet.dev/integrations/boulevard-api-mcp-server#tools

## Who can see my Boulevard session, and how do I revoke it?

- **What we store.** Your logged-in Boulevard profile, AES-256-GCM encrypted, in Finland. Never the password.
- **What your agent gets.** 15 Boulevard tools. No cookie, no login.
- **What the session sees.** What your Boulevard user may see: client notes and reports only with their permissions.
- **What no tool touches.** Checkout, cards on file, cancellation fees, refunds, memberships, payroll and account settings.
- **If Boulevard asks for a code.** You type it in yourself. We never do.
- **How to cut access.** Disable for agents, reset the browser or delete the key. The next call fails.

Boulevard sells a med spa bundle with HIPAA-ready tools. Cotlet signs no BAA and makes no HIPAA claim, and client notes and allergies can hold health details, so a med spa decides whether to enable get_client_profile. The Cotlet site has A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory ([live results](https://cotlet.dev/security.md)); we have no SOC 2 report or third-party pentest yet.

## Is it against Boulevard's terms? Account safety

Boulevard's terms of service sit behind a Cloudflare check that blocked our fetch on 31 Oct 2026, so we quote nothing from them and make no claim about what they allow. An AI agent working in your login is automation of a dashboard, and Boulevard's own route for automation is the Enterprise API. Read the agreement your business signed, then decide. In our searches we found no public case of a salon losing Boulevard over automation (31 Oct 2026), which is not proof that none exists.

How we keep your account looking like you:

- Your own Boulevard user, typed in by you, never shared
- One Cloud Browser with a steady IP and cookies, like the desk computer
- Bookings, moves, cancellations and waitlist bookings wait for your OK
- No tool touches checkout, cards, cancellation fees or settings
- If Boulevard objects, we pause the Boulevard tools for everyone within 24 h

> When a whole day is moved, let the agent go one appointment at a time, so each client notice matches the final time.

## What happens when Boulevard changes?

- **12 h** between tests of the Boulevard calendar, waitlist and client reads
- **24 h** between tests of bookings and moves a client would hear about
- **$0** for a call to a Boulevard tool paused for a fix

Boulevard keeps changing its dashboard: a new reporting experience is rolling out to accounts over time, and its API moves to version 2026-06 for new apps from 17 Aug 2026. When a screen moves, we repair the tool and the tool name stays the same. [status.cotlet.dev](https://status.cotlet.dev) checks the site, console and API every 3 minutes.

## Approvals, undo and mistakes

1. **Matches the sender.** By the phone or email the text came from, then by name. Two matches stop the run.
2. **Reads the profile.** The scheduling alert, allergies and notes come back with the match and show next to the booking.
3. **Waits for your OK.** The booking waits in your Cotlet console, with the alert shown next to it.
4. **Reports the result.** Appointment ID, provider, start and end, and the request saved in the appointment note.

| Action | Undo |
|---|---|
| Book an appointment | Cancel it with the reason mistake or error; the client is not charged |
| Reschedule an appointment | Move it back; with notify_client on, the client hears twice |
| Cancel an appointment | Restore it from the Cancelled Appointments List with restore_cancelled_appointment |
| Book from the waitlist | Cancel the appointment; the entry leaves the list and does not return by itself |
| Add a client note | Delete it in the client profile; Boulevard asks to confirm and a delete cannot be undone |
| Set a scheduling alert | Edit the text again; a profile holds one alert |

5 of the 7 write tools ask first. add_client_note and set_scheduling_alert run at once, because they are internal and reach nobody. Reads run at once too. For a scheduled run you can switch the wait off per tool.

> Boulevard charges a cancellation fee only when you choose to, and only for a late cancellation or a no-show. cancel_appointment charges none; the fee stays in the dashboard.

MCP call:

```
{
  "name": "book_appointment",
  "arguments": {
    "client_id": "cl_48213",
    "location_id": "loc_1",
    "services": [
      "Signature Facial"
    ],
    "staff_id": "st_207",
    "start": "2026-11-06T14:00:00-08:00"
  }
}
```

REST:

```
curl -X POST https://cotlet.dev/api/v1/boulevard/clients/cl_48213/appointments \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"location_id":"loc_1","services":["Signature Facial"],"staff_id":"st_207","start":"2026-11-06T14:00:00-08:00"}'
```

Response:

```
{
  "appointment_id": "ap_903114",
  "status": "booked",
  "client": {
    "client_id": "cl_48213",
    "name": "Jamie Doe"
  },
  "services": [
    {
      "name": "Signature Facial"
    }
  ],
  "provider": {
    "staff_id": "st_207",
    "name": "Alex"
  },
  "start": "2026-11-06T14:00:00-08:00",
  "end": "2026-11-06T15:00:00-08:00"
}
```

A cron job, a sheet or the shared booking inbox can call the same tools over REST at `/api/v1/boulevard`, with one key and one price. A user without report access gets an error from get_report, and a failed call costs nothing. Each tool row above shows its REST path.

## How much does the Boulevard MCP server cost?

**About $46 a month** for one salon or spa location with about 8 providers, 7,860 credits. You keep paying Boulevard for your plan.

| Job | Calls | Credits |
|---|---|---|
| Book requests from texts and DMs | 4 × 60 | 2,400 |
| Morning brief with alerts and allergies | 8 × 22 | 1,760 |
| Fill cancellations from the waitlist | 4 × 22 | 880 |
| Formula or allergy note after a visit | 2 × 50 | 1,000 |
| Monday sales and cancellations report | 3 × 4 | 120 |
| A provider out, 7 clients moved | 10 × 2 | 200 |
| Cloud Browser, 30 days |  | 1,500 |
| Total |  | 7,860 |

- Free 7-day trial, no card
- 10 credits per successful call, MCP or REST
- 50 credits a day for the Cloud Browser
- No Enterprise plan, API key or phone number needed

The month is our example: one location, about 60 booking requests and 50 notes, a morning brief and a cancellation sweep each weekday, four Monday reports and two days with a provider out. Boulevard publishes no typical size, and its plan prices are not on a page we could read, so we state none. Dollars at the $29 pack rate.

## Boulevard MCP server on GitHub, Zapier or hosted: which to use

| Option | What it does | Where it stops |
|---|---|---|
| [austinntowns/blvd-mcp](https://github.com/austinntowns/blvd-mcp) | An MCP server for locations, staff, shift utilization, calendar blocks, appointment queries and turning services on and off. 0 stars, last push 27 Mar 2026. | No license, no books or moves for clients, and it needs an Admin API key, so Enterprise. |
| Boulevard's Zapier app | Triggers and actions for Premier, Prestige and Enterprise, run by an Admin user. | Built from the actions the app lists; your own agent has no way in. |
| Boulevard AI Receptionist | Answers inbound calls and books, reschedules or cancels for the caller. Free minutes to 30 Nov 2026, then $125 a location for 200 minutes. | Works for callers, not for your own requests, and needs a Boulevard phone number. |

If calls go unanswered, the AI Receptionist is Boulevard's own answer. If you are on Enterprise and have a developer, the Admin API is the official route. If your own agent should book, fill the waitlist, write notes and pull reports on a plan below Enterprise, Cotlet does that hosted.

## Who runs Cotlet

Cotlet belongs to Take Group sp. z o.o., a software company registered in Poland, EU (VAT PL6342984273) and working since 2019. Its founders are Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the Boulevard tools go to contact@cotlet.dev.

## Boulevard API and MCP: questions

### How do I get access?

Sign up free at https://cotlet.dev, open Boulevard under Integrations in the console and log in to Boulevard in its Cloud Browser. The trial starts with your first app and asks for no card.

### How do I connect Boulevard to ChatGPT or Claude?

Sign up at cotlet.dev, log in to Boulevard 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 Boulevard account through Cotlet, in their phone apps too.

### What can ChatGPT do in Boulevard?

With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in Boulevard: reschedule appointments when a provider is out; fill cancellations from the waitlist; book an appointment from a text or DM. You ask in plain words, and anything that reaches other people waits for your OK first.

### Is there an official ChatGPT or Claude app for Boulevard?

No. Boulevard has no ChatGPT or Claude connector of its own (checked 8 Nov 2026). Cotlet is an independent one that works in ChatGPT, Claude, Cursor and any MCP client, on your signed-in account.

### Can ChatGPT book an appointment in Boulevard?

Yes, with Cotlet. ChatGPT finds the client, checks the provider's day and books the appointment in your Boulevard account. Booking waits for your OK by default, which you can switch off per tool.

### Can ChatGPT fill cancellations from the waitlist in Boulevard?

Yes, with Cotlet. ChatGPT checks the waitlist against the cancelled appointments and books a waiting client into the open slot. Each booking waits for your OK by default.

### Do I need the Enterprise plan or a Boulevard API key?

No. Cotlet works in your own Boulevard dashboard login on any plan. Boulevard gives its GraphQL APIs only to Enterprise customers, and its Zapier app needs Premier, Prestige or Enterprise plus an Admin user.

### Which Boulevard permissions does the agent need?

The ones your own user has. Reading client notes needs View Client Notes and adding one needs Create and Modify Client Notes. The reports need the matching Data & Reporting permission, and the new reporting experience reaches accounts over time.

### Does the agent take payments or check clients out?

No. No tool opens checkout, charges a card, refunds or adds a cancellation fee. Those stay at the front desk.

### Is the MCP server different from the REST API?

Only the way in differs. Both carry the same 15 tools, inputs and answers, with one API key and one price. Agents use MCP; scripts and sheets use REST.

### Is Cotlet affiliated with Boulevard?

No. Cotlet is independent and not affiliated with Boulevard.

### Can I use the Boulevard API without an AI agent?

Yes. Call Cotlet's REST API from a script or an HTTP step in n8n, Make or Zapier with your Cotlet key. MCP is the alternative for AI agents; you do not need to connect an agent to use REST.

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet.dev is built by Bart Krawczyk and Jake Slugocki, the founders of Take Group sp. z o.o., ul. Wincentego Janasa 4, 40-855 Katowice, Poland. KRS 0000871398, NIP 6342984273, VAT EU: PL6342984273. [About us](https://cotlet.dev/about.md)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.
