Psquare MCP server
MCP server for ParentSquare — feeds, calendars, messages, directories, and admin roster tools
14 stars90 downloads/wk
Reviews
Write oneNobody has reviewed Psquare yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Psquare tools (48, 12 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
add_classwrite actionCreate a new class (section) at a school. Requires PS_ENABLE_WRITES.
add_class_staffAssign teachers, assistants, or room parents to a class. Requires PS_ENABLE_WRITES.
add_class_studentsEnroll students in a class. Requires PS_ENABLE_WRITES.
add_parentwrite actionCreate a guardian/parent and link them to a student. Requires PS_ENABLE_WRITES.
add_staffAdd a teacher or other staff member to a school. Requires PS_ENABLE_WRITES.
add_studentwrite actionCreate a new student on a school's roster. Requires PS_ENABLE_WRITES.
bulk_invite_parentswrite actionSend registration invitations to multiple guardians at once. Requires PS_ENABLE_WRITES.
download_fileDownload a photo, video, or file to local disk from a ParentSquare URL.
edit_classRename a class or change its room code / grades. Requires PS_ENABLE_WRITES.
edit_parentwrite actionUpdate a guardian's name, email, or phone. Requires PS_ENABLE_WRITES.
edit_staffwrite actionUpdate a staff member's name, email, phone, title, or staff ID. Requires PS_ENABLE_WRITES.
edit_studentwrite actionUpdate an existing student. Only provided fields change. Requires PS_ENABLE_WRITES.
get_calendar_eventsGet calendar events for a school using the ICS calendar export.
get_classGet one class with its full staff list (teachers, assistants, room parents).
get_conversationRead a specific message conversation thread with all messages.
get_directoryList school contact info and staff directory with names, roles, and phone numbers.
get_feedsGet recent posts from a school's feed with titles, authors, dates, and summaries.
get_group_feedGet posts from a specific group's feed.
get_postwrite actionGet full details of a specific post including body text, comments, and attachments.
get_staff_memberGet detailed info for a specific staff member including email, photo, and office hours.
get_studentGet admin detail for one student (name, grade, SIS id, linked guardians, classes).
get_student_dashboardGet student dashboard information including school, grade, classes, and teachers.
invite_parentwrite actionSend (or resend) a ParentSquare registration invitation to one guardian. Requires PS_ENABLE_WRITES.
link_guardian_to_studentLink an existing guardian to an additional student. Requires PS_ENABLE_WRITES.
list_class_studentsList the students enrolled in one class.
list_classesList a school's classes (sections) with grades, teachers, and room-parent counts.
list_conversationsList message conversations for a school. Returns conversation IDs, participants, and previews.
list_filesList files and documents posted for a school. Returns file URLs for download_file.
list_formsList available forms and permission slips for a school.
list_gradesList a school's grades with their grade_id values (needed for add_student).
list_groupsList groups at a school with active post counts and descriptions.
list_linksList quick-access links for a school (calendars, menus, forms, etc.).
list_noticesList alerts and notices for a school (urgent alerts, secure documents, consent forms).
list_parentsList guardians/parents on a school's admin roster (user_id, name, email, phone, linked students).
list_paymentsList payment items for a school with summary stats and item prices.
list_photosList photos posted for a school. Returns photo URLs that can be used with download_file.
list_pollsList polls for a school with questions, options, and vote counts.
list_school_featuresList features available for a specific school by parsing its sidebar navigation.
list_schoolsList available schools and students in your ParentSquare account.
list_signupsList sign-up and RSVP posts for a school (item donations, volunteer slots, event RSVPs).
list_staffList a school's staff and admins (user_id, name, email, phone, role/title).
list_studentsList students on a school's admin roster (id, name, grade, SIS id, guardians).
list_volunteer_hoursList your logged volunteer hours for a school.
move_student_to_classSwitch a student from one class to another. Requires PS_ENABLE_WRITES.
remove_class_staffwrite actionremove_class_studentswrite actionRemove specific students from a class. Requires PS_ENABLE_WRITES.
set_class_visibilityShow or hide classes for staff, parents, and students. Requires PS_ENABLE_WRITES.
submit_mfa_codewrite actionSubmit a 6-digit MFA verification code to complete ParentSquare login.
Public scan report
scanner v0.1.10 · 2026-10-31 · same rubric, same numbers if you re-run it
- Code scan28 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 8 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Psquare compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 92/100
- higher than 95% of 48,255 servers
- Tools
- 48
- the typical server has 7
- Tools that change things
- 25%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 14
- more than 90% of 28,688 servers
- Downloads a week
- 90
- more than 60% of 12,191 servers with a package
What its tools let an agent do: 30 read · 6 create · 9 change · 2 delete · 1 send or post
Install Psquare in Claude Code, Cursor or VS Code
claude mcp add psquare -- uvx parentsquare-mcp
What the publisher says
From the Psquare repository's README, as published. We do not edit it. Read it on GitHub
ParentSquare MCP Server
An MCP (Model Context Protocol) server that gives Claude access to ParentSquare, a school-parent communication platform. Since ParentSquare has no public API, this server scrapes the web interface using saved session cookies.
Covers both the parent/guardian experience (feeds, posts, calendars, messages, directories, sign-ups, forms, payments) and school admin roster management — reading student and guardian rosters, and creating/editing students and guardians plus sending registration invitations. Admin write tools are off by default, gated behind PSENABLEWRITES, and every write is recorded to a local audit log.
Available on the MCP Registry as io.github.thehesiod/psquare and on PyPI as parentsquare-mcp.
Disclaimer
This project is not affiliated with, endorsed by, or sponsored by ParentSquare, Inc. "ParentSquare" and all related names, logos, and trademarks are the property of ParentSquare, Inc.
This server communicates with ParentSquare's undocumented internal APIs (scraping the web UI and calling its non-public /api/v2/ JSON endpoints) — these are not published, not guaranteed to be stable, and may change or be blocked at any time without notice. Use of those interfaces may violate ParentSquare's Terms of Service; you are responsible for reviewing the ToS and deciding whether your use is acceptable.
Use at your own risk. The authors and contributors accept no responsibility for any consequences of using this software, including but not limited to: account suspension or termination, data loss or corruption, missed or incorrect notifications, MFA lockouts, leaked session cookies, IP blocks, or any other direct or indirect damages. No warranty is provided — see LICENSE for the full MIT no-warranty clause.
If ParentSquare publishes an official API, this project should be considered deprecated in favor of that.
Features
Feed & Posts
- getfeeds** — Browse paginated school feed with titles, authors, summaries, and attachment names
- getpost — Full post details with body text, comments, poll results, signup items, and inline image/PDF content** (Claude can "see" attached calendars, flyers, etc.)
- getgroupfeed — Posts from a specific group
Calendar
- getcalendarevents — Events from ICS calendar as structured JSON (title, start/end, location, description)
- Falls back to guiding Claude to search feed posts for image/PDF calendars when ICS is empty
Communication
- listconversations / getconversation — Read message threads
- getdirectory — Staff directory as structured JSON (name, role, phone, userid)
- getstaffmember — Full staff details with email, office hours, and inline profile photo
Media & Files
- listphotos** — Photo gallery with URLs
- listfiles** — Document files
- downloadfile** — Download any attachment to local disk
Participate
- listsignups** — Sign-up and RSVP posts with progress tracking (e.g. "53/103 Items")
- listnotices** — Alerts and secure documents
- listpolls** — Polls with vote counts and winning options
- listforms** — Permission slips and signable forms
- listpayments** — Payment items with prices and summary stats
- listvolunteerhours — Logged volunteer hours with totals
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Psquare: common questions
- Is Psquare MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the Psquare safety report
- How do I install Psquare?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Psquare need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Psquare maintained?
- The last commit was 12 days ago (2026-10-23). The latest release is v0.4.0.
- How does Psquare compare with other MCP servers?
- safety score 92/100 (higher than 95% of 48,255 servers); tools 48 (the typical server has 7); tools that change things 25% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.