# SuperSaaS MCP

> SuperSaaS connects your booking logic directly into any AI agent. Use this server to manage schedules, create new appointments, update existing bookings, and check account usage without leaving your chat interface. It's built for automating operational tasks like scheduling and resource management.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** appointment-booking, scheduling-software, availability-management, booking-system, user-database, time-management

## Description

Listen up. This server connects your booking logic directly into whatever AI agent you're running. You use it to manage schedules, create appointments, update bookings, and check account usage without ever leaving your chat window. It handles the actual operational stuff—the resource management, the scheduling math. 

When you connect it, your agent gets full control over SuperSaaS data. Here’s what it can do:

### Managing Calendars and Schedules
You can start by seeing every available calendar template in `list_schedules`. Need to know more about one specific booking system? You grab the full details with `get_schedule`. If you want to track who changed what on any given schedule, `list_changes` pulls those recent modification records. 

### Handling Appointments and Users
When it comes to bookings, your agent can do a ton. It generates a brand new, confirmed appointment using `create_appointment`, requiring just the name, date, and time inputs. You grab all the specific info on any single booking ID with `get_appointment_details`. If you need to change something about an existing slot—say, rescheduling it or swapping out attendees—you run `update_appointment`. If a booking is canceled or deleted, your agent removes it entirely using `delete_appointment`. To see everything booked into one calendar at once, use `list_appointments` against a specific schedule. For user verification, you can pull the profile and detail data for a single person with `get_user`, or list every registered account in the whole system via `list_account_users`.

### System Status Checks
It's also built to handle admin tasks. You check your current SuperSaaS credit balance and usage metrics directly through the agent using `get_account_balance`. This means you don't have to leave the chat to see if you got enough credits for another booking.

## Tools

### delete_appointment
Removes an existing appointment from the schedule entirely.

### get_schedule
Gets full details about a specific calendar or scheduling template.

### get_user
Retrieves the profile and detail data for one registered user.

### list_changes
Retrieves recent modifications made to any specific schedule.

### create_appointment
Programmatically creates a brand new booking in your SuperSaaS calendar.

### get_appointment_details
Retrieves all specific information for one given appointment ID.

### get_account_balance
Checks and returns your current SuperSaaS credit balance.

### list_appointments
Lists all appointments that occurred or are scheduled for a given calendar.

### list_schedules
Lists all available calendars and scheduling templates configured in SuperSaaS.

### list_account_users
Provides a list of every registered user account in your system.

### update_appointment
Modifies the details of an existing appointment, such as rescheduling or changing attendees.

## Prompt Examples

**Prompt:** 
```
List all active schedules in my SuperSaaS account.
```

**Response:** 
```
I've retrieved your schedules. You have 3 active calendars, including 'Consultations' and 'Workshop Rooms'.
```

**Prompt:** 
```
Show me all appointments for this week across all schedules with availability gaps.
```

**Response:** 
```
89 appointments this week across 4 schedules. "Consultation Room A" (34 bookings): Monday 92% booked, Tuesday 85%, Wednesday 78%, Thursday 90%, Friday 67%. Gaps: Wednesday 2-4 PM, Friday after 3 PM. "Training Room" (23 bookings): 3 full-day bookings, 4 half-day. "Equipment Rental" (18 reservations): excavator fully booked, crane available Thursday-Friday. "Virtual Meetings" (14 slots): 6 available slots remaining. Total revenue from bookings: $4,560. No-show rate: 3.4% (3 no-shows). Cancellations: 5 (4 rescheduled).
```

**Prompt:** 
```
Create a recurring weekly appointment for team standup meetings every Monday at 9 AM.
```

**Response:** 
```
Recurring appointment created. Name: "Team Standup". Schedule: Virtual Meetings. Day: every Monday at 9:00 AM. Duration: 30 minutes. Recurrence: weekly, no end date. Room: Virtual Meeting Room 1. Attendees: 8 team members notified. Calendar invites: sent via email and iCal. Reminders: 15 minutes before (push notification). Buffer: 10 minutes after. Conflict check: no conflicts detected for next 12 weeks. First occurrence: Monday, May 19 at 9:00 AM. Cancellation policy: 24-hour notice required.
```

## Capabilities

### Manage Schedules
Retrieves a list of all active calendars (schedules) and fetches detailed metadata for any specific schedule.

### View Booking Details
Gets complete information for one specific appointment, including attendee details and time slots.

### Create Bookings
Generates a new, confirmed appointment or booking in your SuperSaaS account using name, date, and time inputs.

