---
title: "Requiply MCP use cases"
description: "Questions to ask an assistant connected to Requiply, the MCP tools that answer them, and trimmed examples of what each tool returns."
canonical_url: "https://requiply.com/docs/en/ai/mcp/use-cases"
---
# Requiply MCP use cases

> Questions to ask an assistant connected to Requiply, the MCP tools that answer them, and trimmed examples of what each tool returns.

What you can ask an assistant connected to Requiply, and which [tools](https://requiply.com/docs/en/ai/mcp/tools) it uses to answer.

## Example questions

<table>
<thead>
  <tr>
    <th>
      What you can ask an assistant
    </th>
    
    <th>
      Requiply MCP tools likely used
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      "How did we do last month?"
    </td>
    
    <td>
      <strong>
        <code>
          whoami
        </code>
      </strong>
      
      , <strong>
        <code>
          reports_run
        </code>
      </strong>
      
       (<code>
        bookings_summary
      </code>
      
      , <code>
        revenue
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "What equipment is available this weekend?"
    </td>
    
    <td>
      <strong>
        <code>
          availability_check
        </code>
      </strong>
    </td>
  </tr>
  
  <tr>
    <td>
      "How much would two cameras cost from Friday to Monday?"
    </td>
    
    <td>
      <strong>
        <code>
          objects_search
        </code>
      </strong>
      
       (<code>
        item_group
      </code>
      
      ), <strong>
        <code>
          pricing_quote
        </code>
      </strong>
    </td>
  </tr>
  
  <tr>
    <td>
      "Which items are under-used?"
    </td>
    
    <td>
      <strong>
        <code>
          reports_run
        </code>
      </strong>
      
       (<code>
        utilization
      </code>
      
      , <code>
        top_items
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Who owes us money?"
    </td>
    
    <td>
      <strong>
        <code>
          reports_run
        </code>
      </strong>
      
       (<code>
        outstanding
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Which July weddings with a drone are still unpaid?"
    </td>
    
    <td>
      <strong>
        <code>
          describe
        </code>
      </strong>
      
       (<code>
        booking
      </code>
      
      ), <strong>
        <code>
          get_guidance
        </code>
      </strong>
      
       (<code>
        query_language
      </code>
      
      ), <strong>
        <code>
          objects_query
        </code>
      </strong>
    </td>
  </tr>
  
  <tr>
    <td>
      "Revenue per month this year, with the median booking"
    </td>
    
    <td>
      <strong>
        <code>
          objects_query
        </code>
      </strong>
      
       (<code>
        groupBy
      </code>
      
       month, <code>
        sum
      </code>
      
      , <code>
        median
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Which regular clients have not booked since June?"
    </td>
    
    <td>
      <strong>
        <code>
          objects_query
        </code>
      </strong>
      
       (<code>
        client
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Show me booking #24"
    </td>
    
    <td>
      <strong>
        <code>
          objects_get
        </code>
      </strong>
      
       (<code>
        booking
      </code>
      
      , <code>
        idKind="org"
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Set the event type on booking #24 to Wedding"
    </td>
    
    <td>
      <strong>
        <code>
          describe
        </code>
      </strong>
      
       (<code>
        booking
      </code>
      
      ), <strong>
        <code>
          objects_manage
        </code>
      </strong>
      
       (<code>
        set_custom_fields
      </code>
      
      , preview then confirm)
    </td>
  </tr>
  
  <tr>
    <td>
      "Draft a booking request for two cameras next Friday"
    </td>
    
    <td>
      <strong>
        <code>
          availability_check
        </code>
      </strong>
      
      , <strong>
        <code>
          bookings_manage
        </code>
      </strong>
      
       (preview, then confirm)
    </td>
  </tr>
  
  <tr>
    <td>
      "Which conversations are waiting for us?"
    </td>
    
    <td>
      <strong>
        <code>
          objects_search
        </code>
      </strong>
      
       (<code>
        conversation
      </code>
      
      , <code>
        view="needs_human"
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Reply to Olena that the tent is free on Saturday"
    </td>
    
    <td>
      <strong>
        <code>
          objects_get
        </code>
      </strong>
      
       (<code>
        conversation
      </code>
      
      ), <strong>
        <code>
          conversations_manage
        </code>
      </strong>
      
       (<code>
        reply
      </code>
      
      , preview then confirm)
    </td>
  </tr>
  
  <tr>
    <td>
      "Give this chat back to the AI"
    </td>
    
    <td>
      <strong>
        <code>
          conversations_manage
        </code>
      </strong>
      
       (<code>
        update
      </code>
      
      , <code>
        handler="ai"
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "What did the team mention me in?"
    </td>
    
    <td>
      <strong>
        <code>
          objects_search
        </code>
      </strong>
      
       (<code>
        comment
      </code>
      
      , <code>
        mentionsMe=true
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Leave a note on booking #24 for Andrii to check the cables"
    </td>
    
    <td>
      <strong>
        <code>
          whoami
        </code>
      </strong>
      
       (members), <strong>
        <code>
          comments_manage
        </code>
      </strong>
      
       (<code>
        add
      </code>
      
       with a mention, preview then confirm)
    </td>
  </tr>
  
  <tr>
    <td>
      "How many SD cards do we have left?"
    </td>
    
    <td>
      <strong>
        <code>
          objects_search
        </code>
      </strong>
      
       (<code>
        sale_item
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Record a sale of two battery packs to Emma, paid in person"
    </td>
    
    <td>
      <strong>
        <code>
          objects_search
        </code>
      </strong>
      
       (<code>
        sale_item
      </code>
      
      , <code>
        client
      </code>
      
      ), <strong>
        <code>
          sales_manage
        </code>
      </strong>
      
       (preview, then confirm)
    </td>
  </tr>
  
  <tr>
    <td>
      "Which sales are still unpaid?"
    </td>
    
    <td>
      <strong>
        <code>
          objects_search
        </code>
      </strong>
      
       (<code>
        sale
      </code>
      
      , <code>
        unpaid=true
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "Write a confirmation email that shows the deposit only when there is one"
    </td>
    
    <td>
      <strong>
        <code>
          get_guidance
        </code>
      </strong>
      
       (<code>
        email_template_macros
      </code>
      
      ), <strong>
        <code>
          templates_preview
        </code>
      </strong>
      
      , <strong>
        <code>
          templates_manage
        </code>
      </strong>
      
       (create)
    </td>
  </tr>
  
  <tr>
    <td>
      "Send a reminder 24 hours before pickup"
    </td>
    
    <td>
      <strong>
        <code>
          get_guidance
        </code>
      </strong>
      
       (<code>
        workflow_recipes
      </code>
      
      ), <strong>
        <code>
          objects_search
        </code>
      </strong>
      
       (<code>
        message_template
      </code>
      
      ), <strong>
        <code>
          workflows_validate
        </code>
      </strong>
      
      , <strong>
        <code>
          workflows_manage
        </code>
      </strong>
      
       (create)
    </td>
  </tr>
  
  <tr>
    <td>
      "What are our working hours?"
    </td>
    
    <td>
      <strong>
        <code>
          settings_get
        </code>
      </strong>
      
       (<code>
        working_hours
      </code>
      
      )
    </td>
  </tr>
  
  <tr>
    <td>
      "We are closed on Sundays from now on"
    </td>
    
    <td>
      <strong>
        <code>
          settings_manage
        </code>
      </strong>
      
       (<code>
        working_hours
      </code>
      
      , preview then confirm)
    </td>
  </tr>
  
  <tr>
    <td>
      "How do I set up online payments?"
    </td>
    
    <td>
      <strong>
        <code>
          search_help
        </code>
      </strong>
      
      , <strong>
        <code>
          get_guidance
        </code>
      </strong>
      
       (<code>
        app_navigation
      </code>
      
      )
    </td>
  </tr>
</tbody>
</table>

## Use cases with example returns

Each use case below shows what you might ask the assistant, which tool answers it, and a trimmed example of the structured JSON the tool returns. The assistant turns that JSON into a plain-language answer.

<note>

Examples are illustrative. Long fields (image URLs, ids) are shortened, client details are anonymized, and lists are trimmed. The field names and shapes match what the tools actually return.

</note>

### Understand the business

**Ask:** "Give me an overview of the business." → **whoami**

<details>
<summary>

Example return

</summary>

```json
{
  "organization": {
    "name": "Acme Rentals",
    "currency": "UAH",
    "language": "uk",
    "timezone": "Europe/Kyiv",
    "tier": "advanced",
    "workingHours": [
      { "day": "monday", "startTime": "09:00", "endTime": "18:00", "isWorkingDay": true },
      { "day": "sunday", "startTime": "00:00", "endTime": "23:59", "isWorkingDay": false }
    ]
  },
  "locations": [
    { "name": "Main Studio", "city": "Lviv", "country": "Ukraine", "isDefault": true }
  ],
  "supportedPaymentMethods": ["payOnPickup", "monobank"],
  "stats": { "totalClients": 30, "totalItemGroups": 9, "bookingsActiveNow": 0, "bookingsUpcoming": 1 },
  "caller": { "kind": "user", "name": "Olena K.", "isAdmin": true },
  "access": {
    "objects": { "booking": "write", "client": "write", "item_group": "read", "workflow": "write" },
    "reports": true,
    "settings": "write"
  },
  "members": [{ "userId": "8c1d…", "name": "Olena K.", "isAdmin": true }]
}
```

</details>

### Check what's free for a date range

**Ask:** "What can we offer June 19–21?" → **availability_check** with `mode="items"`

Returns only item groups with at least one unit free across every day of the range.

<details>
<summary>

Example return

</summary>

```json
{
  "items": [
    {
      "id": "80e9332d-…",
      "name": "ATEM Mini Pro",
      "sku": "ATEM-MIPR",
      "priceType": "day",
      "basePrice": 400,
      "currency": "UAH",
      "totalQuantity": 1,
      "availableQuantity": 1,
      "pricingTiers": []
    }
  ],
  "nextCursor": null
}
```

</details>

### Find a booking by its number

**Ask:** "What is in booking #9?" → **objects_get** with `objectType="booking"`, `ids=[9]`, `idKind="org"`

<details>
<summary>

Example return

</summary>

```json
{
  "objectType": "booking",
  "results": [
    {
      "id": 9,
      "record": {
        "id": 253,
        "reservationOrgId": 9,
        "startDate": "2026-07-01T10:00:00+00:00",
        "endDate": "2026-07-03T10:00:00+00:00",
        "totalCost": 700,
        "currency": "UAH",
        "items": [{ "groupId": "d73e…", "name": "Rode Procaster", "quantity": 1 }],
        "services": [],
        "payments": []
      }
    }
  ]
}
```

</details>

### Review a period's performance

**Ask:** "How did we do this year?" → **reports_run** with `report="bookings_summary"`

<details>
<summary>

Example return

</summary>

```json
{
  "report": "bookings_summary",
  "currency": "UAH",
  "dateFrom": "2026-01-01",
  "dateTo": "2026-09-08",
  "totals": { "totalBookings": 12, "totalRevenue": 41000, "avgOrderValue": 3416.67, "medianOrderValue": 2800 },
  "rates": { "cancellationRate": 0.08, "completionRate": 0.75 },
  "timing": { "avgLeadTimeDays": 6.4, "avgDurationDays": 2.1 },
  "byStatus": [{ "statusName": "Completed", "count": 9, "percentage": 75 }]
}
```

</details>

### Draft a booking request (write)

**Ask:** "Reserve the ATEM Mini Pro for October 6–8 for [jordan.lee@example.com](mailto:jordan.lee@example.com)."

The assistant calls **bookings_manage** with `operation="create_request"` and no `confirmed` flag. The preview checks availability, prices the kit, and returns the summary to show you.

<details>
<summary>

Example return (preview)

</summary>

```json
{
  "applied": false,
  "operation": "create_request",
  "preview": {
    "startDate": "2026-10-06T10:00:00",
    "endDate": "2026-10-08T18:00:00",
    "deliveryType": "pickup",
    "client": { "name": "Jordan", "email": "jordan.lee@example.com" },
    "lineItems": [{ "name": "ATEM Mini Pro", "quantity": 1, "unitPrice": 400, "unitCount": 3, "subtotal": 1200 }],
    "total": 1200,
    "currency": "UAH",
    "status": "Request (pending staff approval; inventory is not held)"
  },
  "warnings": [],
  "message": "Nothing was saved. Show the preview to the user, then call again with confirmed=true to apply it."
}
```

</details>

After you approve, the same call with `confirmed=true` creates the request and returns the booking number.

<details>
<summary>

Example return (confirmed)

</summary>

```json
{
  "applied": true,
  "operation": "create_request",
  "preview": { "reservationId": 318, "reservationOrgId": 24, "totalCost": 1200, "currency": "UAH" },
  "message": "Booking request #24 created as a request; staff will review it."
}
```

</details>

### Write an email template with macros

**Ask:** "Create a confirmation email that shows the deposit only when we take one."

1. **get_guidance** with `topics=["email_template_macros"]` returns every macro, including your custom fields.
2. **templates_preview** with the draft renders it against a recent booking without saving anything. Unknown macros are listed so the assistant can fix them before saving.
3. **templates_manage** with `operation="create"` shows the validated template; the confirmed call saves it.

<details>
<summary>

Example return (preview)

</summary>

```json
{
  "bookingId": 253,
  "bookingNumber": 9,
  "subject": "Booking #9 confirmed",
  "html": "<p>Hi Alex, your total is 700,00 ₴.</p><table>…</table>",
  "text": "Hi Alex, your total is 700,00 ₴. …",
  "unknownMacros": ["{{totalPrice}}"]
}
```

</details>

### Set up an automation

**Ask:** "Email the confirmation template when a booking becomes Confirmed."

The assistant resolves the status id with **objects_search** (`reservation_status`) and the template id with **objects_search** (`email_template`), then checks the draft with **workflows_validate** and calls **workflows_manage** with `operation="create"`. The preview shows the resolved names so you can check them before confirming.

<details>
<summary>

Example return (preview)

</summary>

```json
{
  "applied": false,
  "operation": "create",
  "preview": {
    "name": "Confirmation email",
    "isEnabled": true,
    "triggerType": "status_reached",
    "triggerConfig": { "statusId": "5b1d0c3e-…" },
    "actionType": "send_email",
    "actionConfig": { "templateId": "2a967b5e-…" },
    "filtersConfig": null,
    "resolved": { "triggerConfig.statusId": "Confirmed", "actionConfig.templateId": "Booking confirmation" }
  },
  "warnings": [],
  "message": "Nothing was saved. Show the preview to the user, then call again with confirmed=true to apply it."
}
```

</details>

### Change a setting

**Ask:** "Take a 20% deposit on every booking." → **settings_manage** with `section="deposits"` and a `patch` of the fields to change

<details>
<summary>

Example return (preview)

</summary>

```json
{
  "applied": false,
  "operation": "update",
  "objectType": "settings.deposits",
  "preview": { "depositMethod": "percentage", "depositValue": 20 },
  "changes": [
    { "field": "depositMethod", "before": "none", "after": "percentage" },
    { "field": "depositValue", "before": 0, "after": 20 }
  ],
  "message": "Nothing was saved. Show the preview to the user, then call again with confirmed=true to apply it."
}
```

</details>


## Sitemap

See the full [sitemap](https://requiply.com/docs/sitemap.md) for all pages.
