[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)

# Resy API and MCP server: Let your AI agent handle your Resy bookings.

> Resy has no public API (checked 27 Oct 2026). American Express runs an official Resy MCP app that only Claude and ChatGPT can connect to: it finds tables and, in ChatGPT, books one. Cotlet runs 11 Resy tools hosted, over MCP for agents and REST for scripts, including the ones the official app leaves out.

Read Resy reservations and venue availability with an agent or script. Use MCP or REST to prepare dining shortlists and a personal reservation brief.

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

- Free 7-day trial, no card
- Unofficial, not affiliated with Resy or American Express
- Page: https://cotlet.dev/integrations/resy-api-mcp-server

## What can you automate in Resy?

- Find open tables by date and party size
- Book the slot you pick, after your OK
- Move a reservation to another time
- Warn you before cancellation fees start
- Set Notify alerts for full restaurants
- Clear out old Notify alerts

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

- In Claude, the Resy app shows live availability and then sends you to the Resy app or website to finish the booking (American Express guide, launched 23 Apr 2026).
- In ChatGPT, since 10 Aug 2026, you can pick a time and confirm the reservation in the chat. Neither app lists, changes or cancels your reservations or sets Notify alerts.
- The Resy OS API is for restaurants' technology partners such as Toast and Square, by agreement with Resy. Zapier, Make and n8n have no Resy app.

| What you need | Resy in Claude | Resy in ChatGPT | Cotlet |
|---|---|---|---|
| Search tables with live availability | Yes, US | Yes, US | Yes |
| Book a table | Hands off to Resy | Yes | Yes, after your OK |
| See, change or cancel your reservations | No | No | Yes |
| Set or remove Notify alerts | In the Resy app | In the Resy app | Yes |
| Use from another agent, n8n or a script | Claude only | ChatGPT only | Yes |
| Allowed by Resy's terms | Yes, official | Yes, official | Not approved by Resy |