### Modify Appointments
Changes specific details of an existing appointment, like rescheduling it or updating the attendee list.

### List All Bookings
Pulls a comprehensive list of appointments tied to a particular schedule for review.

### Track Account Status
Checks your live SuperSaaS account credit balance and usage metrics directly through the agent.

## Use Cases

### The New Client Booking
A new client needs an initial consultation. The agent first uses `list_schedules` to find 'Consultations'. Then, it runs `get_schedule` on that ID to check availability gaps for the next three days. Once a slot is confirmed, the agent executes `create_appointment`, confirming everything instantly.

### Handling Cancellations
A scheduled meeting got cancelled and needs rescheduling. The agent first uses `get_appointment_details` to pull up the original booking data (like attendees). Then, it runs `update_appointment` with the new date/time, keeping all the historical data intact.

### Resource Audit
The ops team needs to know which staff members are registered and what their current utilization looks like. They run `list_account_users` and then use `list_appointments` filtered by department, giving them a clear picture of capacity.

### Checking Capacity Before Deployment
Before launching a new service offering, you need to know how many slots are available. You check the balance using `get_account_balance`, then use `list_schedules` and run specific queries on each calendar via `list_appointments` to gauge overall capacity.

## Benefits

- Need to know if a resource is free? Use `list_schedules` to pull all available calendars first. Then, run `get_schedule` to grab the specific details you need—no more guessing which calendar holds the right room.
- Stop manual entry for every new client. Simply tell your agent, 'Book John Doe on Tuesday at 2 PM.' The server uses `create_appointment` and handles all the necessary ID mapping and confirmation steps behind the scenes.
- Rescheduling is a pain point. Instead of logging into the portal to change something, use `update_appointment`. You just need the appointment ID and the new time; the agent does the rest. It's fast.
- Need an audit trail? Running `list_changes` gives you a log of what happened on a schedule recently. This is better than digging through emails when tracking down who actually booked that slot last week.
- Don't forget the people involved. If you need to verify permissions or just know who exists, use `list_account_users`. Then, check specific details with `get_user` before allowing an agent to book them anything.
- Keep track of your overhead. Use `get_account_balance` any time you're unsure if your AI client has the resources needed to run a complex transaction.

## How It Works

The bottom line is: You tell your agent what needs doing—scheduling, checking balances, or modifying a booking—and it handles the API calls in the background.

1. Subscribe to this server on Vinkius and enter your specific SuperSaaS Account Name and API Key.
2. Your AI client passes a request (e.g., 'What appointments are booked next week?') to the MCP Server.
3. The server executes the necessary tool (`list_appointments`) and returns structured data, which your agent then reads and interprets for you.

## Frequently Asked Questions

**How do I list available calendars using SuperSaaS MCP Server's `list_schedules`?**
Simply call the `list_schedules` tool. It returns a list of all active schedules in your account, giving you their unique IDs and names so you know exactly what resources are available.

**Can I update an appointment without knowing the ID? (SuperSaaS MCP Server)**
No. The `update_appointment` tool requires a specific appointment ID to work correctly. You'll need to use `get_schedule` or `list_appointments` first to find that unique identifier.

**What is the difference between `list_appointments` and `get_appointment_details`?**
`list_appointments` gives you a summary list of many bookings for an entire schedule. `get_appointment_details` drills down into one specific appointment, giving you deep metadata about attendees and rules.

**How do I check my account usage with SuperSaaS MCP Server?**
Use the `get_account_balance` tool. This lets your agent read your current credit balance and usage metrics in real-time, so you never run out of operational capacity.

**How do I properly authenticate when calling `create_appointment`?**
You must provide both your SuperSaaS Account Name and API Key. The server uses these credentials to verify ownership before executing any booking changes, ensuring the request is tied directly to an active account.

**If I use `get_appointment_details` with a non-existent ID, what error should I expect?**
The tool returns a specific 404 'Resource Not Found' status. This confirms the booking ID you provided does not match any active record in your SuperSaaS system.

**Does `list_appointments` allow me to filter results by date range or attendee?**
Yes, it accepts optional filters for both scheduling and attendees. You can narrow the list down using parameters like 'start_date' or a specific user ID so you only get relevant bookings.

**What are the minimum required parameters for the `create_appointment` tool?**
You must provide three core inputs: the target schedule ID, the desired start time, and the end time. Without these three values, the booking action will fail.

**Can I list all my appointments using my AI agent?**
Yes! Use the `list_appointments` tool and provide the Schedule ID. Your agent will retrieve all bookings for that specific calendar.