Skip to content
Scalekit Docs
Talk to an EngineerDashboard

Planning Center MCP connector

OAuth 2.1/DCRProductivityCalendarCRM & Sales

Planning Center is a church management platform with modules for people (contact database), giving, check-ins, services planning, groups, registrations...

Planning Center MCP connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'planningcentermcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Planning Center MCP:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'planningcentermcp_groups_search',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Teams services — Search teams in Planning Center Services
  • Positions services team — Search the team positions within a service type in Planning Center Services
  • Songs services — Search the Planning Center Services song library
  • Types services service, groups group — Search for service types
  • Schedules services — Retrieve a person’s schedule in Planning Center Services — the worship service plans they are scheduled to serve in
  • Plans services — Search plans within a Planning Center Services service type

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

planningcentermcp_groups_event_attendances#Look up individual attendance records for a single event in Planning Center Groups - whether each person attended and their role (member, leader, visitor, or applicant) at the time of the event.8 params

Look up individual attendance records for a single event in Planning Center Groups - whether each person attended and their role (member, leader, visitor, or applicant) at the time of the event.

NameTypeRequiredDescription
event_idintegerrequiredThe ID of the event to look up attendance records for.
filterstringoptionalFilter attendance records. Use 'attended' to return only people who attended.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page (1-100, default 10).
rolestringoptionalFilter attendance records by the role of the attendee.
planningcentermcp_groups_events#Search events in Planning Center Groups. An event is a single meeting of a group with a start and end time, an optional location, and a cancellation status. By default searches events across every group. Provide group_id or person_id to list events for a specific group or person.15 params

Search events in Planning Center Groups. An event is a single meeting of a group with a start and end time, an optional location, and a cancellation status. By default searches events across every group. Provide group_id or person_id to list events for a specific group or person.

NameTypeRequiredDescription
campus_idsarrayoptionalFilter events by one or more campus IDs.
ends_at_endstringoptionalReturn events that end on or before this date (ISO 8601 date format).
ends_at_startstringoptionalReturn events that end on or after this date (ISO 8601 date format).
filterstringoptionalFilter events by cancellation status.
group_idintegeroptionalFilter events to a specific group by its ID.
group_type_idsarrayoptionalFilter events by one or more group type IDs.
includearrayoptionalRelated resources to include in the response.
namestringoptionalSearch events by name.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response (e.g. id, name, description, starts_at, ends_at, canceled).
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page.
person_idintegeroptionalFilter events to a specific person by their ID.
starts_at_endstringoptionalReturn events that start on or before this date (ISO 8601 date format).
starts_at_startstringoptionalReturn events that start on or after this date (ISO 8601 date format).
planningcentermcp_groups_group_types#List or fetch group type categories (e.g. "Small Groups", "Classes") from Planning Center Groups. Group types define the default settings, visibility, and color theme for the groups within them.5 params

List or fetch group type categories (e.g. "Small Groups", "Classes") from Planning Center Groups. Group types define the default settings, visibility, and color theme for the groups within them.

NameTypeRequiredDescription
idintegeroptionalFetch a specific group type by its ID.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response (e.g. id, name, color, church_center_map_visible).
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page.
planningcentermcp_groups_memberships#Look up group memberships in Planning Center Groups - the association of a person to a group, with the member's role and the date they joined. Provide exactly one of group_id (to list a group's members) or person_id (to list the groups a person belongs to).8 params

Look up group memberships in Planning Center Groups - the association of a person to a group, with the member's role and the date they joined. Provide exactly one of group_id (to list a group's members) or person_id (to list the groups a person belongs to).

NameTypeRequiredDescription
group_idintegeroptionalList members of a specific group by its ID. Provide either group_id or person_id, not both.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response (e.g. id, joined_at, role).
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page.
person_idintegeroptionalList groups that a specific person belongs to, by their ID. Provide either group_id or person_id, not both.
rolestringoptionalFilter memberships by role.
planningcentermcp_people_background_checks#Search for background checks. Optionally filter by a specific person using person_id. Current denotes the background check that best represents a person's current standing.11 params

