Skip to main content
Glama
@striderlabs/mcp-opentable

@striderlabs/mcp-opentable

@striderlabs/mcp-opentable

Book restaurant reservations via OpenTable using AI agents

npm MCP Registry Claude Desktop License: MIT

Part of Strider Labs — action execution for personal AI agents.

Get Started in 2 Minutes

For Claude Desktop Users

  1. Add this to your Claude Desktop config:

{
  "mcpServers": {
    "opentable": {
      "command": "npx",
      "args": ["-y", "@striderlabs/mcp-opentable"]
    }
  }
}
  1. Restart Claude.

  2. Tell Claude: "Book a table for 4 at an Italian restaurant for 7 PM tonight"

Your agent can now book reservations. That's it.


Related MCP server: opentable-mcp

Installation (NPM)

npm install @striderlabs/mcp-opentable

Or with npx directly:

npx @striderlabs/mcp-opentable

Features

  • 🔍 Search restaurants by cuisine, location, and rating

  • ⏰ Check availability for specific times and party sizes

  • 📅 Make reservations with one-click confirmation

  • 📝 View booking history and manage reservations

  • 🏷️ Filter by price, cuisine, and dining style

  • 🔐 Persistent sessions - stay logged in across restarts

  • 🔄 Automatic MFA - handles multi-factor authentication

  • 📱 Per-user credentials - encrypted session storage

Tested & Compatible

Component

Version

Status

MCP SDK

^1.0.0

✅

Node.js

18+

✅

Claude Desktop

Latest

✅

Claude (API)

claude-3.5-sonnet+

✅

Anthropic SDK

^0.20+

✅

Metrics

  • Weekly downloads: 187 (Apr 10-17, 2026) — Top restaurant connector (+467% growth)

  • Status: ✅ Live in production

  • Reliability: 85%+ task completion rate

  • Discovery: npm, Claude Plugins, mcpservers.org, ClawHub, PulseMCP

Available Elsewhere

How It Works

For Agents

Your agent can use these capabilities:

// Search for restaurants
restaurants = search_restaurants({
  location: "San Francisco, CA",
  cuisine: "Italian",
  price_range: "$$",
  date: "2026-04-15",
  party_size: 4,
  time: "19:00"
})

// Get detailed restaurant info
details = get_restaurant_details({
  restaurant_id: "ristorante-milano-sf"
})

// Check availability
availability = check_availability({
  restaurant_id: "ristorante-milano-sf",
  party_size: 4,
  date: "2026-04-15",
  time: "19:00"
})

// Make a reservation
booking = make_reservation({
  restaurant_id: "ristorante-milano-sf",
  party_size: 4,
  date: "2026-04-15",
  time: "19:00",
  special_requests: "Window seat if possible"
})

// View your reservations
reservations = get_my_reservations()

Session Management

  • Each user has encrypted, persistent credentials

  • Automatic OAuth token refresh

  • MFA handling (SMS/email)

  • Sessions survive agent restarts

Reliability

  • 85%+ task completion rate

  • Automated UI change detection (connectors update when OpenTable changes)

  • Fallback paths for failures

  • 24/7 monitoring + alerting

Configuration

Environment Variables

# Optional: Use a specific OpenTable account
OPENTABLE_EMAIL=your-email@example.com
OPENTABLE_PASSWORD=your-password  # Highly recommend using .env file

Self-Hosted

# Clone the repo
git clone https://github.com/striderlabsdev/mcp-opentable
cd mcp-opentable

# Install dependencies
npm install

# Start the server
npm start

# Your agent can now connect to localhost:3000

Architecture

How We Connect

This connector uses browser automation (Playwright) to interact with OpenTable, because OpenTable doesn't have a comprehensive public API for reservations. Here's why that's safe and reliable:

  • User-controlled: Your agent only accesses your own OpenTable account

  • Session-based: We store your login session securely, not your password

  • Change-aware: We detect OpenTable UI changes and alert immediately

  • Fingerprinting: We use realistic browser profiles to avoid bot detection

  • Rate-limited: We respect OpenTable's infrastructure with appropriate delays

Security

  • Credentials stored encrypted in your local .env or secure vault

  • Sessions isolated per user

  • No data sent to third parties

  • MIT Licensed — audit the code yourself

Support

Contributing

We welcome contributions! Areas of interest:

  • Bug reports and fixes

  • Feature requests (new filters, integrations, etc.)

  • Performance improvements

  • Documentation enhancements

See CONTRIBUTING.md for guidelines.

License

MIT — Free to use, modify, and distribute. See LICENSE for details.


Built by Strider Labs — Making AI agents actually useful.

GitHub | Website | Discord

Available Tools

9 tools
opentable_cancel_reservationA

Cancel an existing reservation. Set confirm=false to preview, confirm=true to actually cancel. This action cannot be undone.

