Strider Labs OpenTable MCP
MCP server for OpenTable - let AI agents make restaurant reservations and find availability
@striderlabs/mcp-opentable
Book restaurant reservations via OpenTable using AI agents
Part of Strider Labs — action execution for personal AI agents.
Get Started in 2 Minutes
For Claude Desktop Users
- Add this to your Claude Desktop config:
{
"mcpServers": {
"opentable": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-opentable"]
}
}
}
- Restart Claude.
- Tell Claude: "Book a table for 4 at an Italian restaurant for 7 PM tonight"
Your agent can now book reservations. That's it.
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
- npm: npmjs.com/@striderlabs/mcp-opentable
- Claude Plugins: Search "Strider Labs" in Claude
- mcpservers.org: Strider Labs OpenTable
- Full Strider Labs: github.com/striderlabsdev/striderlabs
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
[email protected]
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
.envor 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.
Related Servers
strava mcp
A Model Context Protocol (MCP) server that integrates Strava with Claude for Desktop, enabling AI-powered analysis of your fitness activities.
Tapo MCP
MCP server for discovering and controlling TP-Link Tapo smart home devices via AI Agents
humanMCP Marketplace
Federated search across personal humanMCP servers. Find listings, offers, trades by humans. SQLite + FTS5, 3 MCP tools: search_marketplace, list_servers, get_server.
Decompose
Decompose text into classified semantic units — authority, risk, attention, entities. No LLM. Deterministic.
Current Time JST
Provides the current time in Japan Standard Time (JST, UTC+9).
Web-Algebra
Suite of generic Linked Data/SPARQL as well as LinkedDataHub-specific MCP tools
Hyteria MCP
A server for looking up the daily menu at the Hyteria (B1) restaurant.
Atris MCP for Audius
Access the Audius music platform via LLMs, with 105 tools covering most of the Audius Protocol API.
QMT MCP Server
An MCP server that interfaces with the locally running MiniQMT trading system.
x402Geo
SEO & GEO (Generative Engine Optimization) for websites. Optimize for AI search engines (ChatGPT, Perplexity, Gemini, Copilot, Claude) and traditional search (Google, Bing). Includes Princeton GEO research methods for +40% AI visibility