Search for background checks. Optionally filter by a specific person using person_id. Current denotes the background check that best represents a person's current standing.

NameTypeRequiredDescription
expires_on_endstringoptionalFilter background checks that expire on or before this date (ISO 8601 date format).
expires_on_startstringoptionalFilter background checks that expire on or after this date (ISO 8601 date format).
filterarrayoptionalFilter background checks by status.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page.
person_idintegeroptionalFilter background checks by a specific person's ID.
status_updated_at_endstringoptionalFilter background checks whose status was updated on or before this date (ISO 8601 date format).
status_updated_at_startstringoptionalFilter background checks whose status was updated on or after this date (ISO 8601 date format).
planningcentermcp_people_church_campuses#List the church campuses (physical sites) configured for the organization. The returned campus IDs are what campus_id/campus_ids filters on other tools expect.10 params

List the church campuses (physical sites) configured for the organization. The returned campus IDs are what campus_id/campus_ids filters on other tools expect.

NameTypeRequiredDescription
created_at_endstringoptionalFilter campuses created on or before this date (ISO 8601 date format).
created_at_startstringoptionalFilter campuses created on or after this date (ISO 8601 date format).
idsarrayoptionalFilter to specific campus IDs.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response (e.g. name, city, state, zip, time_zone).
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page.
updated_at_endstringoptionalFilter campuses updated on or before this date (ISO 8601 date format).
updated_at_startstringoptionalFilter campuses updated on or after this date (ISO 8601 date format).
planningcentermcp_people_current_organization#Get information about the authenticated user's organization.1 param

Get information about the authenticated user's organization.

NameTypeRequiredDescription
output_fieldsarrayoptionalList of fields to include in the response (e.g. name, avatar_url, church_center_subdomain, country_code, time_zone, date_format, created_at).
planningcentermcp_people_field_data#Search custom field data — the actual values of custom fields on people's profiles. Each field datum is tied to a field definition, which belongs to a custom tab. Use this to look up the values of custom fields for people.11 params

Search custom field data — the actual values of custom fields on people's profiles. Each field datum is tied to a field definition, which belongs to a custom tab. Use this to look up the values of custom fields for people.

NameTypeRequiredDescription
field_definition_idintegeroptionalFilter field data to a specific field definition by its ID.
file_content_typestringoptionalFilter field data by file content type (for file-type fields).
file_namestringoptionalFilter field data by file name (for file-type fields).
file_sizeintegeroptionalFilter field data by file size in bytes (for file-type fields).
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response (e.g. id, file, file_content_type, file_name, file_size, value).
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page.
person_idintegeroptionalFilter field data to a specific person by their ID.
valuestringoptionalFilter field data by value.
planningcentermcp_people_field_definitions#Search the custom field definitions configured for the organization. A field definition represents a custom field — its name, data type, sequence, and which tab it belongs to. Use this to discover what custom fields exist on people profiles, then read a person's values with people_field_data.11 params

Search the custom field definitions configured for the organization. A field definition represents a custom field — its name, data type, sequence, and which tab it belongs to. Use this to discover what custom fields exist on people profiles, then read a person's values with people_field_data.

NameTypeRequiredDescription
data_typestringoptionalFilter field definitions by data type.
filterstringoptionalAdditional filter options. Use 'include_deleted' to include soft-deleted field definitions.
idsarrayoptionalFilter to specific field definition IDs.
includearrayoptionalRelated resources to include in the response.
namestringoptionalSearch field definitions by name.
order_bystringoptionalField to order results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalList of fields to include in the response (e.g. id, config, data_type, deleted_at, name, sequence, slug, tab_id).
page_afterstringoptionalCursor for pagination. Use the value returned in the previous response to get the next page.
per_pageintegeroptionalNumber of results to return per page.
slugstringoptionalFilter field definitions by slug.
tab_idintegeroptionalFilter field definitions to a specific custom tab by its ID.
planningcentermcp_people_form_fields#Search the fields that make up a specific people form. Each form field describes a single input on the form, including its label, field type, whether it is required, and its display order. Requires a form_id. Use to understand a form's structure before reading submissions.6 params

