Integration

ChMeetings integration

ChMeetings is a church management system. Read and manage people (profiles, notes, photos, families), groups and their members, follow-up tasks, contributions with their batches, giving funds and payment methods, events with their occurrences, attendance and check-ins, posts with their comments and likes, organizations (diocese, church, ministries), webhook subscriptions, and read the accounting ledger (accounts, categories, funds, payees, transactions). Most resources also have an organization-scoped variant for multi-church accounts. People, contribution and note reads return personal data. Webhook signing secrets are withheld. Authentication is an API key from the ChMeetings account, sent in the ApiKey header.

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in ChMeetings.Built from the 155 ChMeetings tools below, on the connection you add once.

What you can do with ChMeetings

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

Follow up, 8 operations

  • create_follow_upCreate follow upPOSTCreates a follow-up for the person in `person_id` and returns the created follow-up. `date` is church-local `yyyy-MM-dd`; `start_time`/`end_time` are `HH:mm` or `HH:mm:ss`.
  • create_organization_follow_upCreate organization follow upPOSTCreates a follow-up for the person in `person_id` and returns the created follow-up. `date` is church-local `yyyy-MM-dd`; `start_time`/`end_time` are `HH:mm` or `HH:mm:ss`.
  • delete_follow_upDelete follow upDELETEDeletes a follow-up. Deleting the latest occurrence of a recurring follow-up schedules the next occurrence, so the series continues; the rest of the series is unaffected. Returns 404 when the follow-up does not exist.
  • delete_organization_follow_upDelete organization follow upDELETEDeletes a follow-up. Deleting the latest occurrence of a recurring follow-up schedules the next occurrence, so the series continues; the rest of the series is unaffected. Returns 404 when the follow-up does not exist.
  • get_follow_upGet follow upGETReturns a single follow-up by its unique identifier. All dates and times are church-local wall-clock: `date` is the scheduled date, `completed_on` is when the follow-up was marked done.
  • get_organization_follow_upGet organization follow upGETReturns a single follow-up by its unique identifier within the organization. All dates and times are church-local wall-clock: `date` is the scheduled date, `completed_on` is when the follow-up was marked done.
  • list_follow_upsList follow upsGETGet follow-ups (pastoral follow-up tasks) with paging and filtering options. A follow-up is a task to follow up with a specific person, optionally assigned to one or more people (`assignees`) and categorized by a follow-up action.
  • list_organization_follow_upsList organization follow upsGETGet follow-ups (pastoral follow-up tasks) in the organization with paging and filtering options.

Fund, 8 operations

  • create_contribution_fundCreate contribution fundPOSTCreates a contribution (giving) fund that contributions can be assigned to, and returns it with its id.
  • delete_contribution_fundDelete contribution fundDELETEDeletes a contribution fund and moves its contributions to move_to_fund_id (needed when the fund has contributions). The default fund cannot be deleted. Irreversible.
  • get_accounting_fundGet accounting fundGETGets a single GL fund by its ID. Returns 404 when the fund does not exist. `include=balance` adds the fund's net balance across all accounts.
  • get_contribution_fundGet contribution fundGETGet detailed information about a specific contribution fund by its ID
  • get_organization_accounting_fundGet organization accounting fundGETGets a single GL fund by its ID within an organization. Returns 404 when the fund does not exist in that organization.
  • list_accounting_fundsList accounting fundsGETGet the ledger's funds (cost centers, e.g. General Fund, Missions) with paging, ordered by name. These are GL funds, not the giving funds under list_contribution_funds. Available filters: `include_archived` (default false).
  • list_contribution_fundsList contribution fundsGET- Get all contribution funds with paging and filtering options. - Available filters: search_text, is_tax_deductible. - Supports pagination via page and page_size.
  • list_organization_accounting_fundsList organization accounting fundsGETGet the GL funds of an organization with paging. Same filters as the non-organization endpoint, scoped to the requested organization.

