# Smeetz MCP

> Smeetz connects your entire commerce operation to any AI agent. You can manage product catalogs, create bookings, and pull customer profiles without opening the Smeetz dashboard. Just talk to your agent, and it handles listing products using `list_products` or creating a new reservation via `create_booking`. It's direct booking management for your workflow.

## Overview
- **Category:** ecommerce
- **Price:** Free
- **Tags:** ticketing, booking-management, unified-commerce, attractions, customer-data, inventory-management

## Description

Yo, listen up. This server hooks your whole commerce operation right into any AI agent you're using. You don't gotta open the Smeetz dashboard to manage anything; just tell your agent what you need, and it handles pulling or writing all that data for ya. It’s direct booking management built right into your workflow.

**Product Catalog Management**

Your agent uses `list_products` to pull a complete list of everything in the Smeetz catalog. That lets your AI client see every item you've got available without needing another tool call. If you need to know more about just one specific product, you can pass its unique ID into `get_product`, and it’ll return all the detailed metadata for that single item. You get full visibility on inventory using those two functions.

**Customer Data Retrieval**

Want to check out a customer? Your agent runs `list_customers` to pull a list of every registered account on the platform. If you know who you're looking for, passing that user’s ID into `get_customer` pulls their full profile details. This is crucial for support staff; they can look up specific user info instantly without leaving your chat window.

**Booking and Reservation Tools**

Managing reservations is where this thing really shines. To start a new booking, your agent uses `create_booking`. You gotta provide it with the product ID, the date of the reservation, the number of tickets, and all the customer info needed for the account. For checking on existing stuff, you use `get_booking`—just give it the unique booking identifier, and it pulls all the details about that specific reservation. It’s how your agent checks status or confirms a past sale.

Basically, when you talk to your agent, it can do this: 
*   Pull every product using `list_products`.
*   Get deep specs on one item with `get_product`.
*   List all users via `list_customers`.
*   Grab a user's full profile by ID using `get_customer`.
*   Create a new reservation, making sure to pass the product ID, date, ticket count, and customer data into `create_booking`.
*   Check the status of any existing booking with its unique ID through `get_booking`.

## Tools

### create_booking
Creates a new reservation by requiring product ID, date, ticket count, and customer information.

### list_customers
Lists all customer accounts associated with the Smeetz platform.

### get_booking
Retrieves full details about an existing booking using its unique identifier.

### get_customer
Gets detailed profile information for a specific customer by providing their ID.

### get_product
Retrieves full product metadata for one item when given its unique ID.

### list_products
Returns a list of every product currently available in your account inventory.

## Prompt Examples

**Prompt:** 
```
List all products available in my Smeetz account.
```

**Response:** 
```
I've retrieved your products. You have 'Grand Canyon Helicopter Tour' (ID: 789) and 'Las Vegas Show Tickets' (ID: 456) available. Would you like more details on one of these?
```

**Prompt:** 
```
Get the details for booking ID 'BK-55221'.
```

**Response:** 
```
Fetching booking BK-55221... It is a confirmed booking for 'City Tour' scheduled for 2024-12-10, assigned to customer 'Robert Smith'.
```

**Prompt:** 
```
Create a booking for product 789 on 2025-01-15 for Alice Brown (alice@email.com).
```

**Response:** 
```
I've successfully created the booking for Alice Brown. The booking ID is BK-99887. The tickets have been reserved for the requested date.
```

## Capabilities

### List all products
Retrieves a complete list of every item available in the Smeetz catalog using `list_products`.

### Get specific product details
Fetches detailed metadata for one item when you provide its unique ID using `get_product`.

### List all customers
Retrieves the full list of registered customer accounts through `list_customers`.

### Get specific customer details
Pulls a detailed profile for an individual user when you provide their identifier using `get_customer`.

### Create new bookings
Generates and books a reservation by providing the product ID, date, ticket count, and customer info via `create_booking`.

### Check booking status
Pulls all details about an existing reservation using its unique booking ID with `get_booking`.

