This skill should be used when the user asks about Infinite Campus (Campus Parent) data for their student(s). Triggers on phrases like "check grades", "what's my kid's GPA", "any new assignments", "attendance record", "message the teacher", "Campus Parent inbox", "infinite campus", or any request involving school grades, assignments, attendance, messages, or documents in Infinite Campus.
Resources
16Install
npx skillscat add chrischall/infinitecampus-mcp Install via the SkillsCat registry.
infinitecampus-mcp
MCP server for Infinite Campus Campus Parent — read student grades, attendance, assignments, and messages; download documents; and send messages.
Setup
Option A — npx (recommended)
Add to .mcp.json in your project or ~/.claude/mcp.json:
{
"mcpServers": {
"infinitecampus": {
"command": "npx",
"args": ["-y", "infinitecampus-mcp"],
"env": {
"IC_BASE_URL": "https://campus.yourdistrict.k12.example.us",
"IC_DISTRICT": "your-district-appname",
"IC_USERNAME": "parent@example.com",
"IC_PASSWORD": "yourpassword"
}
}
}
}Option B — from source
git clone https://github.com/chrischall/infinitecampus-mcp
cd infinitecampus-mcp
npm install && npm run buildAuthentication
Infinite Campus uses username/password — log in with the same credentials you use for the Campus Parent portal. IC_BASE_URL is your district's portal URL; IC_DISTRICT is the app-name path segment from that URL.
Tools (prefix ic_)
Students & teachers
ic_list_students— list students linked to your parent accountic_list_teachers— list teachers for a student
Academics
ic_list_grades(studentId)— class gradesic_list_recent_grades(studentId)— recently graded itemsic_list_assignments(studentId)— current assignmentsic_list_assessments(studentId)— test scores
Attendance
ic_list_attendance(studentId)— attendance summaryic_list_attendance_events(studentId)— individual absence/tardy eventsic_list_school_days(studentId)— calendar days
Behavior & fees
ic_list_behavior(studentId)— behavior incidentsic_list_fees(studentId)— outstanding feesic_list_food_service(studentId)— cafeteria balance
Messaging
ic_list_messages— inboxic_get_message(id)— read a messageic_list_documents(studentId)/ic_download_document(id)— documents
Notes
- Set
IC_NAMEif you want a friendly name other than the district appname. - Auto-discovers the CUPS (Campus Unified Portal Services) layout from the base URL — no extra config needed for most districts.