# Chmeetings — how to use (mcp.ai)

Connect your Chmeetings account and use 28 tools for event management straight from your AI agent. Connect with your own API key. CHMeetings is a comprehensive church management platform offering event planning, member engagement tracking, donation management, volunteer coordination, and communication tools for faith-based organizations and religious communities.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_chmeetings?ms=1787293560000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `chmeetings_attendee_create`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/chmeetings`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/chmeetings/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/chmeetings/attendee/create` — Tool to invite a new attendee to a specified meeting. Use when you need to add attendees before the meeting begins.
  - body: { email: string, phone?: string, last_name: string, first_name: string, meeting_id: string }
- `POST https://api.mcp.ai/api/chmeetings/attendee/get` — Tool to retrieve details for a specific attendee. Use when you have an attendee_id and need the attendee's full profile.
  - body: { attendee_id: string }
- `POST https://api.mcp.ai/api/chmeetings/create/meeting` — Tool to create a new meeting in ChMeetings. Use when you have all meeting details and need to schedule it via the ChMeetings API.
  - body: { end: string, name: string, notes?: string, start: string, location?: string }
- `POST https://api.mcp.ai/api/chmeetings/create/organization` — Tool to create a new organization.
  - body: { organization: object }
- `POST https://api.mcp.ai/api/chmeetings/create/reminder` — Tool to create/schedule a reminder for a meeting in ChMeetings.
  - body: { extra?: object, title?: string, message?: string, send_at?: string, channels?: string[], timezone?: string, meeting_id: string, recipient_ids?: string[] }
- `POST https://api.mcp.ai/api/chmeetings/delete/meeting/attendee` — Tool to remove an attendee from a meeting. Use after confirming attendee details.
  - body: { meeting_id: string, attendee_id: string }
- `POST https://api.mcp.ai/api/chmeetings/list/meeting/attendees` — Tool to list attendees of a meeting. Use when you need to retrieve attendees for a specific meeting.
  - body: { page?: integer, per_page?: integer, meeting_id: string }
- `POST https://api.mcp.ai/api/chmeetings/meetings/delete` — Tool to delete an existing meeting. Use when you have confirmed the meeting ID to permanently remove the meeting.
  - body: { meeting_id: string }
- `POST https://api.mcp.ai/api/chmeetings/meetings/get` — Tool to retrieve a specific meeting's details by ID.
  - body: { id: string }
- `POST https://api.mcp.ai/api/chmeetings/meetings/update` — Tool to update meeting details. Use when modifying an existing meeting; call after retrieving meeting ID.
  - body: { updates: object, meeting_id: string }
- `POST https://api.mcp.ai/api/chmeetings/notifications/send` — Tool to attempt sending a notification.
  - body: { extra?: object, message?: string, subject?: string, channels?: string[], test_mode?: boolean, meeting_id?: string, recipient_ids?: string[] }
- `POST https://api.mcp.ai/api/chmeetings/organization/get` — Tool to get details of a specific organization. Use when you have confirmed the organization ID and need full organization data.
  - body: { organization_id: string }
- `POST https://api.mcp.ai/api/chmeetings/organization/update` — Tool to update an organization's information. Use when modifying an existing organization; call after retrieving organization ID.
  - body: { updates: object, organization_id: string }
- `POST https://api.mcp.ai/api/chmeetings/organizations/delete` — Tool to delete an existing organization. Use when you have confirmed the organization ID to permanently remove the organization.
  - body: { organization_id: string }
- `POST https://api.mcp.ai/api/chmeetings/organizations/list` — Tool to list all organizations. Use when you need to retrieve organization data; no parameters required.
  - body: { page?: integer, search?: string, per_page?: integer }
- `POST https://api.mcp.ai/api/chmeetings/people/delete` — Tool to delete a person record. Use after confirming the person ID you wish to remove.
  - body: { person_id: string }
- `POST https://api.mcp.ai/api/chmeetings/people/list` — Tool to retrieve list of People records from ChMeetings. Use when syncing people data; rate limit 100 requests per 20 seconds.
  - body: { page?: integer, per_page?: integer }
- `POST https://api.mcp.ai/api/chmeetings/people/update` — Tool to update an existing person's information in ChMeetings. Use when modifying person details; call after retrieving person ID via CHMEETINGS_PEOPLE_LIST or CHMEETINGS_PEOPLE_GET. Supported update 
  - body: { updates: object, person_id: string }
- `POST https://api.mcp.ai/api/chmeetings/person/create` — Tool to create a new person record in ChMeetings People directory. Use when you need to add a person before tracking interactions. Required fields: first_name, last_name
  - body: { email?: string, gender?: string, mobile?: string, last_name: string, birth_date?: string, first_name: string, middle_name?: string }
- `POST https://api.mcp.ai/api/chmeetings/person/get` — Tool to retrieve a specific person's details by ID. Use when you have a person ID and need their full record.
  - body: { id: string }
- `POST https://api.mcp.ai/api/chmeetings/reminder/delete` — Tool to cancel a scheduled reminder. Use when you have the reminder ID and want to stop it before execution.
  - body: { reminder_id: string }
- `POST https://api.mcp.ai/api/chmeetings/reminder/get` — Tool to retrieve details of a specific reminder. Use when you have the reminder ID and need its full information.
  - body: { id: string }
- `POST https://api.mcp.ai/api/chmeetings/reminder/update` — Tool to update an existing reminder. Use when adjusting scheduled reminders after creation.
  - body: { id: string, extra?: object, title?: string, message?: string, send_at?: string, channels?: string[], timezone?: string, recipient_ids?: string[] }
- `POST https://api.mcp.ai/api/chmeetings/reminders/list` — Tool to list reminders from ChMeetings. Use when you need to retrieve reminder records; rate limit applies.
  - body: { page?: integer, per_page?: integer }
- `POST https://api.mcp.ai/api/chmeetings/settings/get` — Tool to retrieve account configuration settings. Returns the available lookup values for genders, social statuses, grade levels, and family roles used throughout ChMeetings. Use when you need to know 
  - body: { include_genders?: boolean, include_family_roles?: boolean, include_grade_values?: boolean, include_social_statuses?: boolean }
- `POST https://api.mcp.ai/api/chmeetings/settings/update` — Tool to update account settings. Use when updating account-level preferences after authentication.
  - body: { settings: object }
- `POST https://api.mcp.ai/api/chmeetings/update/attendee/role` — Tool to update the role of an attendee. Use when you need to change an existing attendee's role after creation.
  - body: { role: string, attendee_id: string }
- `POST https://api.mcp.ai/api/chmeetings/user/profile/get` — Tool to retrieve current user's profile information. Use when you need to get the authenticated user's profile details.

## Example prompts
- "What can I do in Chmeetings?"
- "Show me a summary of my Chmeetings account"

## More
- Page: https://mcp.ai/chmeetings
- Agent spec (llms.txt): https://mcp.ai/chmeetings/llms.txt
- Postman collection: https://mcp.ai/chmeetings/postman.json