Group, 8 operations

  • create_groupCreate groupPOSTCreates a new group and returns the created group. Returns 400 when the name is already used by another group.
  • create_organization_groupCreate organization groupPOSTCreates a new group within an organization and returns the created group. Returns 400 when the name is already used by another group in that organization.
  • delete_groupDelete groupDELETEDeletes a group and removes all of its memberships and group-leader assignments. Returns 404 when the group does not exist, and 400 when the group is still assigned to one or more upcoming events, remove it from those events first.
  • delete_organization_groupDelete organization groupDELETEDeletes a group within an organization and removes all of its memberships and group-leader assignments.
  • get_groupGet groupGETGets a single group by its id. Returns 404 when the group does not exist.
  • get_organization_groupGet organization groupGETGets a single group by its id within an organization. Returns 404 when the group does not exist in that organization.
  • list_groupsList groupsGETGet all groups, ordered by name. Optionally filter by name with `search_text`. Omitting it returns every group - this response is not paged.
  • list_organization_groupsList organization groupsGETGet groups in organization with paging and search options.

Person, 7 operations

  • add_person_to_organizationAdd person to organizationPOSTAdds an existing person to an organization (201 when added, 200 when already a member). The person is also added to the parent church and account, so organizations in the answer can list more than one.
  • create_personCreate personPOSTCreates a person in the ChMeetings account (first_name and last_name required). The vendor answers 201 with no body: find the new person with list_people (name or email filter).
  • delete_personDelete personDELETEDeletes a person from the ChMeetings account entirely. Irreversible. To only take them out of one organization use remove_person_from_organization.
  • get_personGet personGETReads one person's profile: names, contact details, dates, address, family and additional fields. Returns personal data (names, contact details, birth dates, addresses).
  • list_group_peopleList group peopleGETLists the members of one or more groups (group_ids, comma-separated, for example 123,456): the union of their members. Returns personal data.
  • list_organization_peopleList organization peopleGETLists the people of one organization, paged, with the same filters as list_people. Returns personal data (names, contact details, birth dates, addresses).
  • list_peopleList peopleGETLists people, paged, with filters on name, email, mobile, ids, dates, gender, family role, groups and address. include_organizations and include_groups add those lists. Returns personal data (names, contact details, birth dates, addresses).

Post, 7 operations

  • create_organization_postCreate organization postPOSTCreates a post (news item). status published makes it live at once, draft keeps it hidden; notify_members true also sends members a push notification. visibility: internal, members or public.
  • create_postCreate postPOSTCreates a post (news item). status published makes it live at once, draft keeps it hidden; notify_members true also sends members a push notification. visibility: internal, members or public.
  • delete_organization_postDelete organization postDELETEDelete organization post by its Id
  • delete_postDelete postDELETEDelete a post by its Id
  • get_organization_postGet organization postGETGet a single organization post by its Id. Response includes an `image_url` (CDN URL of the post image, or null when no image is set).
  • get_postGet postGETGet a single post by its Id. Response includes an `image_url` (CDN URL of the post image, or null when no image is set).
  • list_organization_postsList organization postsGETGet all organization posts with paging and filtering options. Available filters: status (draft/published), start_date, end_date. Supports pagination via page and page_size.

Category, 5 operations

  • get_accounting_categoryGet accounting categoryGETGets a single income/expense category by its ID. Returns 404 when the category does not exist.
  • get_organization_accounting_categoryGet organization accounting categoryGETGets a single income/expense category by its ID within an organization. Returns 404 when the category does not exist in that organization.
  • list_accounting_categoriesList accounting categoriesGETGet the income/expense categories with paging, ordered by type then name. Categories are a flat list; rebuild the hierarchy with `parent_category_id` (at most two levels).
  • list_organization_accounting_categoriesList organization accounting categoriesGETGet the income/expense categories of an organization with paging. Same filters as the non-organization endpoint, scoped to the requested organization.
  • list_organization_post_categoriesList organization post categoriesGETGet all organization post categories with pagination support.

