mcp-hertz
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-hertzFind an SUV at LAX from July 10 to July 15"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@striderlabs/mcp-hertz
A Model Context Protocol (MCP) connector for the Hertz car rental service. This connector enables AI assistants (such as Claude) to search for vehicles, manage reservations, look up locations, retrieve rental policies, and check Gold Plus Rewards loyalty status — all through Hertz's website via headless browser automation.
Overview
This connector uses Playwright to drive a headless Chromium browser against hertz.com. It exposes 10 MCP tools that cover the full car rental workflow:
Search available vehicles
Get detailed vehicle and rate information
Find nearby Hertz locations
Create, view, modify, and cancel reservations
Retrieve rental policies and insurance options
Add optional extras (GPS, child seats, etc.)
Check Gold Plus Rewards loyalty status
Related MCP server: mcp-hilton
Prerequisites
Node.js 18 or higher
npm 9 or higher
Internet access to reach
hertz.com
Installation
From the package directory
npm install
npx playwright install chromium
npm run buildAs a global CLI
npm install -g @striderlabs/mcp-hertz
npx playwright install chromiumConfiguration
No API keys or environment variables are required. The connector uses public-facing Hertz web pages. Network access to https://www.hertz.com must be available from the host running the connector.
Optional environment variables that may influence Playwright behavior:
Variable | Description |
| Path to a custom Chromium binary |
| Proxy server for outbound requests |
Running the Server
# Development (TypeScript source)
npm run dev
# Production (compiled)
npm run build
npm startThe server communicates over stdio using the MCP protocol and is designed to be launched by an MCP host such as Claude Desktop.
Claude Desktop Configuration
Add the following to your Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"hertz": {
"command": "node",
"args": ["/path/to/mcp-hertz/dist/index.js"]
}
}
}Or, if installed globally:
{
"mcpServers": {
"hertz": {
"command": "mcp-hertz"
}
}
}Tools
1. search_vehicles
Search for available Hertz vehicles at a given location and date range.
Parameter | Type | Required | Description |
| string | Yes | City name, airport code (e.g. |
| string | No | Return location if different from pickup |
| string | Yes | ISO date |
| string | Yes | 24-hour time |
| string | Yes | ISO date |
| string | Yes | 24-hour time |
| enum | No | Economy, Compact, Midsize, Standard, Fullsize, Premium, Luxury, SUV, Van, Truck |
| number | No | Driver age in years (default: 25) |
| string | No | Promotional or discount code |
Returns: Array of VehicleResult objects with make/model, class, transmission, passengers, bags, daily rate, total rate, features, and availability.
2. get_vehicle_details
Retrieve detailed information and rate breakdown for a specific vehicle.
Parameter | Type | Required | Description |
| string | Yes | Vehicle ID from |
| string | No | Rate code for specific pricing |
Returns: VehicleResult extended with rate_details (base rate, taxes, total, cancellation policy).
3. get_locations
Find Hertz rental locations near a city, airport, or set of coordinates.
Parameter | Type | Required | Description |
| string | Yes | City name, airport code (e.g. |
| enum | No |
|
| number | No | Latitude for proximity search |
| number | No | Longitude for proximity search |
| number | No | Search radius in miles (default: 25) |
Returns: Array of Location objects with name, address, city, state, phone, hours, and airport info.
4. create_reservation
Create a new Hertz rental reservation.
Parameter | Type | Required | Description |
| string | Yes | Vehicle ID from search results |
| string | No | Rate code for pricing |
| string | Yes | Location ID for pickup |
| string | No | Location ID for return (defaults to pickup) |
| string | Yes | ISO datetime e.g. |
| string | Yes | ISO datetime e.g. |
| string | Yes | Driver's first name |
| string | Yes | Driver's last name |
| string | Yes | Driver's email address |
| string | Yes | Driver's phone number |
| number | No | Driver age in years |
| string | No | Promotional or discount code |
| string | No | Corporate Discount Program number |
| string | No | Hertz Gold Plus Rewards member number |
Returns: Reservation object with confirmation number, status, vehicle, locations, dates, driver info, and total cost.
5. get_reservation
Look up an existing reservation by confirmation number and last name.
Parameter | Type | Required | Description |
| string | Yes | Hertz confirmation number |
| string | Yes | Driver's last name as on the reservation |
Returns: Reservation object.
6. modify_reservation
Modify an existing reservation (dates, locations, or vehicle class).
Parameter | Type | Required | Description |
| string | Yes | Hertz confirmation number |
| string | Yes | Driver's last name |
| string | No | New pickup date/time in ISO format |
| string | No | New dropoff date/time in ISO format |
| string | No | New pickup location ID |
| string | No | New dropoff location ID |
| enum | No | New vehicle class preference |
Returns: Updated Reservation object.
7. cancel_reservation
Cancel an existing reservation. Free cancellation is available up to 24 hours before the scheduled pickup.
Parameter | Type | Required | Description |
| string | Yes | Hertz confirmation number |
| string | Yes | Driver's last name |
| string | No | Optional reason for cancellation |
Returns: Object with success boolean, message, and confirmation_number.
8. get_rental_policies
Retrieve Hertz rental policies, insurance options, and fee information.
Parameter | Type | Required | Description |
| string | No | Location ID for location-specific policies |
| enum | No | Vehicle class for class-specific notes |
| string | No | Country code (default: |
Returns: Policy object including minimum age requirements, fuel policy, mileage policy, insurance options, cancellation terms, accepted payment methods, and Gold Plus Rewards information.
9. add_extras
Add optional extras to an existing reservation.
Parameter | Type | Required | Description |
| string | Yes | Hertz confirmation number |
| string | Yes | Driver's last name |
| array | Yes | Array of |
Available extra_id values:
ID | Name | Pricing |
| Hertz NeverLost GPS | $12.99/day |
| Child Safety Seat | $13.99/day |
| Booster Seat | $9.99/day |
| Additional Driver | $13.99/day |
| Roadside Assistance Plus | $5.99/day |
| Wi-Fi Hotspot | $10.99/day |
| SiriusXM Satellite Radio | $8.99 flat |
| Ski Rack | $29.99 flat |
| Prepaid Fuel Option | $45.00 flat |
Returns: Object with updated extras list and new total cost.
10. get_loyalty_status
Check Hertz Gold Plus Rewards loyalty status including tier, points balance, year-to-date rentals, and free day certificates.
Parameter | Type | Required | Description |
| string | No | Gold Plus Rewards member ID |
| string | No | Email address on the account |
| string | Yes | Gold Plus Rewards PIN or password |
Note: Either member_id or email must be provided along with pin.
Returns: LoyaltyStatus object with member ID, name, tier (Gold / Five Star / President's Circle / Platinum), points balance, rentals year-to-date, and free day certificate count.
Notes on Browser Automation
The connector launches a headless Chromium browser via Playwright for each tool call and closes it upon completion.
Playwright Chromium must be installed separately with
npx playwright install chromium.Each tool call makes a real network request to
hertz.com. Response times depend on site performance (typically 5–30 seconds).Hertz's website uses heavy JavaScript rendering. The connector waits for
networkidlestate before extracting data.If the live site returns no parseable DOM data (e.g. due to a site redesign or anti-bot measures), several tools fall back to structured placeholder responses so that the calling agent can continue reasoning.
Do not use this connector to make real reservations with real payment information without understanding the full booking flow and Hertz's terms of service.
License
MIT
Available Tools
10 toolsadd_extrasC
Add optional extras (GPS, child seats, additional drivers, roadside assistance, etc.) to an existing reservation.
| Name | Required | Description | Default |
|---|---|---|---|
| confirmation_number | Yes | ||
| last_name | Yes | ||
| extras | Yes |
cancel_reservationA
Cancel an existing Hertz reservation. Free cancellation is available up to 24 hours before pickup.
| Name | Required | Description | Default |
|---|---|---|---|
| confirmation_number | Yes | ||
| last_name | Yes | ||
| reason | No | Optional cancellation reason |
create_reservationC
Create a new Hertz car rental reservation. Requires vehicle selection, location details, dates, and driver information.
| Name | Required | Description | Default |
|---|---|---|---|
| vehicle_id | Yes | Vehicle ID from search results | |
| rate_code | No | Rate code for pricing | |
| pickup_location_id | Yes | Location ID for vehicle pickup | |
| dropoff_location_id | No | Location ID for vehicle return | |
| pickup_datetime | Yes | ISO datetime for pickup, e.g. 2025-06-15T10:00:00 | |
| dropoff_datetime | Yes | ISO datetime for return, e.g. 2025-06-20T10:00:00 | |
| driver_first_name | Yes | ||
| driver_last_name | Yes | ||
| driver_email | Yes | ||
| driver_phone | Yes | ||
| driver_age | No | ||
| discount_code | No | ||
| cdp_number | No | Corporate Discount Program number | |
| loyalty_number | No | Hertz Gold Plus Rewards member number |
get_locationsB
Search for Hertz rental locations near a city, airport, or coordinates. Returns location details including address, hours, and contact information.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | City name, airport code (e.g. ORD), or street address | |
| type | No | Filter location type | |
| latitude | No | Latitude for proximity search | |
| longitude | No | Longitude for proximity search | |
| radius_miles | No | Search radius in miles, default 25 |
get_loyalty_statusB
Check Hertz Gold Plus Rewards loyalty status including tier, points balance, and free day certificates.
| Name | Required | Description | Default |
|---|---|---|---|
| member_id | No | Hertz Gold Plus Rewards member ID | |
| No | Email address on the Gold Plus account | ||
| pin | Yes | Gold Plus Rewards PIN or password |
get_rental_policiesC
Retrieve Hertz rental policies including age requirements, fuel policy, insurance options, cancellation terms, and available extras.
| Name | Required | Description | Default |
|---|---|---|---|
| location_id | No | Location ID for location-specific policies | |
| vehicle_class | No | ||
| country | No | Country code, default US |
get_reservationA
Look up an existing Hertz reservation by confirmation number and last name.
| Name | Required | Description | Default |
|---|---|---|---|
| confirmation_number | Yes | Hertz reservation confirmation number | |
| last_name | Yes | Driver's last name as on the reservation |
get_vehicle_detailsC
Get detailed information and pricing for a specific vehicle from search results.
| Name | Required | Description | Default |
|---|---|---|---|
| vehicle_id | Yes | Vehicle ID from search results | |
| rate_code | No | Rate code to get specific pricing |
modify_reservationC
Modify an existing Hertz reservation — change dates, locations, or vehicle class.
| Name | Required | Description | Default |
|---|---|---|---|
| confirmation_number | Yes | ||
| last_name | Yes | ||
| new_pickup_datetime | No | New pickup date/time in ISO format | |
| new_dropoff_datetime | No | New dropoff date/time in ISO format | |
| new_pickup_location_id | No | ||
| new_dropoff_location_id | No | ||
| new_vehicle_class | No |
search_vehiclesA
Search for available vehicles at Hertz for specific dates, locations, and preferences. Returns a list of available cars with pricing.
| Name | Required | Description | Default |
|---|---|---|---|
| pickup_location | Yes | City name, airport code (e.g. LAX), or address | |
| dropoff_location | No | Return location if different from pickup | |
| pickup_date | Yes | ISO date YYYY-MM-DD | |
| pickup_time | Yes | HH:MM format (24-hour) | |
| dropoff_date | Yes | ISO date YYYY-MM-DD | |
| dropoff_time | Yes | HH:MM format (24-hour) | |
| vehicle_class | No | Optional vehicle class filter | |
| driver_age | No | Driver age in years, default 25 | |
| discount_code | No | Promotional or discount code |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
10 tool updates
v1.0.0- First observed
add_extras - First observed
cancel_reservation - First observed
create_reservation - First observed
get_locations - First observed
get_loyalty_status - First observed
get_rental_policies - First observed
get_reservation - First observed
get_vehicle_details - First observed
modify_reservation - First observed
search_vehicles
TDQS
Scored across 10 tools
Each tool has a clearly distinct purpose targeting specific resources and actions in the car rental domain. For example, create_reservation, modify_reservation, and cancel_reservation cover different lifecycle stages, while get_reservation, get_vehicle_details, and get_locations handle distinct lookup operations. No tools appear to overlap in functionality.
All tools follow a consistent verb_noun naming pattern (e.g., create_reservation, get_locations, modify_reservation). The verbs are descriptive and appropriately matched to actions, with no mixing of conventions like camelCase or inconsistent verb styles.
With 10 tools, the server is well-scoped for managing car rentals, covering core workflows from search to reservation management. Each tool earns its place by addressing a specific need, such as loyalty status or rental policies, without being excessive or insufficient for the domain.
The tool set provides complete CRUD/lifecycle coverage for Hertz rentals: create_reservation, get_reservation, modify_reservation, and cancel_reservation handle the reservation lifecycle, while search_vehicles, get_vehicle_details, get_locations, and add_extras support selection and customization. Additional tools like get_loyalty_status and get_rental_policies offer valuable context, leaving no obvious gaps.
Related MCP Connectors
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI agents to automate Delta Air Lines tasks such as searching flights, managing bookings, and checking SkyMiles balances through Playwright-based browser automation. It supports the complete travel workflow including seat selection, check-in, and digital boarding pass retrieval.1758 npm6MIT
- AlicenseAqualityDmaintenanceAn MCP server that enables AI agents to search Hilton hotels, manage reservations, and check Hilton Honors status through browser automation. It supports the full booking flow, points redemption, and digital key access via natural language commands.1611 npmMIT
- AlicenseAqualityDmaintenanceEnables AI assistants to search for vehicles, manage reservations, and access Enterprise Plus loyalty account information through headless browser automation on enterprise.com. It supports the complete car rental workflow including vehicle searching, booking, modifications, and points balance checks.710 npmMIT
- AlicenseAqualityDmaintenanceEnables users to automate Zipcar car sharing tasks such as searching for available vehicles, managing reservations, and ending trips using stealth browser automation. It provides a standardized interface for interacting with Zipcar's services through natural language and the Model Context Protocol.65 npmMIT