Search the fields that make up a specific people form. Each form field describes a single input on the form, including its label, field type, whether it is required, and its display order. Requires a form_id. Use to understand a form's structure before reading submissions.

NameTypeRequiredDescription
form_idstringrequiredThe ID of the form whose fields should be retrieved.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
planningcentermcp_people_form_submissions#Search for people form submissions. A form submission represents an individual person's response to a specific people form. Use people_form_fields to see the questions.11 params

Search for people form submissions. A form submission represents an individual person's response to a specific people form. Use people_form_fields to see the questions.

NameTypeRequiredDescription
form_idstringrequiredThe ID of the form whose submissions should be retrieved.
created_at_endstringoptionalReturn submissions created on or before this date (ISO 8601).
created_at_startstringoptionalReturn submissions created on or after this date (ISO 8601).
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
person_idsarrayoptionalFilter submissions to these person IDs.
updated_at_endstringoptionalReturn submissions updated on or before this date (ISO 8601).
updated_at_startstringoptionalReturn submissions updated on or after this date (ISO 8601).
planningcentermcp_people_form_submissions_create#Record a submission to a people form, for submissions captured outside of Church Center (e.g. a paper form). The caller must be able to manage the target form. Identify the submitter with either person_id (existing person) or person_attributes. Submitting triggers notification/confirmation emails, workflow cards, and profile updates.4 params

Record a submission to a people form, for submissions captured outside of Church Center (e.g. a paper form). The caller must be able to manage the target form. Identify the submitter with either person_id (existing person) or person_attributes. Submitting triggers notification/confirmation emails, workflow cards, and profile updates.

NameTypeRequiredDescription
form_idstringrequiredThe ID of the form to submit.
person_attributesobjectoptionalSubmitter details when person_id is unknown. Required fields: first_name, last_name, email.
person_idstringoptionalID of an existing person to associate with the submission. Use this or person_attributes, not both.
valuesarrayoptionalArray of form field responses. Each entry maps a form_field_id to its submitted value.
planningcentermcp_people_forms#Search for people forms. Forms is a tool for gathering information from people via customizable online forms.9 params

Search for people forms. Forms is a tool for gathering information from people via customizable online forms.

NameTypeRequiredDescription
campus_idstringoptionalFilter forms by campus ID.
filterstringoptionalFilter forms by status.
idsarrayoptionalFilter to specific form IDs.
includearrayoptionalRelated resources to include in the response.
namestringoptionalFilter forms by name (partial match).
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
planningcentermcp_people_households#Search households — groups of people who live together (typically a family), each with a primary contact. Filter by household or primary-contact name.11 params

Search households — groups of people who live together (typically a family), each with a primary contact. Filter by household or primary-contact name.

NameTypeRequiredDescription
created_at_endstringoptionalReturn households created on or before this date (ISO 8601).
created_at_startstringoptionalReturn households created on or after this date (ISO 8601).
includearrayoptionalRelated resources to include in the response.
namestringoptionalFilter households by name (partial match).
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
primary_contact_namestringoptionalFilter households by the name of the primary contact.
updated_at_endstringoptionalReturn households updated on or before this date (ISO 8601).
updated_at_startstringoptionalReturn households updated on or after this date (ISO 8601).
planningcentermcp_people_list_results#Retrieves the people that appear in a specific Planning Center People list. Requires a list_id (find one via people_lists).6 params

Retrieves the people that appear in a specific Planning Center People list. Requires a list_id (find one via people_lists).

NameTypeRequiredDescription
list_idstringrequiredThe ID of the list whose members should be retrieved.
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
person_idstringoptionalFilter results to a specific person ID.
planningcentermcp_people_lists#Search for people lists. A list is a powerful tool for finding and grouping people together. To get the people in a list, use people_list_results.12 params

