AI-native scheduling and booking: check availability, book meetings, share links.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Your Meet.bot API key. Format: Bearer YOUR_API_KEY
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Book a new meeting slot
The URL of the scheduling page (e.g. https://meet.bot/your-page)
Start time in ISO 8601 format (e.g. 2025-03-10T14:00:00Z); must be an available slot
Full name of the guest
Email address of the guest (used for calendar invite and confirmation)
Optional notes to include with the meeting (e.g. agenda, call details)
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Book a new meeting slot
| Argument | Type | Description |
|---|---|---|
| page* | string | The URL of the scheduling page (e.g. https://meet.bot/your-page) |
| notes | string | Optional notes to include with the meeting (e.g. agenda, call details) |
| start* | string | Start time in ISO 8601 format (e.g. 2025-03-10T14:00:00Z); must be an available slot |
| guest_name* | string | Full name of the guest |
| guest_email* | string | Email address of the guest (used for calendar invite and confirmation) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"page",
"guest_email",
"guest_name",
"start"
],
"properties": {
"page": {
"type": "string",
"description": "The URL of the scheduling page (e.g. https://meet.bot/your-page)"
},
"notes": {
"type": "string",
"description": "Optional notes to include with the meeting (e.g. agenda, call details)"
},
"start": {
"type": "string",
"description": "Start time in ISO 8601 format (e.g. 2025-03-10T14:00:00Z); must be an available slot"
},
"guest_name": {
"type": "string",
"description": "Full name of the guest"
},
"guest_email": {
"type": "string",
"description": "Email address of the guest (used for calendar invite and confirmation)"
}
},
"additionalProperties": false
}Delete one of the authenticated user's webhooks by id
| Argument | Type | Description |
|---|---|---|
| id* | number | The webhook id to delete |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "The webhook id to delete"
}
},
"additionalProperties": false
}Get available booking slots for a scheduling page
| Argument | Type | Description |
|---|---|---|
| end | string | End date for the range in YYYY-MM-DD format |
| page* | string | The URL of the scheduling page (e.g. https://meet.bot/your-page) |
| count | number | Maximum number of slots to return (defaults to server limit) |
| start | string | Start date for the range in YYYY-MM-DD format |
| timezone | string | IANA timezone for slot times (e.g. America/New_York, Europe/London) |
| booking_link | boolean | If true, include shareable booking links in the response |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"page"
],
"properties": {
"end": {
"type": "string",
"description": "End date for the range in YYYY-MM-DD format"
},
"page": {
"type": "string",
"description": "The URL of the scheduling page (e.g. https://meet.bot/your-page)"
},
"count": {
"type": "number",
"description": "Maximum number of slots to return (defaults to server limit)"
},
"start": {
"type": "string",
"description": "Start date for the range in YYYY-MM-DD format"
},
"timezone": {
"type": "string",
"description": "IANA timezone for slot times (e.g. America/New_York, Europe/London)"
},
"booking_link": {
"type": "boolean",
"description": "If true, include shareable booking links in the response"
}
},
"additionalProperties": false
}Get information about a specific scheduling page
| Argument | Type | Description |
|---|---|---|
| page* | string | The URL of the scheduling page (e.g. https://meet.bot/your-page) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"page"
],
"properties": {
"page": {
"type": "string",
"description": "The URL of the scheduling page (e.g. https://meet.bot/your-page)"
}
},
"additionalProperties": false
}Get all scheduling pages for the authenticated user
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}Check if the Meet.bot API client is healthy and the Bearer token is valid
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}List the authenticated user's outbound booking webhooks (fired on booking_received, booking_rescheduled and booking_cancelled)
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"additionalProperties": false
}Create or update an outbound booking webhook. Omit id to create (webhook_url required); pass id to update. Meet.bot POSTs a JWT-signed (HS256) JSON payload to the URL on each booking event.
| Argument | Type | Description |
|---|---|---|
| id | number | Webhook id to update; omit to create a new one |
| pages | array | Page ids to cover when coverage='selected' |
| scope | string | 'self' (default) your own pages; 'team' (team admins only) also fires for teammates' bookings |
| coverage | string | 'all' (default) fires for every page including ones created later; 'selected' only for the pages in `pages` |
| is_active | boolean | Whether the webhook is active (default true) |
| description | string | Optional label for the webhook |
| webhook_url | string | HTTPS URL we POST booking events to (required when creating) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "number",
"description": "Webhook id to update; omit to create a new one"
},
"pages": {
"type": "array",
"items": {
"type": "number"
},
"description": "Page ids to cover when coverage='selected'"
},
"scope": {
"enum": [
"self",
"team"
],
"type": "string",
"description": "'self' (default) your own pages; 'team' (team admins only) also fires for teammates' bookings"
},
"coverage": {
"enum": [
"all",
"selected"
],
"type": "string",
"description": "'all' (default) fires for every page including ones created later; 'selected' only for the pages in `pages`"
},
"is_active": {
"type": "boolean",
"description": "Whether the webhook is active (default true)"
},
"description": {
"type": "string",
"description": "Optional label for the webhook"
},
"webhook_url": {
"type": "string",
"description": "HTTPS URL we POST booking events to (required when creating)"
}
},
"additionalProperties": false
}