Pickuppatrol MCP logo

Pickuppatrol MCP

Read and update PickUp Patrol student dismissal plans, defaults, school rules, and account details through MCP.

Install Pickuppatrol MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "pickuppatrol-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@chrischall/pickuppatrol-mcp"
      ],
      "env": {
        "PICKUPPATROL_USERNAME": "YOUR_VALUE_HERE",
        "PICKUPPATROL_PASSWORD": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

The pickuppatrol-mcp MCP server connects AI clients to PickUp Patrol’s school dismissal service. It reads account, student, schedule, transportation, school, cutoff, and non-school-day data, and can update dated plans or weekly defaults. The server authenticates with PickUp Patrol credentials, keeps the session in memory, and uses HTTPS requests to the service API. Reach for it when an agent needs to inspect or change children’s dismissal arrangements while applying school rules and verifying writes.

Use cases

  • Review students’ weekly dismissal defaults
  • Inspect plans across a school-date range
  • Check transportation rules and cutoff times
  • Change dismissal plans for specific dates
  • Mark reviewed weekly defaults

Key features

  • PickUp Patrol account and student reads
  • Weekly default and dated plan management
  • School transportation and cutoff data
  • Pre-write rule validation
  • Post-write verification
  • Confirmation tokens for write operations

Tools14

What Pickuppatrol MCP lets your agent do. Expand a tool for its parameters.

Self-reported~253 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 3d ago

Recent health check succeeded.

7/7 checks healthy over the last 45d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 15d ago via OSV.dev · @chrischall/pickuppatrol-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads2.4kPackage downloads in the last 30 days.
Last commit3d agoMost recent push to the default branch.
Tools exposed14Callable tools this server registers over MCP.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

How Pickuppatrol MCP works

What pickuppatrol-mcp MCP server does

The pickuppatrol-mcp MCP server exposes PickUp Patrol account and dismissal-plan operations as MCP tools. It can identify the signed-in account and linked students, inspect weekly defaults, retrieve plans for individual dates or date ranges, and show school dismissal options. It also returns school profile data, notification and cutoff times, non-school dates, and car numbers assigned to the account.

Write operations cover one-off plans for selected dates, weekly default plans, and the school prompt indicating that defaults need review. The server asks for confirmation before making changes. It also checks transportation requirements before sending a write and reads the affected plans again afterward to report whether the transportation choice and note actually changed.

This fits the 🎓 Education category and is intended for accounts used to manage children’s school departures.

How it works

The server signs in to app.pickuppatrol.net with the configured PickUp Patrol email and password. PickUp Patrol returns a session cookie rather than a JWT on the deployment described by the project, and the server retains the session in memory. It starts without credentials so an MCP host can complete an install-time probe; the missing configuration is reported when a tool is first called.

Read results are limited to known fields by default. Several read tools accept raw: true to return the underlying API record, including fields such as SASId or SafetyFlag. Notes, option hints, and school settings may contain text entered by guardians or staff, so these values are marked as untrusted content and should be treated as data rather than instructions.

Write confirmations use a preview and single-use token when the client cannot display an interactive prompt. Tokens are bound to the exact payload and expire. Before approval is applied, the server re-reads relevant data; if it changed, the draft is rejected and a new preview is produced.

Setup and configuration

Install the pickuppatrol-mcp MCP server through an MCP host using the npm package and provide PICKUPPATROL_USERNAME and PICKUPPATROL_PASSWORD in the server environment. For local development, the project supports copying .env.example to .env.

Confirmation behavior can be adjusted with MCP_CONFIRM_MODE, MCP_CONFIRM_ELICITATION, MCP_CONFIRM_TTL_SECONDS, and MCP_CONFIRM_SECRET. The defaults require confirmation, keep tokens valid for 600 seconds, and generate a signing secret per process. Credentials are kept in host configuration or the local environment file and are not included in tool results or logs.

Tools and capabilities

Available read tools include:

  • Inspect the session, students, student details, weekly defaults, dated plans, transportations, school settings, non-school days, and car numbers.
  • Run pup_healthcheck to test sign-in and API availability, with error categories describing the failed step.
  • Request raw API records from supported read tools.

Available write tools include:

  • Set or clear plans for specific dates.
  • Set or clear weekly default plans.
  • Mark default plans as reviewed.

Limitations and notes

PickUp Patrol does not provide a published API in the project description; the server uses the reachable HTTPS JSON service behind the web application. A rejected sign-in is not retried because repeated failures may contribute to account lockout. The weekly-default update reads and rewrites the student record because the API lacks a dedicated default-plans endpoint.

A dated plan can represent only an override, so an empty transportation value does not necessarily mean the student has no effective plan for that weekday. The project also provides a separate shell-based skill using curl and jq for scripts or machines where an MCP server is not installed. The repository is licensed under MIT.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Pickuppatrol MCP

pickuppatrol-mcp is an MCP server that connects AI clients to PickUp Patrol’s school dismissal service. Its main tools read accounts, students, weekly defaults, dated plans, school rules, transportation options, and cutoff times, and update dated plans, default plans, or review status using the signed-in account.

Install it through an MCP host with the npm package `@chrischall/pickuppatrol-mcp`, using `npx -y` as the command. Add `PICKUPPATROL_USERNAME` and `PICKUPPATROL_PASSWORD` to the server environment. Local development can use a `.env` file copied from `.env.example`.

Set `PICKUPPATROL_USERNAME` to the PickUp Patrol email and `PICKUPPATROL_PASSWORD` to the account password. The server accepts missing credentials at startup for the host probe, but reports the configuration problem on the first tool call.

Yes, pickuppatrol-mcp supports Claude Desktop through the standard MCP configuration. Because Claude Desktop does not provide the described interactive confirmation prompt, writes use the `MCP_CONFIRM_MODE` preview-and-token flow unless confirmation elicitation is configured differently.

It re-reads the affected dates after a write and compares the transportation identifier and note. The result reports `verified: true` or `false` and identifies dates that did not change, including cases where PickUp Patrol accepted a request after a cutoff but ignored it.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewPickuppatrol MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/pickuppatrol-mcp?style=directory)](https://allmcps.com/mcp/pickuppatrol-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/pickuppatrol-mcp"><img src="https://allmcps.com/api/badge/pickuppatrol-mcp?style=directory" alt="Pickuppatrol MCP on AllMCPs" /></a>