Account, 4 operations

  • get_accounting_accountGet accounting accountGETGets a single ledger account by its ID. Returns 404 when the account does not exist. `include=balance` adds the account's current running balance (voided transactions excluded).
  • get_organization_accounting_accountGet organization accounting accountGETGets a single ledger account by its ID within an organization. Returns 404 when the account does not exist in that organization.
  • list_accounting_accountsList accounting accountsGETGet the ledger's accounts (bank registers) with paging, ordered by display order then name. Account types are `asset` and `liability`; income/expense classification lives on categories, not accounts.
  • list_organization_accounting_accountsList organization accounting accountsGETGet the ledger's accounts (bank registers) of an organization with paging. Same filters as the non-organization endpoint, scoped to the requested organization.

Batch, 4 operations

  • create_contribution_batchCreate contribution batchPOSTCreates a contribution batch (a group of contributions entered together, for example one service's offering) and returns it with its id.
  • delete_contribution_batchDelete contribution batchDELETEDeletes a contribution batch. Only a batch with no contributions can be deleted.
  • get_contribution_batchGet contribution batchGETGet a batch by Id
  • list_contribution_batchesList contribution batchesGETGet all contribution batches with paging

Check in, 4 operations

  • cancel_check_inCancel check inDELETECancels a check-in (removes the attendance record, including its check-out if any). Returns 404 when the person has no active check-in on this occurrence; offline clients replaying a queue should treat 404 as already done.
  • cancel_organization_check_inCancel organization check inDELETECancels a check-in (removes the attendance record, including its check-out if any). Returns 404 when the person has no active check-in on this occurrence; offline clients replaying a queue should treat 404 as already done.
  • check_in_organization_personCheck in organization personPOSTChecks a person in to the occurrence (creates the attendance record). Idempotent: if the person is already checked in, the existing record is returned with 200.
  • check_in_personCheck in personPOSTChecks a person in to the occurrence (creates the attendance record). Idempotent: if the person is already checked in, the existing record is returned with 200.

Check out, 4 operations

  • cancel_check_outCancel check outDELETECancels a check-out (clears checked_out_at; the person remains checked in). Returns 404 when the person is not checked out of this occurrence; offline clients replaying a queue should treat 404 as already done.
  • cancel_organization_check_outCancel organization check outDELETECancels a check-out (clears checked_out_at; the person remains checked in). Returns 404 when the person is not checked out of this occurrence; offline clients replaying a queue should treat 404 as already done.
  • check_out_organization_personCheck out organization personPOSTChecks a person out of the occurrence (sets checked_out_at on the attendance record). Requires an existing check-in (422 otherwise) and the event's check-out option enabled.
  • check_out_personCheck out personPOSTChecks a person out of the occurrence (sets checked_out_at on the attendance record). Requires an existing check-in (422 otherwise) and the event's check-out option enabled.

Event, 4 operations

  • get_eventGet eventGETReturns a single event by its unique identifier. Response includes `visibility` ("internal", "members", or "public") and `image_url` (CDN URL of the event image, or null when no image is set).
  • get_organization_eventGet organization eventGETReturns a single event by its unique identifier within the organization. Response includes `visibility` ("internal", "members", or "public") and `image_url` (CDN URL of the event image, or null when no image is set).
  • list_eventsList eventsGETGet events within a date range with pagination. Each event includes a `visibility` value ("internal", "members", or "public") and an `image_url` (CDN URL of the event image, or null when no image is set).
  • list_organization_eventsList organization eventsGETGet events in organization within a date range with pagination. Each event includes a `visibility` value ("internal", "members", or "public") and an `image_url` (CDN URL of the event image, or null when no image is set).

Family, 4 operations

  • create_familyCreate familyPOSTCreate a new family with members (minimum 2 members required)
  • delete_familyDelete familyDELETEDelete a family and remove family relationships from all members
  • get_familyGet familyGETGet a specific family by ID
  • list_familiesList familiesGETLists families with their members, paged, optionally filtered by search_text. Returns personal data (member names).

Occurrence, 4 operations

  • get_occurrenceGet occurrenceGETResolves a materialized (numeric ID) or virtual occurrence.
  • get_organization_occurrenceGet organization occurrenceGETResolves a materialized (numeric ID) or virtual occurrence within the organization.
  • list_event_occurrencesList event occurrencesGETReturns both materialized and virtual (computed) occurrences for a given event. Each occurrence includes an `image_url` (CDN URL of the occurrence image, or null when no image is set).
  • list_organization_event_occurrencesList organization event occurrencesGETReturns both materialized and virtual (computed) occurrences for a given event within the organization. Each occurrence includes an `image_url` (CDN URL of the occurrence image, or null when no image is set).

Payee, 4 operations

  • get_accounting_payeeGet accounting payeeGETGets a single payee by its ID. Returns 404 when the payee does not exist.
  • get_organization_accounting_payeeGet organization accounting payeeGETGets a single payee by its ID within an organization. Returns 404 when the payee does not exist in that organization.
  • list_accounting_payeesList accounting payeesGETGet the payee (vendor) master list with paging, ordered by name. - Available filters: `search` (name contains), `is_1099_eligible`. - Tax IDs are never exposed through the API.
  • list_organization_accounting_payeesList organization accounting payeesGETGet the payee (vendor) master list of an organization with paging. Same filters as the non-organization endpoint, scoped to the requested organization.

Payment method, 4 operations

  • create_payment_methodCreate payment methodPOSTCreate a new custom payment method
  • delete_payment_methodDelete payment methodDELETEDelete a custom payment method and move all its contributions to another payment method. System payment methods cannot be deleted.
  • get_payment_methodGet payment methodGETGet detailed information about a specific payment method by its ID
  • list_payment_methodsList payment methodsGET- Get all payment methods with paging and filtering options. - Available filters: search_text. - Supports pagination via page and page_size.

Transaction, 4 operations

  • get_accounting_transactionGet accounting transactionGETGets a single ledger transaction by its ID, including its split lines. Returns 404 when the transaction does not exist. Voided and beginning-balance rows are returned.
  • get_organization_accounting_transactionGet organization accounting transactionGETGets a single ledger transaction by its ID within an organization, including its split lines. Returns 404 when the transaction does not exist in that organization.
  • list_accounting_transactionsList accounting transactionsGETGet ledger transactions with their split lines, paged, newest first (date, then ID descending). Amounts are positive; the direction comes from `type` (signed value = income ? +amount : -amount).
  • list_organization_accounting_transactionsList organization accounting transactionsGETGet the ledger transactions of an organization with their split lines, paged, newest first. Same filters as the non-organization endpoint, scoped to the requested organization.

Contribution, 3 operations

  • create_contributionCreate contributionPOSTRecords a contribution (a gift to one or more funds) and returns it with its id. Send a unique reference_id with each one: a repeated reference_id is rejected as a duplicate, which makes retries safe.
  • delete_contributionDelete contributionDELETEDeletes a contribution. Irreversible.
  • list_contributionsList contributionsGETLists contributions (gifts), paged, filtered by any of person_id, start_date, end_date, reference_id, batch_id and organization_id (combined with AND). Returns giver details, so it carries personal data.

Membership, 3 operations

  • add_group_memberAdd group memberPOSTAdds a person to a group. Returns 201 if created, 200 if already exists.
  • add_organization_group_memberAdd organization group memberPOSTAdds a person to a group within an organization. Returns 201 if created, 200 if already exists.
  • list_organization_group_membersList organization group membersGETRetrieves all people of a specific group within an organization with filtering and pagination.

Note, 3 operations

  • create_person_noteCreate person notePOSTCreate a new member note.
  • delete_person_noteDelete person noteDELETEDelete a member note.
  • get_person_noteGet person noteGETRetrieve member note by id.

Webhook, 3 operations

  • create_webhookCreate webhookPOSTSubscribes a URL to ChMeetings events (names from list_webhook_events). Delivery is at least once, a minute or more after the action. The signing secret is withheld here, so deliveries cannot be verified with it.
  • delete_webhookDelete webhookDELETEDeletes a webhook subscription the church owns. One managed by Zapier answers 403: turn it off in Zapier instead.
  • get_webhookGet webhookGETReads one webhook subscription: URL, event names, active flag and owning app. The signing secret is withheld.

Action, 2 operations

  • list_follow_up_actionsList follow up actionsGETGet the follow-up actions (categories such as "First Visit") available to this organization, sorted by name, unpaged.
  • list_organization_follow_up_actionsList organization follow up actionsGETGet the follow-up actions (categories) available to the organization, sorted by name, unpaged.

Assignable member, 2 operations

  • list_follow_up_assignable_membersList follow up assignable membersGETLists the people who can be responsible for follow-ups (the valid `assignee_ids`), sorted by name, with paging.
  • list_organization_follow_up_assignable_membersList organization follow up assignable membersGETLists the people who can be responsible for follow-ups (the valid `assignee_ids`), sorted by name, with paging.

Attendance, 2 operations

  • list_occurrence_attendanceList occurrence attendanceGETReturns the full attendance list for occurrence, with optional status filter and pagination.
  • list_organization_occurrence_attendanceList organization occurrence attendanceGETReturns the full attendance list for occurrence within the organization, with optional status filter and pagination.

Image, 2 operations

  • delete_organization_post_imageDelete organization post imageDELETERemoves the post's image. Returns 404 when the post has no image.
  • delete_post_imageDelete post imageDELETERemoves the post's image. Returns 404 when the post has no image.

Member, 2 operations

  • add_family_membersAdd family membersPOSTAdd members to an existing family
  • change_family_member_roleChange family member rolePATCHChange a family member's role

Organization, 2 operations

  • get_organizationGet organizationGETRetrieves the details of a specific organization by its ID.
  • list_organizationsList organizationsGETReturns a paginated list of organizations accessible by the current API key. Scope depends on subscription: Diocese: Diocese, Churches, Ministries. Church: Church and its Ministries. Ordered by hierarchy, then by name.

Statistic, 2 operations

  • get_event_statisticsGet event statisticsGETReturns a per-occurrence attendance summary plus a period rollup for every materialized occurrence of the event with Day within [from, to]. Pass include=groups to add a per-group breakdown inside each occurrence.
  • get_organization_event_statisticsGet organization event statisticsGETSame as get_event_statistics, scoped to the given organization.

Summary, 2 operations

  • get_occurrence_attendance_summaryGet occurrence attendance summaryGETReturns attendance statistics for occurrence.
  • get_organization_occurrence_attendance_summaryGet organization occurrence attendance summaryGETReturns attendance statistics for an occurrence within the organization.

Campaign, 1 operation

  • list_campaignsList campaignsGETGet all campaigns with paging

City, 1 operation

  • list_citiesList citiesGETRetrieves a paged list of cities for a specified state, allowing for optional search text to filter results.

Close, 1 operation

  • close_contribution_batchClose contribution batchPOSTCloses a contribution batch so no more contributions can be added to it; reopen_contribution_batch reverses it.

Comment, 1 operation

  • list_organization_post_commentsList organization post commentsGETGet all organization comments for a specific post with pagination support.

Country, 1 operation

  • list_countriesList countriesGETRetrieves a paged list of countries, allowing for optional search text to filter results.

Family role, 1 operation

  • list_family_rolesList family rolesGETGet family roles

Like, 1 operation

  • list_organization_post_likesList organization post likesGETGet all organization likes for a specific post with pagination support.

No envelope, 1 operation

  • list_members_without_envelopesList members without envelopesGETLists the people who have no giving envelope number, paged. Returns personal data (names and contact details).

Pledge, 1 operation

  • list_campaign_pledgesList campaign pledgesGETGet all pledges for a campaign with paging

Showing the first 120 of 155 endpoints. The rest are in the product, searchable from the workflow builder and from chat.

Use ChMeetings from Claude Code, Cursor or Codex

Connect ChMeetings in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its ChMeetings operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect ChMeetings

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect ChMeetings once

    Add your ChMeetings connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

ChMeetings integration FAQ

What can you do with the ChMeetings integration?

LiveContext exposes 155 operations on ChMeetings, covering follow up, fund, group and person.

Popular integrations

Browse the whole catalog