meetergo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MEETERGO_API_KEY | Yes | Bearer token (rgo-… or ak_live:…) | |
| MEETERGO_TIMEOUT | No | Per-request timeout (seconds) | 30 |
| MEETERGO_USER_ID | No | x-meetergo-api-user-id (Platform API Key only) | |
| MEETERGO_API_BASE | No | Override base URL | https://api.meetergo.com/v4 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_meA | Return the authenticated meetergo user (verifies auth; gives your userId). Call this first to confirm the connector works. |
| list_meeting_typesA | List bookable meeting types (event types) with ids, names, durations, slugs. |
| get_meeting_typeA | Get full config of a single meeting type (branding, CSS mode, redirect, reminders, CRM sync options). |
| create_meeting_typeA | Create a meeting type. meetergo requires a fairly complete Minimal example: { "meetingInfo": { "name": "Discovery Call", "description": "", "duration": 30, "channel": "zoom", "enableRedirect": false, "redirect": "", "passEventDetailsToRedirect": false, "customChannelName": "", "customChannelLink": "", "groupBooking": false, "showAvailableSlots": false, "enrichInvitee": false, "bufferBefore": 0, "bufferAfter": 0, "confirmationButton": {"useConfirmationButton": false, "text": "", "color": "", "link": ""} }, "slug": "discovery-call" } Tip: POST /v4/user creates a user + default meeting type in one call; use this endpoint when you need a specific configuration. |
| update_meeting_typeA | Edit a meeting type (partial update — send only fields you want to change): rename, change duration/buffers, redirect URL, branding color, booking-page password, cancellation/rescheduling policy, CRM sync toggles, etc. Example: {"meetingInfo": {"duration": 60}, "slug": "discovery-call-60"} |
| create_one_time_booking_linkB | Generate a single-use booking link for a meeting type. Returns {id, url, ...}. |
| get_personal_pageA | Get your personal booking page: colors, header image, description, online profiles, meeting-type order. |
| update_personal_pageA | Update your personal page branding & graphics. Supported fields (all optional): useCustomColors (bool), primaryColor (str), secondaryColor (str), headerImage (url str or null), description (str), showAllMeetingTypes (bool), meetingTypeOrder (list[str]), onlineProfiles: { linkedIn, facebook, twitter, instagram, xing, phone, email, addressStreet, addressCity, addressPostalCode, addressCountry, customLinks: [{name, url, icon}] } Example: {"useCustomColors": true, "primaryColor": "#2E4A3F", "headerImage": "https://.../hero.jpg"} Note: covers brand colors, header image and profile links. Meeting-type pages also have CSS modes (see update_meeting_type -> cssSetting), but arbitrary raw CSS is configured in the meetergo dashboard, not this API. |
| get_availabilityB | Open bookable slots for a meeting type in a date range. Args: meeting_type_id: Meeting type to check. start: "YYYY-MM-DD". end: "YYYY-MM-DD". timezone: IANA tz for the returned times. |
| create_bookingA | Book an appointment (metered/billed by meetergo). Args: meeting_type_id: Meeting type being booked. start: ISO 8601, e.g. "2026-07-15T14:00:00Z". attendee_email / attendee_firstname / attendee_lastname: attendee. timezone: optional IANA tz of attendee. notes: optional booking note. |
| list_appointmentsA | List appointments (paginated). Args: page: 0-indexed page number (0 = first page). page_size: items per page (1-100). start / end: optional ISO date/time bounds. search: optional free-text search. status: optional status filter. meeting_type_id: optional filter by meeting type. sort_by: "appointment.start" | "appointment.createdAt". sort_direction: "ASC" | "DESC". |
| get_appointmentB | Get full details of a single appointment (attendees, hosts, notes, transcript). |
| cancel_appointmentB | Cancel an appointment. For group bookings, pass attendee_id (single) or cancel_all=True (whole appointment). |
| reschedule_appointmentC | Move an appointment to a new start time (duration unchanged). |
| update_appointment_notesC | Add/replace the host-side note on an appointment. |
| update_meeting_transcriptionA | Store a meeting transcript and/or AI summary (markdown) on an appointment. meetergo does NOT record meetings itself — feed this from a notetaker (Granola, Fireflies, etc.). Only provided fields are sent; omit a field to leave it unchanged. Args: appointment_id: The appointment. transcription: Full transcript in markdown. summary: AI-generated summary in markdown. |
| send_quick_emailA | Send a one-off email to an attendee (e.g. a manual/AI-drafted follow-up). Rate limited to 5 per 5 minutes. Args: attendee_id: Attendee to email (from a booking/webhook payload). title: Subject line. content: Body. |
| create_routing_formA | Create a routing form / multi-step funnel with branching logic.
A qualifier routes the visitor based on conditions: { "routingAction": "eventRedirect", "meetingTypeId": "...", "expression": {"operator":"and","operands":[ {"operator":"equals","target":"attendeeOther", "customTarget":"Company Size","value":"enterprise"}]} } routingAction ∈ eventRedirect | customPage | externalRedirect | contactForm | requestCallback | instantCall | formRedirect. Include one qualifier with "isFallback": true as the default. Field types include text/email/phone/select/ radio/checkbox/file/signature/pdf-template/currency/rating and more. |
| list_routing_formsB | List routing forms. |
| get_routing_formC | Get a routing form's full definition. |
| update_routing_formA | Update a routing form. Qualifiers use declarative sync (items with |
| delete_routing_formB | Delete a routing form. |
| send_routing_formA | Send a routing form to a recipient (one-time link). Returns {publicUrl, status}. Args: form_id: Form to send. recipient_name: Recipient display name. email: Required if delivery_method="email". phone: Required if delivery_method="sms". message: Optional cover message. delivery_method: "email" | "sms" | "link" (link = generate URL only). |
| list_form_recipientsC | List recipients of a form with status (sent/opened/completed) and timestamps. |
| create_data_fieldA | Create a reusable form data field (company-scoped). Example: {"label":"Budget Range","fieldType":"select","required":true, "options":[{"label":"< $10k","value":"small"}, {"label":"$50k+","value":"large"}]} |
| list_data_fieldsB | List reusable form data fields. |
| create_contactA | Create a CRM contact (either email or phone_number is required). Args: first_name, last_name, email, phone_number: basics. tags: labels like ["Lead", "Enterprise"]. notes: internal notes. additional_data: custom fields (e.g. {"revenueBand": "$1-5M"}). |
| search_contactsA | Search/list CRM contacts (paginated). Args: search_term: match name/email/phone. tags: filter by tags. owner_id: filter by account owner. sort_by: firstName|lastName|email|createdAt. sort_order: ASC|DESC. page, limit: pagination (limit max 100). |
| get_contactA | Get a contact's full record (incl. linked appointments and form answers). Look up by contact_id OR by attendee_id (from a booking webhook). |
| update_contactB | Update a contact (partial). Example: {"tags":["Lead","Qualified"], "notes":"Interested in premium plan"}. |
| delete_contactC | Delete a CRM contact. |
| bulk_create_contactsA | Bulk-create contacts (e.g. a CSV import). Each item like the create_contact body: {"firstName","lastName","email","phoneNumber","tags","notes"}. |
| list_webhooksA | List webhook endpoints (max 6 per company). |
| create_webhookA | Register a webhook to drive automations (feed bookings/forms into a CRM, email drafts, your website, etc.). Args: endpoint: HTTPS URL to receive POSTs. event_types: any of booking_created, booking_cancelled, booking_rescheduled, form_submission, new_employee. description: optional label. |
| update_webhookB | Update a webhook (endpoint / description / eventTypes — all optional). |
| delete_webhookC | Delete a webhook endpoint. |
| list_calendar_connectionsA | List connected calendars (confirm your Proton Calendar CalDAV link is active). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/chill-lichen/meetergo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server