Checked 27 Oct 2026. Sources: [Resy newsroom: Resy restaurants in the U.S. are now discoverable in Claude](https://blog.resy.com/newsroom/resy-restaurants-claude-anthropic/), [Resy newsroom: Resy launches reservations in ChatGPT](https://blog.resy.com/newsroom/resy-launches-reservations-in-chatgpt/), [American Express: Find Resy restaurants in Claude (PDF)](https://www.americanexpress.com/content/dam/amex/en-us/credit-cards/benefits/resy/resy_mcp_app_claude.pdf), [Resy Help: change or cancel a reservation](https://helpdesk.resy.com/en_us/for-diners-change-or-cancel-a-reservation-H16wR9ZRq)

## How does Cotlet connect to Resy?

1. **Sign in to Resy.** 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 Resy password, and no table is booked, moved or cancelled until you approve it.

## Connect Resy 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 Resy in Cotlet.** Create a Cotlet account, sign in to Resy in its Cloud Browser and switch on Enable for agents.
2. **Add the server address.** Paste https://cotlet.dev/mcp/v1 into your agent as an MCP server or custom connector.
3. **Allow the connection.** Chat apps open a Cotlet sign-in. Code editors, n8n and scripts send an API key from the console.

Resy sits on the shared address `https://cotlet.dev/mcp/v1` with your other apps. You can keep Resy's own app in Claude or ChatGPT connected next to it; give the two different names so your agent knows which one to call.

Claude:

```
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect

Claude Code:
claude mcp add --transport http cotlet-resy \
  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-resy": {
      "url": "https://cotlet.dev/mcp/v1",
      "headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
    }
  }
}
```

Codex:

```
# ~/.codex/config.toml
[mcp_servers.cotlet-resy]
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: resy_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: resy_write
```

## How to use the Resy REST API

### Create your Cotlet API key

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

Sign in to Resy in its Cotlet Cloud Browser and enable the app for agents. Use your Resy diner account; some restaurants require a card on file for reservations.

### Make your first Resy API request

REST:

```
curl https://cotlet.dev/api/v1/resy/reservations \
  -H "Authorization: Bearer $COTLET_API_KEY"
```

### Read reservations and their policies

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": "resy",
  "tool": "list_reservations",
  "result": {
    "reservations": [
      {
        "reservation_id": "r_70412",
        "venue": "Trattoria Esempio",
        "date": "2026-11-14",
        "time": "19:00",
        "party_size": 4
      }
    ]
  }
}
```

Read `result.reservations` for your upcoming bookings, soonest first. Use the past status for previous reservations; this list has no cursor or limit input.

Use reservation IDs with `get_reservation` for cancellation deadlines, fees and currency. Tock bookings do not appear in this Resy list.

Availability reads reserve nothing and slots can disappear. The reporting workflows below do not book, cancel or change Notify requests.

### Resy workflows for agents and automations

| Tool | Connect through | Example workflow |
|---|---|---|
| n8n | HTTP Request | Read reservations and details into a personal dining calendar with cancellation deadlines and fees. |
| Make | HTTP > Make a request | Combine venue search, venue details and availability into a dated shortlist without reserving a table. |
| Python or Node.js | REST API | Read existing Notify requests into a review list without adding or changing alerts. |

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

Cotlet reads Resy; 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/resy-api-mcp-server.md#tools) lists operations and inputs. The [REST API guide](https://cotlet.dev/docs/api.md) explains authentication, errors and approvals.

## Resy API endpoints and MCP tools

### Restaurants and open tables

Read only. Each call reads Resy once; nothing repeats in a loop to catch a table. Restaurants that book through Tock show no times.

- **Search restaurants** (`search_venues`, read): Find Resy restaurants in a city by name, cuisine or neighborhood, with open times for a date and party size.
- **Get restaurant** (`get_venue`, read): Read one restaurant's Resy page: address, cuisine, price range, description and booking notes.
- **Get availability** (`get_availability`, read): List the bookable times at one restaurant for a date and party size, with each slot's table type and cancellation policy.

### Your reservations

Booking, moving and cancelling reach the restaurant, so all three wait for your OK. The restaurant's cancellation policy applies as it does in the app.

- **List reservations** (`list_reservations`, read): List your upcoming or past Resy reservations.
- **Get reservation** (`get_reservation`, read): Read one reservation with its address, table type, special request and cancellation policy.
- **Book reservation** (`book_reservation`, write, asks first): Book an open slot from get_availability for your Resy account.
- **Change reservation** (`change_reservation`, write, asks first): Move a reservation to another open slot at the same restaurant: date, time or party size.
- **Cancel reservation** (`cancel_reservation`, write, asks first): Cancel one of your reservations, showing any cancellation fee first.

### Notify alerts

Resy itself watches for the opening and alerts you; the tools only set and remove your place on the list.

- **List Notify alerts** (`list_notify`, read): List your active Notify alerts: restaurant, date, time range and party size.
- **Set Notify alert** (`add_notify`, write): Join a restaurant's Notify list for a date, time range and party size.
- **Remove Notify alert** (`remove_notify`, write): Take yourself off a restaurant's Notify list.

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

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

- **What we store.** Your logged-in Resy profile, encrypted with AES-256-GCM, in Finland. Not the password.
- **What your agent gets.** The 11 Resy tools. Never the cookie or your card.
- **What the session sees.** Your reservations, Notify list, profile and the card Resy keeps on file.
- **What no tool touches.** Your card, name, phone, email, password and the account itself.
- **If Resy asks to verify.** A new login can ask for a one-time code. You type it in, we never do.
- **How to cut access.** Disable for agents, reset the browser, or log out of Resy everywhere.

Our site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory ([live results](https://cotlet.dev/security.md)). There is no SOC 2 report or third-party pentest yet.

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

> When we identify behavior that violates the Resy Terms of Service, we disable user accounts and all associated reservations.
>
> [Resy Security Center](https://resy.com/security-center)

Resy's terms forbid using automated software to crawl its pages, and Resy told CNN on 23 Sep 2026 that it does not permit unapproved third-party bots or agents. That month it disabled at least two accounts whose AI agents scanned for open tables, one at about 200 requests an hour, and cancelled their upcoming reservations; both were restored later. Cotlet is not an agent Resy has approved. Using it is your decision, and the risk is to your Resy account.

How the tools stay close to a person:

- Your own Resy account, logged in by you
- One read per call, no loop that polls for a table
- Full restaurants go through Resy's own Notify list
- Bookings, changes and cancellations wait for your OK
- If Resy objects, we pause the Resy tools for everyone within 24 h

> Never point it at a restaurant's release minute. Both closed accounts were caught racing for hard tables.

## What happens when Resy changes?

- **12 h** between tests of the Resy search and reservation reads
- **$0** for a call to a Resy tool paused for repair

When Resy moves a button or renames a field, we fix it on our side and your prompts keep working. [status.cotlet.dev](https://status.cotlet.dev) watches the site, console and API every 3 minutes.

## Approvals, undo and mistakes

1. **Reads the options.** Open slots, table type and each slot's cancellation policy.
2. **Picks with you.** It shows the slots that match your time and party size.
3. **Waits for your OK.** The booking, change or cancellation shows up in your Cotlet console first.
4. **Reports back.** Restaurant, date, time, guests and the fee deadline.

| Action | Undo |
|---|---|
| Set a Notify alert | remove_notify, one call |
| Remove a Notify alert | add_notify sets it again |
| Book a table | cancel_reservation, free before the restaurant's deadline |
| Change a reservation | Change it again if the old slot is still open |
| Cancel a reservation | None. The table goes back to other diners |

3 of 11 tools ask first: book_reservation, change_reservation and cancel_reservation. Each reaches the restaurant, and a late cancellation can cost a fee per guest, which the approval shows. Notify alerts reach nobody, so they run at once. Switching the wait off is your choice, per tool.

> A cancelled table cannot be taken back. Read the restaurant name in the approval, not after.

MCP call:

```
{
  "name": "add_notify",
  "arguments": {
    "venue_id": "v_44102",
    "date": "2026-10-30",
    "time_from": "19:00",
    "time_to": "21:00",
    "party_size": 2
  }
}
```

REST:

```
curl -X POST https://cotlet.dev/api/v1/resy/venues/v_44102/notifies \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date":"2026-10-30","time_from":"19:00","time_to":"21:00","party_size":2}'
```

Tool output:

```
{
  "notify_id": "n_3301",
  "venue": "Torrisi",
  "date": "2026-10-30",
  "time_from": "19:00",
  "time_to": "21:00",
  "party_size": 2
}
```

A cron job or script calls the same tools over REST at `/api/v1/resy`, with the same key and price, for example a morning check of cancellation deadlines. A failed call costs nothing. The tools table lists the REST path of each tool.

## How much does the Resy MCP server cost?

**About $17 a month** for a diner who books about once a week, 2,870 credits. Resy itself is free for diners; restaurants' cancellation fees stay theirs.

| Job | Calls | Credits |
|---|---|---|
| Find and book a table | 4 × 4 | 160 |
| Notify alerts for a full restaurant | 6 × 2 | 120 |
| Move a reservation | 3 × 1 | 30 |
| Morning cancellation deadline check | 3 × 30 | 900 |
| Weekly Notify cleanup | 4 × 4 | 160 |
| Cloud Browser, 30 days |  | 1,500 |
| Total |  | 2,870 |

- Free 7-day trial, no card
- 10 credits per successful call, MCP or REST
- 50 credits a day for the Cloud Browser
- No Amex card or Resy plan needed

The month is our example: 4 bookings, Notify alerts for 2 full restaurants, 1 change, a deadline check every morning and a weekly Notify cleanup. Resy publishes no bookings-per-diner figure, so the volume is our assumption. The daily check is most of the calls; run it weekly and the month costs less. Dollars at the $29 pack rate.

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

| Option | What it does | Where it stops |
|---|---|---|
| [chrischall/resy-mcp](https://github.com/chrischall/resy-mcp) | Search, book, list and cancel reservations, favorites and Priority Notify through Resy's private web endpoints. In the MCP Registry. MIT, 2 stars, last push 25 Oct 2026. | Runs on your computer with a Resy token, your password or a browser extension. Its own README warns that Resy can ban accounts. |
| [Kirch2/covers](https://github.com/Kirch2/covers) | TypeScript CLI and MCP server: search, book, cancel and watch for openings. MIT, 6 stars, last push 16 Jul 2026. | Local only. Watching for openings by polling is what got accounts closed. |
| [jrklein343-svg/restaurant-mcp](https://github.com/jrklein343-svg/restaurant-mcp) | One MCP server for Resy and OpenTable reservations. 4 stars. | No license, last push 9 Feb 2026. |
| Hosted scraper marketplaces | Paid Resy endpoints for search and availability. | Not your account: they do not see or manage your reservations. |
| Resy in Claude and ChatGPT | Resy's own apps: search and availability, booking in ChatGPT. | Only in those two apps, and nothing after the booking. |

To find a table inside Claude or ChatGPT, Resy's own app is the safe choice, and it is free. Cotlet is for the jobs after the booking, and for agents, n8n and scripts outside those two apps. A GitHub server does the same for free if you keep it running and accept the same account risk.

## Who runs Cotlet

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

## Resy API and MCP: questions

### Can I use the Resy 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.

### How do I get access?

Make a free account at https://cotlet.dev, open Resy under Integrations in the console and log in to Resy in its Cloud Browser. The trial starts right away, with no card.

### Can Resy close my account for using an agent?

Resy says it disables accounts and their reservations when it sees behavior that breaks its Terms of Service, and that automated activity must not put excessive demand on its systems or stop other diners from booking (Resy Security Center). In September 2026 Resy told CNN it does not permit unapproved third-party agents, after it disabled an account whose agent checked one restaurant about 200 times an hour. Cotlet's tools read Resy once per call and use Resy's own Notify list for full restaurants instead of checking again and again. Read Resy's terms before you connect your account.

### Is Resy's own app in Claude or ChatGPT enough?

For finding a table, often yes. The Resy app in Claude shows live availability and sends you to Resy to book (American Express guide, April 2026), and the Resy app in ChatGPT can book in the chat (Resy newsroom, August 2026). Neither lists, changes or cancels your reservations or sets Notify alerts, and neither works in other agents, n8n or scripts.

### Who charges a cancellation fee?

The restaurant sets its own deadline and fee per guest, and the policy is in your confirmation email. Restaurants charge the fee themselves in Resy OS; for Global Dining Access bookings Resy charges eligible fees weekly (Resy Help: Cancellation fee charges; Global Dining Access cancellation policy FAQ). cancel_reservation shows the fee before you approve.

### Can it get me Priority Notify?

Only if your account already has it. Resy gives Priority Notify to eligible American Express Card Members with Global Dining Access (Resy Help: Notify). add_notify sets the same alert you would set in the app, so a card member's alert keeps its priority.

### Does it work outside the US?

It works with your own Resy account wherever Resy lists restaurants. Resy's official apps in Claude and ChatGPT cover US restaurants only (Resy newsroom, 2026).

### Does it see bookings I made on Tock?

No. Resy says reservations at restaurants that book through Tock are not in your Resy account, so list_reservations does not show them.

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

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

### Is Cotlet affiliated with Resy?

No. Cotlet is independent and not affiliated with Resy or American Express.

---

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.
