procare-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@procare-mcpShow attendance for school 1234 yesterday."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
procare-mcp
First MCP server for the Procare Connect API — talk to your child care center data from Claude, Cursor, or any MCP client.
Procare is the leading child care management platform used by 30,000+ daycare centers, preschools, and before/after-school programs in the US. The public Connect API is documented at https://api-docs.procareconnect.com/ and powers the Procare Online + SchoolCare Works products. This server wraps that API in the Model Context Protocol so you can ask your AI agent questions like "which children at school 1234 were absent on Monday?" or "what's the balance on family 555?" — without hand-rolling a REST client.
What you can do with it
You: "Pull the attendance log for school 1234 for last week and tell me
which kids had 3+ absences."
Claude: *calls list_schools, then list_attendance with school_id+date_from
+date_to, summarises the result*
You: "Show me the enrollment roster for the summer camp at our
Westside location."
Claude: *calls list_programs then list_registrations with school_id +
program_id filters*
You: "What's the outstanding balance for family 555?"
Claude: *calls get_family, returns the balance_cents field with a
human-readable summary*Related MCP server: ops-platform-mcp
Install
pip install -e .Configure
Procare uses OAuth 2 client_credentials against your tenant subdomain, not a shared host. Find your subdomain by looking at the URL of the Procare dashboard you log into — it'll be https://<your-subdomain>.procareconnect.com. Your Procare account admin can mint a client_id / client_secret pair with API access enabled.
export PROCARE_BASE_URL="https://<your-subdomain>.procareconnect.com"
export PROCARE_CLIENT_ID="..."
export PROCARE_CLIENT_SECRET="..."Who uses this?
Child care center owners and operators who want to query their data via Claude / Cursor without building a custom integration.
Multi-location operators (5+ centers) who need to roll up attendance, payments, and enrollment across the enterprise.
API Partners building tools on top of Procare.
If you don't have API credentials yet, contact your Procare account manager or open a ticket with Procare support.
Use with Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent path on Windows / Linux:
{
"mcpServers": {
"procare-mcp": {
"command": "procare_mcp",
"env": {
"PROCARE_BASE_URL": "https://your-subdomain.procareconnect.com",
"PROCARE_CLIENT_ID": "your-client-id",
"PROCARE_CLIENT_SECRET": "your-client-secret"
}
}
}
}Use with Claude Code
claude mcp add procare-mcp -- procare_mcp \
--env PROCARE_BASE_URL=https://your-subdomain.procareconnect.com \
--env PROCARE_CLIENT_ID=your-client-id \
--env PROCARE_CLIENT_SECRET=your-client-secretTools
Tool | Type | What it does |
| Diagnostic | Verifies credentials by listing schools (counts them) |
| Read | All schools/locations in the enterprise account |
| Read | Single school by id |
| Read | Children, filterable by school_id / paginated via offset+limit |
| Read | Single child by id (allergies, schedule, classroom) |
| Read | Families (households), filterable by school_id / paginated |
| Read | Single family by id (guardians, children, contacts, balance) |
| Read | Attendance records, filterable by school / child / date range |
| Read | Programs (camps, preschool, after-school), filterable by school / active |
| Read | Single program by id (description, schedule, capacity, fee) |
| Read | Enrollments, filterable by program / child / school |
| Read | Payments, filterable by family / school / date range |
| Read | Staff members, filterable by school / active flag |
| Read | Single staff member by id |
| Read | Classrooms, filterable by school |
| Read | Single classroom by id (capacity, age range, lead teacher) |
The read-only cut covers every endpoint exposed by the Connect API that the v0.1 surface needs. Write tools (check-in, check-out, create registration) will land in a follow-up once the upstream write contract is stable across Procare Online and SchoolCare Works.
Engineering
This server follows the industry-leading patterns baked into mcp-vertical-template:
Shared
httpx.AsyncClientwith connection pooling and transport-level retriesOAuth 2
client_credentialswith proactive refresh (5-min buffer) and anasyncio.Lockto serialize concurrent refreshesTyped exception hierarchy (
ProcareAuthError,ProcareNotFoundError,ProcareRateLimitError,ProcareAPIError,ProcareConnectionError) with structured fields (http_status,error_code,request_id,retry_after)Dispatch table for HTTP status → exception (no
if/elifchains)Application-level retry with exponential backoff + full jitter on 429/5xx, honoring
Retry-AfterSingle 401 retry that force-refreshes the OAuth token (handles server-side revocation)
JSONL audit logging per tool call (stderr default,
PROCARE_AUDIT_LOGenv var override) with secret redactionBare
raiseinside MCP tool handlers —isError=trueon the wire, per the Blackwell MCP security audit baselinerespxmocks +hypothesisproperty tests (no live API in CI)rufffull rule set +mypy --strictCI matrix on Python 3.10-3.13 × Ubuntu/macOS/Windows
Development
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest -v
procare_mcpLicense
MIT.
See also
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/sanjibani/procare-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server