Retrieves Lower School lunch volunteer opportunities and slot availability from SignUpGenius for Columbus School for Girls
Stores secure credentials and cached data with encryption for the CSG Veracross portal integration
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., "@CSG Portal MCP ServerFind all students in Form V for the upcoming school year"
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.
CSG Portal MCP Server
β οΈ UNOFFICIAL PROJECT - This is an unofficial, community-created MCP server for Columbus School for Girls Veracross portal integration. It is not affiliated with, endorsed by, or supported by Columbus School for Girls or Veracross.
π REQUIREMENTS - This server requires a valid Veracross portal user account (student, parent, or staff) with active access to the CSG portal at https://portals.veracross.com/csg
A Model Context Protocol (MCP) server that provides secure access to directory search, calendar events, and other school portal features through Claude Desktop and other MCP-compatible AI assistants.
Features
π Secure Browser Authentication - No credentials stored in Claude, login via your browser
π Directory Search - Find students, parents, and staff with contact information
π Calendar Events - Search upcoming school events and activities
π½οΈ Lower School Lunch Volunteers - Check volunteer slots and availability
π₯ Multi-User Support - Isolated data storage per user
β‘ Smart Caching - 24-hour cache for improved performance
π« CSG-Specific - Tailored for Columbus School for Girls grade system (Forms I-XII)
Installation
For Claude Desktop Users
Install the MCP server globally:
Add to your Claude Desktop MCP configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
Restart Claude Desktop
Quick Start (No Installation)
You can also use it directly without installation:
Prerequisites
π Valid Veracross Account Required - You must have an active Veracross account with access to the Columbus School for Girls portal. This includes:
Current students with portal access
Parents/guardians of current students
Faculty and staff members
Alumni (if they have retained portal access)
If you don't have access to the CSG Veracross portal, this server will not work for you.
User Setup (Claude Desktop)
First Time Setup
After installing the MCP server, you can start using it immediately! Just send prompts to Claude and include your email address.
Authentication (one-time setup): Simply ask Claude to log you in:
"Please log me in to the CSG portal using my email: parent@example.com"A web browser window will automatically open with a secure login form
Enter your regular CSG Veracross username and password
The page will show "Authentication successful!" when complete
The browser window will close automatically
Your credentials are never stored in Claude - only secure session tokens
Set Default User (optional but recommended):
"Set me as the default user with email: parent@example.com"This lets you make requests without including your email every time
Example Prompts
Once authenticated, try these example prompts:
Directory Search:
Calendar Events:
Lower School Lunch Volunteers:
User Management:
Developer Setup
Note: End users don't need this section - it's only for developers who want to modify or contribute to the project.
Required Environment Variables
Create a .env file or set environment variables:
MongoDB Setup
The server requires MongoDB for secure credential and cache storage:
Local Development: Install MongoDB locally
Production: Use MongoDB Atlas or similar cloud service
Available Tools
login
Log in to the CSG Veracross portal via secure browser authentication. No credentials are stored in Claude.
search_directory
Search the school directory for students, parents, and staff.
Parameters:
firstName,lastName,city,postalCode,gradeLevelGrade Levels: Use CSG format like "VI", "X", "3/4 Yr Olds", etc.
school_events
Check upcoming school calendar events.
Default: Searches next 3 months
Auto-fallback: Extends to 12 months if no events found
Parameters:
searchMonths,refresh
lunch_volunteers
Check Lower School lunch volunteer opportunities.
Shows: Only days with open volunteer slots (filters out fully booked days)
Positions: Salad/deli and Soup volunteer roles
Times: All shifts are 10:45am - 11:45am in the dining hall
Source: SignUpGenius (no Veracross authentication required)
Parameters:
refresh,date(YYYY-MM-DD),week("this", "next", or date)Date Filtering: Can search specific dates or weeks (Sunday-Saturday)
Smart Filtering: Only displays days that need volunteers (0 or 1 volunteer signed up)
set_default_user
Set a default user email to avoid entering it repeatedly.
check_authentication
Verify if you have a valid stored authentication session.
Security
No Credential Storage in Claude: Authentication happens via secure browser flow
Encrypted Storage: All credentials encrypted with AES-256-CBC
User Isolation: Each user's data is completely isolated using email-based hashing
Environment Variables: Sensitive configuration via environment variables only
CSG Grade System
The server understands Columbus School for Girls' Form system:
PYC: "3/4 Yr Olds", "4/5 Yr Olds"
Lower School: Forms I, II, III, IV, V
Middle School: Forms VI, VII, VIII
Upper School: Forms IX, X, XI, XII
Development
Local Development
Contributing
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add some amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
Troubleshooting
Common Issues
"No user email provided"
Use
set_default_usertool first, or provideuserEmailparameter
"Browser authentication required"
Use
authenticate_browsertool to log in via your browser
"Calendar search failed"
Check your authentication status with
check_authenticationTry the
refresh: trueparameter to bypass cache
"Directory search failed"
Verify you're authenticated and have portal access
Check that grade levels use correct CSG format
Debug Mode
Set NODE_ENV=development for additional logging output.
Disclaimer
This is an unofficial project created by a member of the CSG community. It is not affiliated with, endorsed by, or supported by:
Columbus School for Girls
Veracross, Inc.
Anthropic (makers of Claude)
Use at your own discretion. The author is not responsible for any issues that may arise from using this software.
License
MIT License - see LICENSE file for details.
Support
Issues: GitHub Issues
Email: brad@bradgriffith.com
Note: For official CSG IT support, please contact the school directly. This unofficial project is not supported by CSG IT services.
Built by the CSG community, for the CSG community π«