Search for people lists. A list is a powerful tool for finding and grouping people together. To get the people in a list, use people_list_results.

NameTypeRequiredDescription
campus_idstringoptionalFilter lists by campus ID.
created_at_endstringoptionalReturn lists created on or before this date (ISO 8601).
created_at_startstringoptionalReturn lists created on or after this date (ISO 8601).
idsarrayoptionalFilter to specific list IDs.
includearrayoptionalRelated resources to include in the response.
namestringoptionalFilter lists by name (partial match).
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
updated_at_endstringoptionalReturn lists updated on or before this date (ISO 8601).
updated_at_startstringoptionalReturn lists updated on or after this date (ISO 8601).
planningcentermcp_people_note_categories#Search note categories in Planning Center People. Note categories organize and classify notes on people profiles.6 params

Search note categories in Planning Center People. Note categories organize and classify notes on people profiles.

NameTypeRequiredDescription
includearrayoptionalRelated resources to include in the response.
namestringoptionalFilter note categories by name (partial match).
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
planningcentermcp_people_notes#Search for notes attached to people's profiles. A note is text with a category connected to a person's profile.8 params

Search for notes attached to people's profiles. A note is text with a category connected to a person's profile.

NameTypeRequiredDescription
includearrayoptionalRelated resources to include in the response.
notestringoptionalFilter notes by content text (partial match).
note_category_idstringoptionalFilter notes by note category ID.
order_bystringoptionalField to sort results by. Prefix with '-' for descending order.
output_fieldsarrayoptionalFields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page (1–100). Defaults to 10.
person_idstringoptionalFilter notes to a specific person ID.
planningcentermcp_people_notes_create#Create a note on a person's profile. A note is text filed under a note category and attached to a specific person. Use people_notes to read existing notes and people_note_categories to discover which category to file the note under.4 params

Create a note on a person's profile. A note is text filed under a note category and attached to a specific person. Use people_notes to read existing notes and people_note_categories to discover which category to file the note under.

NameTypeRequiredDescription
notestringrequiredThe text content of the note.
note_category_idstringrequiredThe ID of the note category to file this note under. Use people_note_categories to find valid IDs.
person_idstringrequiredThe ID of the person to attach the note to.
display_datestringoptionalOptional date the note should be displayed under (ISO 8601 date format).
planningcentermcp_people_tabs#Search people custom tabs. A tab groups field definitions on the profile (e.g., 'Volunteer Info', 'Church Info'). Tabs contain field definitions which describe the custom fields whose per-person values come from people_field_data.7 params

Search people custom tabs. A tab groups field definitions on the profile (e.g., 'Volunteer Info', 'Church Info'). Tabs contain field definitions which describe the custom fields whose per-person values come from people_field_data.

NameTypeRequiredDescription
idsarrayoptionalFilter by one or more tab IDs.
namestringoptionalFilter by tab name.
order_bystringoptionalSort order for results.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
slugstringoptionalFilter by tab slug (URL-safe identifier).
planningcentermcp_people_workflow_cards#Search people workflow cards. Cards are workflow steps assigned to a staff member to perform for a specific person. Requires a workflow_id (find one via people_workflows).11 params

Search people workflow cards. Cards are workflow steps assigned to a staff member to perform for a specific person. Requires a workflow_id (find one via people_workflows).

NameTypeRequiredDescription
workflow_idstringrequiredThe ID of the workflow to search cards within. Required. Use people_workflows to find a workflow ID.
after_moved_to_step_atstringoptionalReturn cards moved to their current step on or after this date (ISO 8601).
assignee_idsarrayoptionalFilter by one or more assignee person IDs.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalSort order for results.
output_fieldsarrayoptionalList of fields to include in the response.
overduebooleanoptionalFilter for overdue cards. Only supports true.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
stagestringoptionalFilter cards by stage: ready, snoozed, completed, or removed.
step_idsarrayoptionalFilter by one or more workflow step IDs.
planningcentermcp_people_workflow_categories#Search the categories that organize people workflows. Use this to find a category by name; then filter people_workflows by its workflow_category_id.5 params

