ParentSquare

Provides a Claude-enabled MCP server that surfaces ParentSquare data through scraped endpoints.
  • 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.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational