Calendly is the scheduling layer many sales, success, and recruiting teams build their workflows on. Connecting Calendly to clariBI surfaces every event type, scheduled meeting, invitee, and routing-form submission so booking-volume, no-show, and conversion questions get answered against the source of truth.
Why connect Calendly
Calendly's reports cover totals and averages, but rarely the cross-cuts analysts ask for: bookings by lead-source segment, no-show rate by host, conversion from routing-form submission to booked meeting. Those usually require CSV exports.
With Calendly connected, you can ask "Which event types had the highest no-show rate last quarter?", "How many demo requests turned into booked meetings in November?", or "Which routing-form answer pattern correlates with closed-won deals?" and the AI engine routes through Calendly. Calendly stays the system of record; clariBI never books, cancels, or modifies anything.
How the connection works
clariBI talks to Calendly through its hosted MCP server at https://mcp.calendly.com. Authentication uses an OAuth flow that clariBI registers itself for (no developer console setup on your side). Tokens stay encrypted server-side and never leave clariBI in clear form.
sequenceDiagram
actor U as You
participant C as clariBI
participant V as Calendly
U->>C: Click Authorize with Calendly
C->>V: Open OAuth authorization
V-->>U: Grant read access?
U->>V: Approve
V-->>C: Authorization code
C->>V: Exchange code for tokens
V-->>C: Access + refresh tokens
C->>C: Encrypt and store credentials
C-->>U: Connection ready
Available tools
The AI engine selects from these read-only Calendly tools during analyses. None of them modify data in Calendly.
| Tool | Returns | Example question |
|---|---|---|
event_types-list_event_types | Event types defined for the user or organization (the booking-page templates). | List all our active event types. |
event_types-get_event_type | Configuration for a specific event type (duration, location, custom questions). | Show me the configuration for the demo event type. |
event_types-list_event_type_available_times | Open booking slots for an event type within a time window. | What slots are open on the 30-minute intro this week? |
event_types-list_event_type_availability_schedule | The availability schedule attached to an event type. | Which availability schedule does our discovery call use? |
locations-list_user_meeting_locations | Meeting locations configured for a user (Zoom, Google Meet, in-person). | List all meeting location options on my account. |
meetings-list_events | Scheduled events for a user or organization with filters for time range and status. | List all scheduled meetings last month for the sales team. |
meetings-get_event | A single scheduled event with start/end times, location, and invitee count. | Show me the details for the meeting on Tuesday at 2pm. |
meetings-list_event_invitees | Invitees on a scheduled event, with email, name, status, and custom answers. | Who is on the call with Acme Corp tomorrow? |
meetings-get_event_invitee | A single invitee record with their custom-question answers. | What did this invitee answer to the qualification question? |
meetings-get_invitee_no_show | No-show record for an invitee. | Was this invitee marked as a no-show? |
availability-list_user_availability_schedules | Availability schedules a user owns. | List my availability schedules. |
availability-get_user_availability_schedule | Detail of one availability schedule including weekly rules and overrides. | Show me my Mountain Time availability schedule. |
availability-list_user_busy_times | Blocked / busy time intervals for a user across calendars. | When am I busy next week? |
routing_forms-list_routing_forms | Routing forms owned by the organization (Teams plan and above). | List our pricing-page routing forms. |
routing_forms-get_routing_form | Configuration of a specific routing form. | Show the configuration of the demo-request routing form. |
routing_forms-list_routing_form_submissions | Submissions on a routing form, with answers and routing decisions. | Who submitted the demo-request form last month? |
routing_forms-get_routing_form_submission | A single routing form submission with full answer payload. | Show me the details for that submission. |
users-get_current_user | The authenticated Calendly user (you). | Which Calendly user am I connected as? |
users-get_user | A specific user record by ID. | Show me user details for a teammate. |
organizations-get_organization | The organization record (plan, region, member count). | Show me our Calendly organization details. |
organizations-list_organization_memberships | Members of the organization with role, email, and join date. | List all members of our Calendly organization. |
organizations-get_organization_membership | A specific organization membership record. | Show me the membership record for this teammate. |
organizations-list_organization_invitations | Pending and accepted invitations on the organization. | Who has pending invitations to our Calendly? |
Data flow during analysis
When you ask a question that maps to Calendly, the AI engine routes to the right tool, reads the result, and pairs the answer with a chart you can pin to a dashboard.
sequenceDiagram
actor U as You
participant C as clariBI
participant AI as AI engine
participant V as Calendly
U->>C: Ask a question about meeting and scheduling data
C->>AI: Plan the analysis
AI->>V: Call the right tool
V-->>AI: Tool result
AI->>AI: Summarize and chart
C-->>U: Answer plus visual
Setting up the connection
- Open Data Sources in the clariBI sidebar.
- Click Add data source.
- Open the MCP Servers tab.
- Click the Calendly card.
- Click Authorize with Calendly.
- Sign in to Calendly in the popup window and grant the requested read scopes.
- Back in clariBI, give your data source a name.
- Click Finish.
Permissions and data access
clariBI requests the mcp:scheduling:read scope only. Read access covers event types, scheduled meetings, invitees, availability schedules, routing forms (Teams plan and above), and organization memberships. No bookings can be created, cancelled, or modified. Disconnect anytime from Settings → Integrations or revoke access from your Calendly account settings.
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
| "Could not register with Calendly" | A network blip during dynamic client registration. | Wait a minute and click Authorize again. clariBI retries registration on the next attempt. |
| "Routing forms returned empty" | Routing forms require a Calendly Teams plan or above. The AI engine reported nothing because your plan does not include the feature. | Upgrade your Calendly plan to Teams or use the routing-form-free metrics (event types, meetings, invitees) instead. |
| "Analysis returns no meetings" | The selected time range fell outside what Calendly returns by default, or the connected user has no meetings in that range. | Pick a different range or re-ask scoping to "all teams" instead of a specific user. |