Search the categories that organize people workflows. Use this to find a category by name; then filter people_workflows by its workflow_category_id.

NameTypeRequiredDescription
idsarrayoptionalFilter by one or more workflow category IDs.
namestringoptionalFilter by category name.
order_bystringoptionalSort order for results.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
planningcentermcp_people_workflows#Search for people workflows. A workflow consists of a series of steps to complete a specific task. Steps consist of cards assigned to a staff member for a specific person. Use people_workflow_cards for per-person cards, and people_workflow_categories for categories.14 params

Search for people workflows. A workflow consists of a series of steps to complete a specific task. Steps consist of cards assigned to a staff member for a specific person. Use people_workflow_cards for per-person cards, and people_workflow_categories for categories.

NameTypeRequiredDescription
campus_idstringoptionalFilter by campus ID.
created_at_endstringoptionalReturn workflows created on or before this date (ISO 8601).
created_at_startstringoptionalReturn workflows created on or after this date (ISO 8601).
filterarrayoptionalPredefined filters to narrow results.
idsarrayoptionalFilter by one or more workflow IDs.
includearrayoptionalRelated resources to include in the response.
namestringoptionalFilter by workflow name.
order_bystringoptionalSort order for results.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
updated_at_endstringoptionalReturn workflows updated on or before this date (ISO 8601).
updated_at_startstringoptionalReturn workflows updated on or after this date (ISO 8601).
workflow_category_idstringoptionalFilter by workflow category ID.
planningcentermcp_registrations_attendees#Search the attendees registered for a specific Planning Center signup. An attendee is a person registered for a signup, with status flags for whether they are active, canceled, complete, or waitlisted. Requires a signup_id.8 params

Search the attendees registered for a specific Planning Center signup. An attendee is a person registered for a signup, with status flags for whether they are active, canceled, complete, or waitlisted. Requires a signup_id.

NameTypeRequiredDescription
signup_idstringrequiredThe ID of the signup to search attendees for. Required.
filterstringoptionalFilter attendees by status: active, waitlist, or canceled.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalSort order for results.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
registration_idstringoptionalFilter attendees by a specific registration ID.
planningcentermcp_registrations_registrations#Search registrations for a specific signup. A registration is a single submission to a signup. Requires a signup_id.5 params

Search registrations for a specific signup. A registration is a single submission to a signup. Requires a signup_id.

NameTypeRequiredDescription
signup_idstringrequiredThe ID of the signup to search registrations for. Required.
includearrayoptionalRelated resources to include in the response.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
planningcentermcp_registrations_signups#Search signups. A signup is an ongoing program, opportunity, or event that people can register for.7 params

Search signups. A signup is an ongoing program, opportunity, or event that people can register for.

NameTypeRequiredDescription
campus_idstringoptionalFilter by campus ID.
filterstringoptionalFilter signups by archived status: archived or unarchived.
idsarrayoptionalFilter by one or more signup IDs.
includearrayoptionalRelated resources to include in the response.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
planningcentermcp_services_blockouts#Search the blockout dates for a specific person. A blockout is a date or recurring date range when a person is unavailable to be scheduled to serve (e.g. vacation). Requires a person_id.6 params

Search the blockout dates for a specific person. A blockout is a date or recurring date range when a person is unavailable to be scheduled to serve (e.g. vacation). Requires a person_id.

NameTypeRequiredDescription
person_idstringrequiredThe ID of the person whose blockouts to retrieve. Required.
filterarrayoptionalPredefined filters to narrow results.
group_identifierstringoptionalFilter by group identifier (groups recurring blockouts together).
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
planningcentermcp_services_plan_items#Search the items (the order of service) within a specific plan in Planning Center Services. Each item is one element in a plan's sequence — a song, header, media, or announcement. Requires a service_type_id and plan_id; items are returned in plan sequence order.6 params