Inputs: confirm (required), reservationId (required).

opentable_check_availabilityA

Check available reservation time slots for a restaurant on a specific date and party size.

Inputs: date (required), time (required), partySize (required), restaurantId (required).

opentable_get_reservationsA

List all upcoming reservations for the logged-in user. Requires authentication.

Inputs: no named parameters.

opentable_get_restaurantB

Get detailed information about a specific restaurant including description, address, hours, and features.

Inputs: restaurantId (required).

opentable_loginA

Get the OpenTable login URL and instructions for the user to authenticate. Use this when opentable_status returns not logged in.

Inputs: no named parameters.

opentable_logoutA

Clear the stored OpenTable session cookies. Use this to log out or reset the authentication state.

Inputs: no named parameters.

opentable_make_reservationA

Book a restaurant reservation on OpenTable. Set confirm=false to preview before booking, confirm=true to actually book. Requires the user to be logged in.

Inputs: date (required), time (required), confirm (required), partySize (required), +2 more.

opentable_statusA

Check if the user is logged in to OpenTable. Returns login status and instructions if not authenticated. Call this before any other OpenTable operations.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool targets a distinct concern: auth status/login/logout, restaurant search/details, availability checking, and reservation create/list/cancel. No two tools overlap in purpose, so an agent can easily select the right one.

    Naming Consistency5/5

    All tools use a consistent opentable_ prefix followed by clear verb_noun names (search, get_restaurant, check_availability, make_reservation, get_reservations, cancel_reservation). Even the auth tools (status, login, logout) follow the same verb style. The pattern is predictable and uniform.

    Tool Count5/5

    With 9 tools, the server is well-scoped for an OpenTable integration. Each tool serves a necessary function in the core workflow (auth, search, details, availability, reservation management), and none feel redundant or superficial.

    Completeness4/5

    The toolset covers the full reservation lifecycle: search, view details, check availability, book, list, and cancel. A minor gap is the lack of a modify/update reservation tool, but agents can work around this by canceling and rebooking. Overall, the surface is complete for the main domain.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    • OpenTable MCP server for ChatGPT, Claude and any AI agent: search restaurants with open tables, check availability, book a reservation, modify a reservation, cancel a reservation, list your reservations, read the reservation book and add guest notes and tags in your own OpenTable account. Cotlet works in the account through your Cloud Browser, a real Chrome where you sign in to OpenTable yourself; Cotlet does not store your password and you need no OpenTable API key. About the official OpenTable API: OpenTable has APIs only for approved partners (checked 27 Oct 2026). Booking, Sync, CRM, Directory and Reviews APIs need an application through the OpenTable partner program, and they work per restaurant, not on a diner account. Setup and FAQ: https://cotlet.dev/integrations/opentable-api-mcp-server

    • Resy MCP server for ChatGPT, Claude and any AI agent: search restaurants, check availability, book a reservation, list reservations, change a reservation, cancel a reservation, set a Notify alert and remove a Notify alert in your own Resy account. Cotlet works in the account through your Cloud Browser, a real Chrome where you sign in to Resy yourself; Cotlet does not store your password and you need no Resy API key. About the official Resy API: Resy has no public API (checked 27 Oct 2026). Its official Resy app runs only inside Claude and ChatGPT: in Claude it shows live availability and sends you to Resy to book, in ChatGPT it can also book a table. Setup and FAQ: https://cotlet.dev/integrations/resy-api-mcp-server

      https://cotlet.dev/mcp/v1/resy
    • Find Resy restaurants and request reservations through Scout; the user approves every booking.

      https://dinewithscout.com/mcp
    • ResDiary MCP server for ChatGPT, Claude and any AI agent: list bookings for a date, check open times, create a booking, move a booking, cancel a booking, read the W8LIST, add guest notes and set a customer type in your own ResDiary account. Cotlet works in the account through your Cloud Browser, a real Chrome where you sign in to ResDiary yourself; Cotlet does not store your password and you need no ResDiary API key. About the official ResDiary API: ResDiary has official APIs, but only for approved integrations (checked 31 Oct 2026). A venue or developer asks for access, states the purpose and passes certification, and the API licence then covers that one purpose. Setup and FAQ: https://cotlet.dev/integrations/resdiary-api-mcp-server

    Related MCP Servers

    • A
      license
      A
      quality
      A
      maintenance
      Manage OpenTable reservations via natural language — find slots, book, cancel, manage favorites, and read your dashboard using your own browser session.
      15
      652 npm
      1
      MIT
    • F
      license
      Not graded
      quality
      C
      maintenance
      Enables AI agents to manage restaurant reservations through typed MCP tools, including checking table availability, creating and canceling reservations, and listing the day's confirmed bookings.
      -