opentable-mcp-server


Nameopentable-mcp-server JSON
Version 1.3.2 PyPI version JSON
download
home_pagehttps://github.com/wheelis/opentable_mcp
SummaryAn MCP server for OpenTable restaurant reservations
upload_time2025-07-26 21:40:52
maintainerNone
docs_urlNone
authorwheelis
requires_python>=3.9
licenseNone
keywords mcp opentable restaurant reservations model-context-protocol
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # OpenTable MCP Server

An MCP (Model Context Protocol) server that provides natural language access to OpenTable restaurant reservation functionality.

## 🚀 **One-Step Setup**

**No installation required!** Just configure Claude Desktop:

### 1. Add to Claude Desktop Configuration

Add this to your Claude Desktop configuration file (`~/.claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "opentable": {
      "command": "uvx",
      "args": ["opentable-mcp-server"],
      "env": {
        "OPENTABLE_ORG_KEY": "your-org-key-here"
      }
    }
  }
}
```

### 2. Restart Claude Desktop

### 3. Start using natural language:
```
"Register me for OpenTable and find Italian restaurants in NYC"
```

**That's it!** `uvx` automatically downloads and installs the MCP server when Claude Desktop starts.

---

## Features

- 🔍 **Restaurant Search**: Find restaurants by location and cuisine
- 📅 **Availability Check**: Get real-time availability for any restaurant  
- 📝 **Reservation Management**: Book, cancel, and list reservations
- 💳 **Payment Integration**: Add credit cards for reservations requiring them
- 👤 **User Management**: Register test users for development
- 🏥 **Health Monitoring**: Check API service status

## Installation

### **Recommended: Claude Desktop Auto-Install**

The easiest way is to let Claude Desktop handle everything automatically. Just add the configuration above to `~/.claude_desktop_config.json` and restart Claude Desktop.

When Claude Desktop starts, `uvx` will:
- ✅ Automatically download `opentable-mcp-server` from PyPI
- ✅ Install all dependencies including `opentable-rest-client`
- ✅ Create an isolated environment
- ✅ Start the MCP server

### Alternative: Manual Installation

If you prefer to install manually first:

```bash
# Option 1: Using uvx
uvx opentable-mcp-server

# Option 2: Using pip
pip install opentable-mcp-server
```

## Configuration

### Claude Desktop Configuration

**Already shown above!** The configuration in the "One-Step Setup" section is all you need.

For reference, the configuration file locations are:
- **macOS**: `~/.claude_desktop_config.json` or `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`

See `claude_desktop_config_example.json` in this directory for a complete example.

### Environment Variables

- `OPENTABLE_ORG_KEY` (required): Your OpenTable organization key

## Project Structure

```
mcp/
├── opentable_mcp_server.py    # Main MCP server implementation
├── setup.py                   # Package setup configuration
├── requirements.txt           # Python dependencies
├── MANIFEST.in               # Package manifest
├── opentable_mcp_README.md   # This documentation
├── claude_desktop_config_example.json  # Example configuration
└── dist/                     # Built packages
```

## Available Tools

The MCP server provides these tools for natural language interaction:

### Restaurant Discovery
- **search_restaurants**: Find restaurants by location, cuisine, and preferences
- **get_restaurant_availability**: Check real-time availability for a specific restaurant
- **get_restaurant_timeslots**: Get available time slots for a restaurant

### Reservation Management  
- **book_reservation**: Make a new reservation
- **cancel_reservation**: Cancel an existing reservation
- **list_reservations**: View user's current reservations
- **modify_reservation**: Change an existing reservation

### User & Payment
- **register_user**: Create a new user account (for testing)
- **get_user_info**: Get current user information
- **add_credit_card**: Add a payment method
- **list_credit_cards**: View saved payment methods

### Monitoring
- **health_check**: Check API service status

## Publishing to PyPI

To publish the MCP server package:

```bash
cd mcp/

# Build the package
python -m build

# Upload to PyPI (requires authentication)
twine upload dist/*
```

## Development

### Testing the Server

```bash
cd mcp/
python opentable_mcp_server.py
```

The server will start and listen for MCP protocol messages via stdio.

### Dependencies

- `mcp>=1.2.0`: Model Context Protocol framework
- `opentable-rest-client>=1.0.0`: Published OpenTable API client

## License

MIT License - see the main project repository for details.

## Contributing

Contributions are welcome! Please see the main project repository at https://github.com/wheelis/opentable_mcp 

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/wheelis/opentable_mcp",
    "name": "opentable-mcp-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "mcp, opentable, restaurant, reservations, model-context-protocol",
    "author": "wheelis",
    "author_email": "noreply@github.com",
    "download_url": "https://files.pythonhosted.org/packages/4f/d7/ad56117ee8b645fceff4625df52f570545769749753d2edcb89653ca5d11/opentable_mcp_server-1.3.2.tar.gz",
    "platform": null,
    "description": "# OpenTable MCP Server\n\nAn MCP (Model Context Protocol) server that provides natural language access to OpenTable restaurant reservation functionality.\n\n## \ud83d\ude80 **One-Step Setup**\n\n**No installation required!** Just configure Claude Desktop:\n\n### 1. Add to Claude Desktop Configuration\n\nAdd this to your Claude Desktop configuration file (`~/.claude_desktop_config.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"opentable\": {\n      \"command\": \"uvx\",\n      \"args\": [\"opentable-mcp-server\"],\n      \"env\": {\n        \"OPENTABLE_ORG_KEY\": \"your-org-key-here\"\n      }\n    }\n  }\n}\n```\n\n### 2. Restart Claude Desktop\n\n### 3. Start using natural language:\n```\n\"Register me for OpenTable and find Italian restaurants in NYC\"\n```\n\n**That's it!** `uvx` automatically downloads and installs the MCP server when Claude Desktop starts.\n\n---\n\n## Features\n\n- \ud83d\udd0d **Restaurant Search**: Find restaurants by location and cuisine\n- \ud83d\udcc5 **Availability Check**: Get real-time availability for any restaurant  \n- \ud83d\udcdd **Reservation Management**: Book, cancel, and list reservations\n- \ud83d\udcb3 **Payment Integration**: Add credit cards for reservations requiring them\n- \ud83d\udc64 **User Management**: Register test users for development\n- \ud83c\udfe5 **Health Monitoring**: Check API service status\n\n## Installation\n\n### **Recommended: Claude Desktop Auto-Install**\n\nThe easiest way is to let Claude Desktop handle everything automatically. Just add the configuration above to `~/.claude_desktop_config.json` and restart Claude Desktop.\n\nWhen Claude Desktop starts, `uvx` will:\n- \u2705 Automatically download `opentable-mcp-server` from PyPI\n- \u2705 Install all dependencies including `opentable-rest-client`\n- \u2705 Create an isolated environment\n- \u2705 Start the MCP server\n\n### Alternative: Manual Installation\n\nIf you prefer to install manually first:\n\n```bash\n# Option 1: Using uvx\nuvx opentable-mcp-server\n\n# Option 2: Using pip\npip install opentable-mcp-server\n```\n\n## Configuration\n\n### Claude Desktop Configuration\n\n**Already shown above!** The configuration in the \"One-Step Setup\" section is all you need.\n\nFor reference, the configuration file locations are:\n- **macOS**: `~/.claude_desktop_config.json` or `~/Library/Application Support/Claude/claude_desktop_config.json`\n- **Windows**: `%APPDATA%\\Claude\\claude_desktop_config.json`\n\nSee `claude_desktop_config_example.json` in this directory for a complete example.\n\n### Environment Variables\n\n- `OPENTABLE_ORG_KEY` (required): Your OpenTable organization key\n\n## Project Structure\n\n```\nmcp/\n\u251c\u2500\u2500 opentable_mcp_server.py    # Main MCP server implementation\n\u251c\u2500\u2500 setup.py                   # Package setup configuration\n\u251c\u2500\u2500 requirements.txt           # Python dependencies\n\u251c\u2500\u2500 MANIFEST.in               # Package manifest\n\u251c\u2500\u2500 opentable_mcp_README.md   # This documentation\n\u251c\u2500\u2500 claude_desktop_config_example.json  # Example configuration\n\u2514\u2500\u2500 dist/                     # Built packages\n```\n\n## Available Tools\n\nThe MCP server provides these tools for natural language interaction:\n\n### Restaurant Discovery\n- **search_restaurants**: Find restaurants by location, cuisine, and preferences\n- **get_restaurant_availability**: Check real-time availability for a specific restaurant\n- **get_restaurant_timeslots**: Get available time slots for a restaurant\n\n### Reservation Management  \n- **book_reservation**: Make a new reservation\n- **cancel_reservation**: Cancel an existing reservation\n- **list_reservations**: View user's current reservations\n- **modify_reservation**: Change an existing reservation\n\n### User & Payment\n- **register_user**: Create a new user account (for testing)\n- **get_user_info**: Get current user information\n- **add_credit_card**: Add a payment method\n- **list_credit_cards**: View saved payment methods\n\n### Monitoring\n- **health_check**: Check API service status\n\n## Publishing to PyPI\n\nTo publish the MCP server package:\n\n```bash\ncd mcp/\n\n# Build the package\npython -m build\n\n# Upload to PyPI (requires authentication)\ntwine upload dist/*\n```\n\n## Development\n\n### Testing the Server\n\n```bash\ncd mcp/\npython opentable_mcp_server.py\n```\n\nThe server will start and listen for MCP protocol messages via stdio.\n\n### Dependencies\n\n- `mcp>=1.2.0`: Model Context Protocol framework\n- `opentable-rest-client>=1.0.0`: Published OpenTable API client\n\n## License\n\nMIT License - see the main project repository for details.\n\n## Contributing\n\nContributions are welcome! Please see the main project repository at https://github.com/wheelis/opentable_mcp \n",
    "bugtrack_url": null,
    "license": null,
    "summary": "An MCP server for OpenTable restaurant reservations",
    "version": "1.3.2",
    "project_urls": {
        "Homepage": "https://github.com/wheelis/opentable_mcp"
    },
    "split_keywords": [
        "mcp",
        " opentable",
        " restaurant",
        " reservations",
        " model-context-protocol"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "530025f3c8351a78cc14d90dc4f8b4e9508c73ca51b724fc34c6eb70dc11f888",
                "md5": "350e10f51d0b5a8ed26da19ddd700fd1",
                "sha256": "d1b7dc85040f64327f4705dd5acd529e8466b35738dbbed8f7687032121631cd"
            },
            "downloads": -1,
            "filename": "opentable_mcp_server-1.3.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "350e10f51d0b5a8ed26da19ddd700fd1",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 27807,
            "upload_time": "2025-07-26T21:40:50",
            "upload_time_iso_8601": "2025-07-26T21:40:50.873128Z",
            "url": "https://files.pythonhosted.org/packages/53/00/25f3c8351a78cc14d90dc4f8b4e9508c73ca51b724fc34c6eb70dc11f888/opentable_mcp_server-1.3.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4fd7ad56117ee8b645fceff4625df52f570545769749753d2edcb89653ca5d11",
                "md5": "27e28a4772be7316862f3d6edc884b22",
                "sha256": "26b7c3a59cebc3d54d9c10cb08d1ea600f501c540ec497032c6bad1c6dd47a33"
            },
            "downloads": -1,
            "filename": "opentable_mcp_server-1.3.2.tar.gz",
            "has_sig": false,
            "md5_digest": "27e28a4772be7316862f3d6edc884b22",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 27571,
            "upload_time": "2025-07-26T21:40:52",
            "upload_time_iso_8601": "2025-07-26T21:40:52.671837Z",
            "url": "https://files.pythonhosted.org/packages/4f/d7/ad56117ee8b645fceff4625df52f570545769749753d2edcb89653ca5d11/opentable_mcp_server-1.3.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-26 21:40:52",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "wheelis",
    "github_project": "opentable_mcp",
    "github_not_found": true,
    "lcname": "opentable-mcp-server"
}
        
Elapsed time: 0.48673s