Skip to main content

MCP Protocol (AI Agent Access)

The EquipDash MCP server enables AI assistants to interact with your EquipDash account using the Model Context Protocol. This gives AI tools like ChatGPT, Claude, and Gemini direct access to your bookings, products, customers, and more through natural language.

What is MCP?โ€‹

MCP (Model Context Protocol) is an open standard that lets AI assistants call tools and access data from external services. Instead of writing API calls manually, you describe what you want in plain English and the AI agent handles the rest.

Endpointโ€‹

POST https://app.equipdash.com/mcp/v1

Transport: Streamable HTTP (JSON-RPC over HTTP POST)

When to Use MCP vs REST APIโ€‹

Use CaseMCPREST API
AI assistant managing bookings via natural languageYes
Connecting ChatGPT, Claude, or Gemini to your accountYes
Building a custom website or app integrationYes
Automated scripts and cron jobsYes
Webhook-driven workflowsYes
Bulk data import/exportYes
Real-time availability on your websiteYes

Rule of thumb: Use MCP when an AI agent is the consumer. Use the REST API when your code is the consumer.

Supported Clientsโ€‹

Any MCP-compatible AI assistant can connect to the EquipDash MCP server:

  • ChatGPT - OpenAI's AI assistant (Desktop and web)
  • Claude - Anthropic's AI assistant (web, desktop and mobile apps, as a custom connector)
  • Gemini - Google's AI assistant
  • Custom agents - Any application implementing the MCP client protocol

Available Tool Domainsโ€‹

The MCP server exposes 114 tools organized across 21 domains:

DomainToolsDescription
Bookings12List, create, update, cancel bookings; manage notes and tags; track late pickups/returns
Products8Manage rental products, check availability, calculate pricing, track inventory
Experiences6Manage tours/activities, check schedules, view availability
Customers7Search, create, update customers; manage notes
Staff8Manage staff members, shifts, and schedules
Payments11Record payments, process refunds, send payment links, manage charges
Reports7Revenue summaries, booking stats, trends, top performers
Promotions8Manage promo codes and gift vouchers
Store8Manage store products, inventory, and sales stats
Forms5View waivers/forms, check completion status, send to customers
Surveys3View surveys, NPS analytics, and trends
Tags1List booking tags
Workshop3View workshop items, details, and barcode lookups
Bundles3List bundles, get details, check availability
Categories9Manage product, experience, and store categories
Waitlist4View waitlist, add entries, notify customers, view stats
Support3List, view, and create support tickets
Campaigns2View email campaigns and performance stats
Seasons2List and create pricing seasons
Settings2View business hours and locations
AI Credits2Check AI credit balance and usage

How It Worksโ€‹

  1. Your AI client connects to https://app.equipdash.com/mcp/v1 with your API key
  2. The server advertises available tools based on your API key's scopes and the supplier's enabled modules (see below)
  3. The AI calls tools as needed to fulfill your requests
  4. Results are returned as structured JSON

Per-supplier tool filtering (Rentals / Experiences / Store)โ€‹

Each EquipDash supplier can enable or disable the Rentals, Experiences, and Store modules independently from their settings. The MCP server advertises only the tools whose module is enabled for the requesting supplier โ€” so an experiences-only supplier never sees list_products, adjust_store_inventory, etc., and the AI never proposes calling them.

Disabled moduleTools that disappear from tools/list
RentalsAll Products, Bundles, Workshop tools, the rental-specific category tools, and rental-only reports (get_top_products, get_inventory_report)
ExperiencesAll Experiences tools, experience-specific category tools, and get_top_experiences
StoreAll Store tools and store-specific category tools

Module-agnostic tools (Bookings, Customers, Staff, Payments, Help Centre, AI Credits, etc.) are always available regardless of module state.

If a tool is somehow invoked for a disabled module (stale client cache, race with a toggle), the call returns a runtime error explaining which module is off. Mirror this in your client by re-fetching GET /supplier/modules and refreshing your tool list.

Next Stepsโ€‹