Search the items (the order of service) within a specific plan in Planning Center Services. Each item is one element in a plan's sequence — a song, header, media, or announcement. Requires a service_type_id and plan_id; items are returned in plan sequence order.

NameTypeRequiredDescription
plan_idstringrequiredThe ID of the plan whose items to retrieve. Required.
service_type_idstringrequiredThe ID of the service type containing the plan. Required.
includearrayoptionalRelated resources to include in the response.
output_fieldsarrayoptionalList of fields to include in the response.
page_afterstringoptionalCursor for fetching the next page of results.
per_pageintegeroptionalNumber of results per page.
planningcentermcp_services_plan_people#List the people scheduled to serve on a specific plan in Planning Center Services — the plan's roster. Each entry includes the person's name, the team and position they're filling, and their confirmation status. Requires a service_type_id and plan_id. Use filter or read each person's status to narrow by confirmation state.8 params

List the people scheduled to serve on a specific plan in Planning Center Services — the plan's roster. Each entry includes the person's name, the team and position they're filling, and their confirmation status. Requires a service_type_id and plan_id. Use filter or read each person's status to narrow by confirmation state.

NameTypeRequiredDescription
plan_idintegerrequiredThe ID of the plan whose roster you want to list.
service_type_idintegerrequiredThe ID of the service type that contains the plan.
filterarrayoptionalFilter scheduled people by confirmation state.
includearrayoptionalRelated resources to include in the response.
output_fieldsarrayoptionalLimit which fields are returned in the response.
page_afterstringoptionalPagination cursor from the previous response to fetch the next page.
per_pageintegeroptionalNumber of results to return per page (1–100).
team_idintegeroptionalFilter results to a specific team within the plan.
planningcentermcp_services_plans#Search plans within a Planning Center Services service type. A plan is a single worship service or event (e.g. "Sunday Morning, June 8") containing its dates, series, item and people counts, and length. Requires a service_type_id. Note: sort_date is the plan's service date; plans are commonly scheduled into the future. To find the most recent service, combine filter "past" with order_by -sort_date.13 params

Search plans within a Planning Center Services service type. A plan is a single worship service or event (e.g. "Sunday Morning, June 8") containing its dates, series, item and people counts, and length. Requires a service_type_id. Note: sort_date is the plan's service date; plans are commonly scheduled into the future. To find the most recent service, combine filter "past" with order_by -sort_date.

NameTypeRequiredDescription
service_type_idintegerrequiredThe ID of the service type to search plans within.
created_at_endstringoptionalReturn plans created on or before this date (ISO 8601).
created_at_startstringoptionalReturn plans created on or after this date (ISO 8601).
filterstringoptionalFilter plans by time period.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField and direction to sort results by.
output_fieldsarrayoptionalLimit which fields are returned in the response.
page_afterstringoptionalPagination cursor from the previous response to fetch the next page.
per_pageintegeroptionalNumber of results to return per page.
series_titlestringoptionalFilter plans by series title (partial match).
titlestringoptionalFilter plans by title (partial match).
updated_at_endstringoptionalReturn plans updated on or before this date (ISO 8601).
updated_at_startstringoptionalReturn plans updated on or after this date (ISO 8601).
planningcentermcp_services_schedules#Retrieve a person's schedule in Planning Center Services — the worship service plans they are scheduled to serve in. Defaults to the authenticated user's own schedule when person_id is omitted. Provide a person_id to look up someone else's schedule.7 params

Retrieve a person's schedule in Planning Center Services — the worship service plans they are scheduled to serve in. Defaults to the authenticated user's own schedule when person_id is omitted. Provide a person_id to look up someone else's schedule.

