Skip to main content
Glama
markswendsen-code

Enterprise Rent-A-Car MCP Connector

@striderlabs/mcp-enterprise

A Model Context Protocol (MCP) connector for Enterprise Rent-A-Car. This connector enables AI assistants (such as Claude) to search for vehicles, manage reservations, and check Enterprise Plus loyalty account information — all through enterprise.com via headless browser automation.


Overview

This connector uses Playwright to drive a stealth headless Chromium browser against enterprise.com. It exposes 7 MCP tools covering the full car rental workflow:

  • Search available vehicles by location, dates, and preferences

  • Get detailed vehicle pricing and protection options

  • Create, modify, and cancel reservations

  • Retrieve Enterprise Plus account details

  • Check Enterprise Plus loyalty points balance and activity

Session cookies are persisted to ~/.mcp-enterprise/session.json so repeat calls avoid re-authenticating.


Prerequisites

  • Node.js 18 or higher

  • npm 9 or higher

  • Internet access to enterprise.com


Installation

From the package directory

npm install
npx playwright install chromium
npm run build

As a global CLI

npm install -g @striderlabs/mcp-enterprise
npx playwright install chromium

Configuration

No API keys are required. The connector uses Enterprise's public-facing website.

Environment Variable

Description

PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH

Path to a custom Chromium binary

HTTP_PROXY / HTTPS_PROXY

Proxy server for outbound requests


MCP Client Configuration

Add to your Claude Desktop claude_desktop_config.json:

{
  "mcpServers": {
    "enterprise": {
      "command": "node",
      "args": ["/path/to/mcp-enterprise/dist/index.js"]
    }
  }
}

Or if installed globally:

{
  "mcpServers": {
    "enterprise": {
      "command": "mcp-enterprise"
    }
  }
}

Available Tools

search_vehicles

Search for available vehicles at Enterprise for specific dates and locations.

{
  "pickup_location": "LAX",
  "pickup_date": "2025-06-15",
  "pickup_time": "10:00",
  "dropoff_date": "2025-06-20",
  "dropoff_time": "10:00",
  "vehicle_class": "SUV",
  "driver_age": 30,
  "enterprise_plus_number": "EP123456"
}

Returns: Array of available vehicles with vehicle_id, make/model, class, pricing, features, and mileage policy.


get_vehicle_details

Get full pricing breakdown and protection options for a vehicle from search results.

{
  "vehicle_id": "ENT-ABC12345",
  "rate_code": "STANDARD"
}

Returns: Vehicle details plus rate_details (base rate, taxes, fees) and protection_options (LDW, PAI, PEC).


create_reservation

Create a new Enterprise reservation.

{
  "vehicle_id": "ENT-ABC12345",
  "pickup_location_id": "LAX01",
  "pickup_datetime": "2025-06-15T10:00:00",
  "dropoff_datetime": "2025-06-20T10:00:00",
  "driver_first_name": "Jane",
  "driver_last_name": "Smith",
  "driver_email": "jane@example.com",
  "driver_phone": "555-555-1234",
  "enterprise_plus_number": "EP123456",
  "protection_plan": "partial"
}

Returns: Confirmed Reservation with confirmation_number, vehicle, location, dates, driver info, and cost breakdown.


modify_reservation

Modify an existing reservation (dates, locations, or vehicle class).

{
  "confirmation_number": "ENT-XYZ789",
  "last_name": "Smith",
  "new_pickup_datetime": "2025-06-16T10:00:00",
  "new_dropoff_datetime": "2025-06-22T10:00:00",
  "new_vehicle_class": "Midsize"
}

Returns: Updated Reservation with modified details.


cancel_reservation

Cancel an existing reservation. No fee when cancelled before scheduled pickup.

{
  "confirmation_number": "ENT-XYZ789",
  "last_name": "Smith",
  "reason": "Travel plans changed"
}

Returns: { success: true, confirmation_number, message, refund_amount }.


get_account

Retrieve Enterprise Plus account information.

{
  "enterprise_plus_number": "EP123456",
  "pin": "your-pin"
}

Returns: Account details including tier (Standard/Silver/Gold/Platinum), points_balance, rentals_ytd, and free_day_certificates.


get_loyalty_points

Check Enterprise Plus points balance, tier progress, and recent activity.

{
  "enterprise_plus_number": "EP123456",
  "pin": "your-pin"
}

Returns: points_balance, tier, points_to_next_tier, expiration_date, and recent_activity array.


Example Usage with Claude

"Find me an SUV at LAX from June 15–20, then book it for Jane Smith."

Claude will:

  1. Call search_vehicles with the specified parameters

  2. Present available SUVs with pricing

  3. Call create_reservation with the chosen vehicle and driver details

  4. Return the confirmation number

"How many Enterprise Plus points do I have? My number is EP123456."

Claude will call get_loyalty_points and report your balance, tier, and recent activity.


Session Management

Cookies are persisted to ~/.mcp-enterprise/session.json after each authenticated request. This means Enterprise Plus sign-in is preserved across calls, avoiding repeated login prompts.

To clear the session:

rm ~/.mcp-enterprise/session.json

Troubleshooting

Problem

Solution

Browser not initialized

Ensure playwright install chromium was run

Search returns no results

Check that enterprise.com is reachable; try a major city or airport code

Login fails

Verify your Enterprise Plus number and PIN; clear session and retry

Timeout errors

Increase system timeout or check network connectivity


License

MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/markswendsen-code/mcp-enterprise'

If you have feedback or need assistance with the MCP directory API, please join our Discord server