Skip to main content
Glama
stevehaskew

ChurchSuite Bookings MCP

by stevehaskew

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CHURCHSUITE_CLIENT_IDYesClient ID for ChurchSuite API authentication
CHURCHSUITE_CLIENT_SECRETYesClient Secret for ChurchSuite API authentication

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_bookingsA

List ChurchSuite bookings, optionally filtered by status, date range, customer, type, or a fuzzy search string.

Dates (starts_after/starts_before) must be in YYYY-MM-DD format.

get_bookingA

Retrieve a single ChurchSuite booking by its ID.

list_booked_resourcesB

List resources booked against ChurchSuite bookings, optionally filtered by booking ID.

list_resourcesC

List the bookable resources (rooms, equipment, etc.) that can be booked against a booking.

get_resourceA

Retrieve a single bookable resource by its ID.

list_contactsB

List addressbook contacts, optionally filtered by status, tag, or a fuzzy search string.

Use this to find a contact's numeric ID (person_id, with person_type "addressbook_contact") for use with find_serving_pattern. The fuzzy search (q) matches against first_name, last_name, formal_name, email, telephone, mobile, address, job, and employer.

get_contactA

Retrieve a single addressbook contact by its ID.

list_ministriesC

List ChurchSuite Rotas ministries (e.g. Worship, Production), optionally filtered by status or name.

get_ministryB

Retrieve a single Rotas ministry by its ID, including its serving days, times, and rotation type.

list_ministry_teamsB

List the teams within Rotas ministries, optionally filtered by ministry or team ID.

get_ministry_teamB

Retrieve a single Rotas ministry team by its ID.

list_ministry_membersA

List members of Rotas ministries, optionally filtered by ministry, role, or team.

Each member links to a person (an addressbook contact or child) via person.id and person.type. There is no API filter by person, so to find a specific person's memberships, list members for the relevant ministries/teams and filter the results by person.id client-side.

list_rota_rolesC

List the roles (e.g. Worship Leader, Sound Engineer) defined within Rotas ministries.

find_serving_patternA

Find which Rotas ministries/teams/roles a person belongs to, and their typical serving pattern.

IMPORTANT: ChurchSuite's API v2 does not expose individual rota slot assignments or dates, only ministry membership and a ministry's recurring schedule definition (days, starts_at/ends_at, rotation_type). This tool cannot tell you the exact next date someone is rostered on; it returns the ministries they serve in plus that ministry's recurrence pattern so you can describe roughly how often/when they serve (e.g. "fortnightly on Sundays at 09:30"). For a confirmed next serving date, the user should check My ChurchSuite directly.

find_next_booking_for_resourceA

Find the next upcoming booking that has a specific resource booked against it.

Provide either resource_id, or resource_name to resolve it via a fuzzy search against /bookings/resources (must match exactly one resource). from_date (YYYY-MM-DD) is inclusive and defaults to today.

Note: ChurchSuite's API has no resource or date filter on /bookings/booked_resources, so this fetches every booked resource record and filters client-side - it may be slow on accounts with a long booking history.

find_next_booking_by_nameA

Find the next upcoming booking whose name/title fuzzy-matches the given string.

Searches /bookings/bookings by name (ChurchSuite's q filter also matches date, reference, and sequence_id). from_date (YYYY-MM-DD) is inclusive and defaults to today.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

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/stevehaskew/churchsuite-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server