NameTypeRequiredDescription
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField and direction to sort results by.
output_fieldsarrayoptionalLimit which fields are returned in the response.
page_afterstringoptionalPagination cursor from the previous response to fetch the next page.
per_pageintegeroptionalNumber of results to return per page.
person_idintegeroptionalPlanning Center person ID. Omit to return the authenticated user's own schedule.
plan_idintegeroptionalFilter schedule results to a specific plan.
planningcentermcp_services_service_types#Search for service types. A Service Type is a container for plans, typically a recurring worship event like Sunday AM, Wednesday Service, or Christmas Eve. Service Types group all the plans, teams, schedules, and song lists for that service.8 params

Search for service types. A Service Type is a container for plans, typically a recurring worship event like Sunday AM, Wednesday Service, or Christmas Eve. Service Types group all the plans, teams, schedules, and song lists for that service.

NameTypeRequiredDescription
idsarrayoptionalFilter to only return service types with these IDs.
includearrayoptionalRelated resources to include in the response.
namestringoptionalFilter service types by name (partial match).
order_bystringoptionalField and direction to sort results by.
output_fieldsarrayoptionalLimit which fields are returned in the response.
page_afterstringoptionalPagination cursor from the previous response to fetch the next page.
parent_idintegeroptionalFilter service types by parent folder ID.
per_pageintegeroptionalNumber of results to return per page.
planningcentermcp_services_songs#Search the Planning Center Services song library. A song is a reusable piece of music (title, author, CCLI number, copyright, and themes) that can be scheduled into service plans. Use to find songs by title, author, theme, or CCLI number.9 params

Search the Planning Center Services song library. A song is a reusable piece of music (title, author, CCLI number, copyright, and themes) that can be scheduled into service plans. Use to find songs by title, author, theme, or CCLI number.

NameTypeRequiredDescription
authorstringoptionalFilter songs by author name (partial match).
ccli_numberintegeroptionalFilter songs by their CCLI license number.
hiddenbooleanoptionalFilter songs by whether they are hidden in the library.
order_bystringoptionalField and direction to sort results by.
output_fieldsarrayoptionalLimit which fields are returned in the response.
page_afterstringoptionalPagination cursor from the previous response to fetch the next page.
per_pageintegeroptionalNumber of results to return per page.
themesstringoptionalFilter songs by theme keywords.
titlestringoptionalFilter songs by title (partial match).
planningcentermcp_services_team_positions#Search the team positions within a service type in Planning Center Services. A team position is a role within a team that people are scheduled into — for example "Acoustic Guitar", "Vocals", or "Camera 1". Requires a service_type_id.6 params

Search the team positions within a service type in Planning Center Services. A team position is a role within a team that people are scheduled into — for example "Acoustic Guitar", "Vocals", or "Camera 1". Requires a service_type_id.

NameTypeRequiredDescription
service_type_idintegerrequiredThe ID of the service type whose team positions you want to list.
includearrayoptionalRelated resources to include in the response.
order_bystringoptionalField and direction to sort results by.
output_fieldsarrayoptionalLimit which fields are returned in the response.
page_afterstringoptionalPagination cursor from the previous response to fetch the next page.
per_pageintegeroptionalNumber of results to return per page.
planningcentermcp_services_teams#Search teams in Planning Center Services. A team is a group within a service type that people are scheduled into to serve (e.g. Band, Vocals, Production, Hospitality). Pass a service_type_id to limit results to a single service type, or omit to search across the whole organization.7 params

Search teams in Planning Center Services. A team is a group within a service type that people are scheduled into to serve (e.g. Band, Vocals, Production, Hospitality). Pass a service_type_id to limit results to a single service type, or omit to search across the whole organization.

NameTypeRequiredDescription
includearrayoptionalRelated resources to include in the response.
namestringoptionalFilter teams by name (partial match).
order_bystringoptionalField and direction to sort results by.
output_fieldsarrayoptionalLimit which fields are returned in the response.
page_afterstringoptionalPagination cursor from the previous response to fetch the next page.
per_pageintegeroptionalNumber of results to return per page.
service_type_idintegeroptionalFilter teams to a specific service type. Omit to search across the whole organization.