- Home
- MCP servers
- ParentSquare
ParentSquare
- typescript
0
GitHub Stars
typescript
Language
4 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"thehesiod-psquare-mcp": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/thehesiod/psquare-mcp",
"parentsquare-mcp"
]
}
}
}You can run a dedicated MCP server that lets Claude access ParentSquare data by scraping the web interface using saved session cookies. This server exposes feeds, posts, calendars, conversations, staff directories, files, forms, payments, and more, so you can programmatically fetch structured data or content-rich markdown for Claude to present and reason about.
How to use
Install and run the MCP server inside Claude to access ParentSquare data. You can query school feeds, individual posts with inline images and PDFs, calendars, staff details, conversations, and various participation items (signups, polls, forms, notices, and payments). When you request content, you receive structured JSON for lookups or markdown for rich content. The server auto-discovers your schools, students, and user identity on first use and re-authenticates automatically using your saved credentials.
How to install
Prerequisites you need before installation: a Claude environment with MCP support, and 1Password CLI installed on your system to access credentials.
Step-by-step setup
# Step 1: Ensure 1Password CLI is installed and configured with a Parentsquare item
# Step 2: Add the MCP server to Claude using the stdio transport
claude mcp add --transport stdio parentsquare -- uvx --from git+https://github.com/thehesiod/psquare-mcp parentsquare-mcp
# Optional: enable PDF text extraction for post attachments (AGPL-3.0 licensed)
claude mcp add --transport stdio parentsquare -- uvx --from "psquare-mcp[pdf] @ git+https://github.com/thehesiod/psquare-mcp" parentsquare-mcp
What you get with the server
Data-lookup tools return structured JSON for programmatic use, while content tools return markdown content. The server automatically handles session expiration by re-authenticating through 1Password and continuing to fetch data. Images and inline profile photos are surfaced so Claude can visually interpret attachments and profiles.
Notes on usage and behavior
On first use, the server discovers your schools, students, and user identity from ParentSquare. There is no extra configuration required after installation. If MFA is needed, it is prompted and handled automatically through the MCP workflow.
Security and authentication
Your session cookies are persisted locally at ~/.parentsquare_cookies.json and credentials are retrieved from 1Password when the session expires. MFA prompts are supported via MCP flows to revalidate access without exposing credentials directly in your environment.
Supported data and endpoints
The server exposes a wide range of data accesses and actions, including feeds, posts, calendars, conversations, staff directories, staff member details, media downloads, signups, notices, polls, forms, payments, volunteer hours, schools, groups, links, and student dashboards. Each data type is exposed through dedicated tools that return either structured JSON or content-rich markdown.
Troubleshooting
If you encounter authentication issues, verify that your 1Password item contains the correct username and password fields and that the 1Password CLI is accessible in your environment. If a session expires, the server will automatically re-authenticate using your stored credentials and continue operations.
Examples of common tasks
Browse a school feed to see posts and attachments, fetch a specific post with image or PDF content, retrieve ICS calendar events, read staff directories, and access signups or polls to understand participation and results.
Available tools
get_feeds
Browse paginated school feeds with titles, authors, summaries, and attachment names.
get_post
Fetch full post details including body text, comments, poll results, signup items, and inline images or PDFs.
get_group_feed
Retrieve posts from a specific group.
get_calendar_events
Parse ICS calendar events into structured JSON.
list_conversations
Read message threads.
get_directory
Return staff directory as structured JSON including name, role, and contact.
get_staff_member
Fetch full staff details with email, office hours, and inline profile photo.
list_photos
Provide a photo gallery with accessible URLs.
list_files
List document files available for download.
download_file
Download a specific attachment to local disk.
list_signups
Show sign-up and RSVP posts with progress like “53/103 Items.”
list_notices
Retrieve alerts and secure documents.
list_polls
Present polls with vote counts and winning options.
list_forms
Access permission slips and signable forms.
list_payments
Show payment items with prices and summary statistics.
list_volunteer_hours
Display logged volunteer hours with totals.
list_schools
Expose schools and students as structured JSON.
list_school_features
List available sections per school parsed from the sidebar.
list_groups
Provide groups with member counts, descriptions, and membership status.
list_links
Show quick-access links to external resources.
get_student_dashboard
Return student dashboard data including school, grade, classes, and teachers.