MCP Hub
Back to servers

Planning Center Online MCP Server

Enables AI assistants to interact with Planning Center Online accounts across modules like People, Services, Giving, and Calendar. It provides tools for searching people, managing service plans, tracking donations, and monitoring events through the PCO API.

Updated
Feb 19, 2026

Planning Center Online MCP Server

An MCP (Model Context Protocol) server for the Planning Center Online API. Enables AI assistants like Claude to interact with your PCO account across all major modules.

Covered Modules

ModuleTools
PeopleList/search people, get person, create/update person, emails, phone numbers, households, lists
ServicesService types, plans, songs, teams, series
GivingDonations, funds, batches
GroupsGroups, group types, members
CalendarEvents, event instances, resources/rooms
Check-InsCheck-ins, events, locations

Authentication

Planning Center uses Personal Access Tokens for single-account access. Get yours at: https://api.planningcenteronline.com/oauth/applications

You'll receive an Application ID and Secret — set these as environment variables.

Setup

1. Build

npm install
npm run build

2. Configure Claude Desktop (or Claude Code)

Add the following to your MCP configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "planning-center": {
      "command": "node",
      "args": ["/path/to/planning-center-mcp-server/dist/index.js"],
      "env": {
        "PCO_APP_ID": "your_application_id",
        "PCO_SECRET": "your_secret"
      }
    }
  }
}

3. Run (stdio mode, for Claude Desktop)

PCO_APP_ID=your_app_id PCO_SECRET=your_secret npm start

4. Run (HTTP mode, for remote/multi-client)

PCO_APP_ID=your_app_id PCO_SECRET=your_secret TRANSPORT=http PORT=3000 npm start
# Server available at http://localhost:3000/mcp

Available Tools

People (/people/v2)

ToolDescription
pco_list_peopleSearch/list people with filters (name, status, gender, child)
pco_get_personGet full person record with emails, phones, addresses
pco_create_personCreate a new person record
pco_update_personUpdate an existing person (sparse update)
pco_list_person_emailsList email addresses for a person
pco_list_person_phone_numbersList phone numbers for a person
pco_list_householdsList households
pco_list_people_listsList smart lists (saved filters)

Services (/services/v2)

ToolDescription
pco_list_service_typesList all service types
pco_list_plansList plans for a service type (filter: future/past)
pco_get_planGet full plan details
pco_list_songsList/search song library
pco_list_teamsList teams for a service type
pco_list_seriesList sermon series for a service type

Giving (/giving/v2)

ToolDescription
pco_list_donationsList donations (filter by date, method, status)
pco_get_donationGet donation details
pco_list_fundsList giving funds
pco_list_donation_batchesList donation batches

Groups (/groups/v2)

ToolDescription
pco_list_groupsList/search groups
pco_get_groupGet group details
pco_list_group_membersList group members/leaders
pco_list_group_typesList group types

Calendar (/calendar/v2)

ToolDescription
pco_list_calendar_eventsList events (filter: approved/pending/future/past)
pco_get_calendar_eventGet event details with instances
pco_list_event_instancesList occurrences of a calendar event
pco_list_calendar_resourcesList facility resources/rooms

Check-Ins (/check_ins/v2)

ToolDescription
pco_list_checkinsList check-in records (filter by date)
pco_list_checkin_eventsList check-in events
pco_list_checkin_locationsList locations for a check-in event

Example Conversations

Once connected, you can ask Claude:

  • "Show me all active people added in the last month"
  • "What plans are scheduled for next Sunday?"
  • "List all donations received in January over $500"
  • "How many members does the Young Adults small group have?"
  • "What calendar events are coming up this week?"
  • "Show me the children's check-in locations"

Development

# Watch mode for development
npm run dev

# Clean build artifacts
npm run clean

Environment Variables

VariableRequiredDescription
PCO_APP_IDPlanning Center Application ID
PCO_SECRETPlanning Center Secret
TRANSPORTNoSet to http for HTTP mode (default: stdio)
PORTNoHTTP port (default: 3000, HTTP mode only)

API Reference

Reviews

No reviews yet

Sign in to write a review