## Use Cases

### Onboarding a New Customer
A support rep needs to verify if a user has already bought tickets. They ask their agent: 'What is the booking status for John Doe?' The agent calls `get_customer` first, then uses that ID with `get_booking`. Problem solved in seconds.

### Quick Inventory Check
An ops manager needs to know what tours are available next month. Instead of logging into the backend and filtering by date range, they ask their agent to 'List all products.' The agent runs `list_products` and shows immediate results.

### Handling an On-Call Sale
A sales rep is talking to a client right now. The client decides to buy tickets for Product ID 789 on next Tuesday. The agent runs `create_booking` immediately, confirms the sale, and sends the confirmation ID back.

### Data Deep Dive
A marketing analyst needs customer data to segment a campaign. They ask their agent to 'List all customers.' The agent uses `list_customers`, giving them the full dataset for immediate analysis.

## Benefits

- Check booking status instantly with `get_booking`. You don't need to navigate deep into the dashboard or wait for a manual lookup—your agent just pulls the details.
- Never manually list products again. Use `list_products` to get a full catalog view, and then use `get_product` to pull specific item specs on demand.
- Resolve customer issues faster by using `get_customer`. Instead of having to open three different tabs (CRM, booking, inventory), all the necessary data is available from one prompt.
- Sell tickets immediately. The `create_booking` tool lets your agent finalize a sale right in the conversation flow, saving you clicks and time during live interactions.
- Get an immediate picture of inventory health by calling `list_products`. This gives ops managers a quick audit without running through complex reports.

## How It Works

The bottom line is: you tell your AI what to do in plain English, and it handles the API calls behind the scenes.

1. Subscribe to the Smeetz server and paste your API Key.
2. Your AI agent sends a prompt (e.g., 'Book tickets for John Doe').
3. The agent calls the relevant tool (`create_booking`), which executes against Smeetz and returns the confirmation ID or data.

## Frequently Asked Questions

**How do I find out what products are available using list_products?**
You just ask your agent to 'list all products.' The tool runs `list_products` and returns a clean list of every item, including its unique ID. This is faster than navigating the site.

**Can I check if a customer exists using get_customer?**
Yes. If you provide the customer's identifier to `get_customer`, it pulls their full record. This lets support reps verify identities before attempting any actions, like making a booking.

**What data does create_booking require?**
`create_booking` requires three things: the product ID, the date of the event, and the customer's details. You must provide all three to complete a reservation successfully.

**Is get_booking for current bookings only?**
No, `get_booking` works anytime you have a booking ID. It retrieves the full history and status of that specific reservation, whether it's pending or confirmed.

**What do I need to know about authentication when using `list_products`?**
You must provide a valid Smeetz API Key for the server to run. If the key fails validation, the tool will immediately return an authentication error code. You'll need to check your credentials within the Vinkius marketplace settings.

**If I use `get_booking` with a booking ID that doesn't exist, what happens?**
The server returns a clear 'Booking Not Found' status. This means the system checked Smeetz and found no record matching that specific booking ID.

**How do I check if a product is currently available or sold out after running `list_products`?**
The initial list provides general metadata. To confirm current availability, the tool includes an inventory status field for each item. You can use this data to filter out products that are marked as sold out.

**Are there rate limits when calling `list_customers` repeatedly in a single session?**
Yes, the underlying Smeetz API enforces standard rate limits. If you hit the limit while listing many customers, your AI client will receive a 429 error code. You'll need to pause and try again after a short wait.

**Can I retrieve full metadata for a specific product?**
Yes, use the `get_product` tool with the product ID to get all technical and commercial details associated with that item.

**Is it possible to automate new bookings through the AI?**
Absolutely. The `create_booking` tool allows you to specify the product, date, ticket types, and customer information to generate a booking instantly.

**How can I access customer information?**
You can use `list_customers` to browse your customer database or `get_customer` with a specific ID to see a detailed profile and history.