Skip to main content
Glama
@striderlabs/mcp-marriott

@striderlabs/mcp-marriott

@striderlabs/mcp-marriott

MCP server for Marriott Hotels — let AI agents search hotels, manage reservations, check in, and interact with the Marriott Bonvoy loyalty program via browser automation.

Built by Strider Labs.

Overview

This MCP server enables AI agents (Claude, etc.) to:

  • Search Marriott properties worldwide

  • Browse room types and rates

  • Complete hotel bookings

  • Manage existing reservations (view, modify, cancel)

  • Mobile check-in

  • Track Marriott Bonvoy points and tier status

  • Redeem Bonvoy points for award stays

  • View past stay history

Related MCP server: 1Stay Hotel Booking

Tools

Tool

Description

status

Check login status and Bonvoy session info

login

Log in to Marriott Bonvoy (auto or manual)

logout

Clear saved session and cookies

search_hotels

Search hotels by destination, dates, guests

get_hotel_details

Get amenities, policies, check-in times

get_room_options

View available room types and rates

select_room

Choose a room before checkout

add_extras

Add parking, breakfast, late checkout, etc.

checkout

Complete booking (requires explicit confirmation)

get_reservation

Retrieve existing reservations

modify_reservation

Change dates or room type

cancel_reservation

Cancel a booking

check_in

Mobile check-in with room preferences

get_bonvoy_status

Points balance, tier, nights to upgrade

redeem_points

Book award stays with Bonvoy points

get_stay_history

View past stays and points earned

Setup

1. Install

npm install -g @striderlabs/mcp-marriott

Or run directly with npx:

npx @striderlabs/mcp-marriott

2. Install Playwright browsers

npx playwright install chromium

3. Configure credentials (optional)

Set environment variables for automatic login:

export MARRIOTT_EMAIL="your@email.com"
export MARRIOTT_PASSWORD="yourpassword"

Without these, the login tool returns a URL for manual browser login.

4. Configure Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "marriott": {
      "command": "npx",
      "args": ["@striderlabs/mcp-marriott"],
      "env": {
        "MARRIOTT_EMAIL": "your@email.com",
        "MARRIOTT_PASSWORD": "yourpassword"
      }
    }
  }
}

5. Configure Cursor / other MCP clients

{
  "mcp": {
    "servers": {
      "marriott": {
        "command": "npx",
        "args": ["@striderlabs/mcp-marriott"],
        "env": {
          "MARRIOTT_EMAIL": "your@email.com",
          "MARRIOTT_PASSWORD": "yourpassword"
        }
      }
    }
  }
}

Usage Examples

Search hotels

Search for Marriott hotels in Tokyo from July 10-15 for 2 adults

Book a room

Find me a room at the W Hotel Times Square for next weekend, then book the cheapest option

Check Bonvoy status

How many Bonvoy points do I have and what's my current tier?

Redeem points

Use my Bonvoy points to book a standard room at the Marriott Marquis in NYC for March 20-22

Manage a reservation

Show me my upcoming reservations and cancel the one in Chicago

Session Management

Cookies are saved to ~/.striderlabs/marriott/ so sessions persist between runs. To log out:

Use the logout tool

Or delete the directory:

rm -rf ~/.striderlabs/marriott/

Safety & Confirmations

Destructive actions require explicit confirmation:

  • checkout — requires confirm: true

  • modify_reservation — requires confirm: true

  • cancel_reservation — requires confirm: true

  • redeem_points — requires confirm: true

Without confirm: true, these tools return a preview of what would happen, giving users a chance to review before committing.

Development

git clone https://github.com/markswendsen-code/mcp-marriott
cd mcp-marriott
npm install
npm run build
node dist/index.js

Environment Variables

Variable

Description

MARRIOTT_EMAIL

Marriott Bonvoy account email

MARRIOTT_PASSWORD

Marriott Bonvoy account password

License

MIT — Strider Labs

Available Tools

16 tools
add_extrasA

Add optional extras to your booking — parking, breakfast, late checkout, early check-in, airport transfer, or spa credit.

Inputs: extras (required).

cancel_reservationA

Cancel an existing Marriott reservation. IMPORTANT: Set confirm=true only after getting explicit user confirmation. Cancellation fees may apply.

Inputs: confirmationNumber (required), confirm.

check_inA

Complete mobile check-in for an upcoming Marriott reservation. May return room number and mobile key availability.

Inputs: confirmationNumber (required), roomPreferences, estimatedArrivalTime.

checkoutA

Complete a Marriott hotel booking. IMPORTANT: Set confirm=true only after getting explicit user confirmation. Without confirm=true, returns a booking preview instead of charging.

Inputs: checkIn (required), checkOut (required), email, phone, +8 more.

get_bonvoy_statusA

Check Marriott Bonvoy loyalty program status — points balance, membership tier, nights this year, progress to next tier, and recent activity. Requires being logged in.

Inputs: no named parameters.

get_hotel_detailsA

Get detailed information about a specific Marriott hotel — description, amenities, policies, check-in/out times, parking, and pet policy.

Inputs: hotelIdOrUrl (required).

get_reservationA

Retrieve existing Marriott reservation details. Requires being logged in. Returns upcoming reservations or a specific booking by confirmation number.

Inputs: confirmationNumber.

get_room_optionsA

View available room types and rates for a specific hotel and date range. Returns room names, bed types, prices, cancellation policies, and Bonvoy point rates.

Inputs: checkIn (required), hotelId (required), checkOut (required), adults, +2 more.

get_stay_historyA

View past Marriott stays including dates, hotels, points earned, and costs. Requires being logged in.

Inputs: limit.

loginA

Log in to Marriott Bonvoy. Reads MARRIOTT_EMAIL and MARRIOTT_PASSWORD from environment variables, or returns a URL for manual login.

Inputs: no named parameters.

logoutA

Clear saved Marriott session and cookies. Use this to log out or reset authentication state.

Inputs: no named parameters.

modify_reservationA

Change dates or room type for an existing reservation. IMPORTANT: Set confirm=true only after getting explicit user confirmation.

Inputs: confirmationNumber (required), confirm, newCheckIn, newCheckOut, +2 more.

redeem_pointsA

Book a hotel stay using Marriott Bonvoy points. Shows available award rates. IMPORTANT: Set confirm=true only after getting explicit user confirmation.

Inputs: checkIn (required), hotelId (required), checkOut (required), adults, +2 more.

search_hotelsA

Search for Marriott hotels by destination and dates. Returns hotel names, brands, ratings, locations, and nightly rates.

Inputs: checkIn (required), checkOut (required), destination (required), rooms, +3 more.

select_roomA

Choose a room type to book. Call this after get_room_options to select a room before checkout.

Inputs: hotelId (required), roomCode (required), ratePlanCode.

statusA

Check Marriott login status and Bonvoy session info. Use this to verify authentication before performing other actions.

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 16 tools

    Disambiguation5/5

    Each tool targets a distinct action (login, search, select, checkout, etc.) with clear boundaries. No two tools overlap in purpose.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case (e.g., search_hotels, get_hotel_details, cancel_reservation). Single-word tools like status and login fit the verb style.

    Tool Count4/5

    16 tools cover a comprehensive hotel booking workflow from login to check-in and loyalty management. Slightly above the typical 3-15 range, but still well-scoped and each tool earns its place.

    Completeness4/5

    Covers authentication, search, details, room selection, extras, booking, modifications, cancellations, check-in, and loyalty. Minor gaps like viewing account profile, but core booking lifecycle is complete.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers