← Back to search

infinitecampus-mcp

GitHub Actions Scanned 13d ago

Infinite Campus (Campus Parent) MCP server — multi-district read + message/document write

B
89.3 / 100

Versions

2.4.2latest
Jul 30, 2026
2.4.0
Jul 13, 2026
2.3.6
Jul 7, 2026
2.3.5
Jul 5, 2026
2.3.4
Jun 13, 2026
+ show 15 moreshow less
2.3.3
Jun 10, 2026
2.3.2
Jun 4, 2026
2.3.1
May 29, 2026
2.3.0
May 28, 2026
2.2.3
May 26, 2026
2.1.3
May 21, 2026
2.1.2
May 4, 2026
2.1.1
May 1, 2026
2.1.0
Apr 20, 2026
2.0.2
Apr 20, 2026
2.0.1
Apr 19, 2026
2.0.0
Apr 16, 2026
0.1.2
Apr 16, 2026
0.1.1
Apr 16, 2026
0.1.0
Apr 16, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 19

ic_list_assignments
annotations: verified low

List a student's assignments. The IC endpoint returns the full term history (~hundreds of items); date and missing filters are applied client-side. For a single course, pass courseId (the sectionID from ic_get_schedule).

readOnlyHint true
ic_list_districts
annotations: verified low

List Infinite Campus districts configured for this MCP server. Returns names + base URLs (no credentials).

readOnlyHint true
ic_list_attendance
annotations: verified low

List a student's absences and tardies (per-course summary grouped by term). Auto-resolves enrollmentID from the student record.

readOnlyHint true
ic_list_grades
annotations: verified low

List a student's term grades and in-progress course grades.

readOnlyHint true
ic_list_teachers
annotations: verified low

List a student's teachers (per enrolled section) and assigned counselor(s). Combines two endpoints (section/contacts and studentCounselor/byUser). Response field shapes may vary slightly by district — core fields (firstName, lastName, email) are consistent; additional fields are passed through.

readOnlyHint true
ic_list_behavior
annotations: verified low

List a student's behavior events / referrals. Returns FeatureDisabled if the district has the behavior module turned off (detected via displayOptions or a 404 backstop).

readOnlyHint true
ic_list_assessments
annotations: verified low

List a student's standardized test scores (state, national, district tests). Auto-resolves calendarID from each of the student's enrollments and returns one entry per enrollment. The shape of individual test records varies by district and test type — fields are passed through unchanged.

readOnlyHint true
ic_get_features
annotations: verified low

List the district's displayOptions feature-flag allow-list for each of a student's enrollments. Each enrollment's `features` object is a map of ~90 flag names (attendance, behavior, assessment, documents, grades, schedule, etc.) to booleans. A `false` value means the district has that feature disabled for this enrollment; `true` or missing means it's available. Used internally by other tools to short-circuit disabled features, but exposed here so the LLM can answer capability questions directly.

readOnlyHint true
ic_list_attendance_events
annotations: verified low

List individual attendance events (absences, tardies, early releases) for a student. Each event has a code, description, excuse reason, and optional human-readable comments. Auto-resolves enrollmentID from the student record. Use since/until to filter by date and excusedOnly to show only excused events.

readOnlyHint true
ic_list_recent_grades
annotations: verified low

List recently-graded assignments for a student. Server-side filtered by scoreModifiedDate. Pass since=YYYY-MM-DD to set the cutoff; defaults to 14 days ago.

readOnlyHint true
ic_list_students
annotations: verified low

List students enrolled under the parent account for a given district.

readOnlyHint true
ic_list_documents
annotations: verified low

List a student's available documents (report cards, transcripts, schedules). Returns metadata only — use ic_download_document to fetch the file. Returns FeatureDisabled if the district has the module turned off.

readOnlyHint true destructiveHint true
ic_download_document
annotations: verified low

Download a student's document (PDF) to disk. documentId is the url field returned by ic_list_documents. Returns FeatureDisabled if the district has the module turned off.

destructiveHint true
ic_list_messages
annotations: verified low

List all parent-visible messages from three IC sources combined: (1) prism notifications (assignment alerts, grade postings, attendance alerts), (2) Messenger 2.0 inbox (teacher messages, district announcements with newMessage/actionRequired flags), and (3) portal userNotice announcements. Each section has its own count and items; if any source errors, that section contains an error field and the others still return normally. The `limit` arg caps the prism notifications only (the high-volume source). Note: listing inbox messages does not mark them as read in normal portal behavior, but some district configurations may update read-tracking; use ic_get_message for the full HTML body.

readOnlyHint true
ic_get_message
annotations: verified low

Fetch the HTML body of an inbox message and return it parsed into { subject, date, body, url }. Takes a `messageUrl` which is the `url` field from an item returned by ic_list_messages' inbox section (e.g. 'portal/messageView.xsl?x=messenger.MessengerEngine-getMessageRecipientView&messageID=...'). Relative and /campus/-prefixed URLs are both accepted. Note: fetching the HTML body may mark the message as read on some district configurations; probe against an empty inbox could not confirm the side effect.

readOnlyHint true
ic_list_school_days
annotations: verified low

List a student's school days (instructional calendar) grouped by term. Returns one entry per enrollment, with term boundaries (Q1-Q4 start/end dates) and the school days inside each term — including comments like 'Teacher Workday' or 'Spring Break'. Use since/until to narrow the range.

readOnlyHint true
ic_list_fees
annotations: verified low

List a student's fee assignments (charges owed) and running balance/surplus. Combines two endpoints: fee assignments and totalSurplus. Returns FeatureDisabled only if both endpoints 404; if only one works, returns that side with warning: 'PartialSuccess' and an issues[] explaining which endpoint failed.

readOnlyHint true
ic_list_food_service
annotations: verified low

List a student's lunch balance and recent food-service transactions. Returns FeatureDisabled if the district has the module turned off (detected via displayOptions or a 404 backstop).

readOnlyHint true
ic_get_schedule
annotations: verified low

Get a student's class schedule for a given date (default: today).

readOnlyHint true

Permissions 3

filesystem low
Server uses filesystem capabilities via: fs/promises, path
network medium
Server uses network capabilities via: fetch()
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 49

info
Tool 'ic_get_schedule' annotations are consistent annotation_checker · 80%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
info
Tool 'ic_list_food_service' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_assignments' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_districts' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_attendance' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_grades' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_teachers' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_behavior' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_assessments' annotations are consistent annotation_checker · 80%
info
Tool 'ic_get_features' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_attendance_events' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_recent_grades' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_students' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_documents' annotations are consistent annotation_checker · 80%
info
Tool 'ic_download_document' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_messages' annotations are consistent annotation_checker · 80%
info
Tool 'ic_get_message' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_school_days' annotations are consistent annotation_checker · 80%
info
Tool 'ic_list_fees' annotations are consistent annotation_checker · 80%
medium
Vulnerable dependency: esbuild@0.28.0 (GHSA-g7r4-m6w7-qqqr) dependency_analyzer · 95%
info
package.json metadata manifest_parser · 100%
info
Tool: ic_list_assignments manifest_parser · 85%
info
Tool: ic_list_districts manifest_parser · 85%
info
Tool: ic_list_attendance manifest_parser · 85%
info
Tool: ic_list_grades manifest_parser · 85%
info
Tool: ic_list_teachers manifest_parser · 85%
info
Tool: ic_list_behavior manifest_parser · 85%
info
Tool: ic_list_assessments manifest_parser · 85%
info
Tool: ic_get_features manifest_parser · 85%
info
Tool: ic_list_attendance_events manifest_parser · 85%
info
Tool: ic_list_recent_grades manifest_parser · 85%
info
Tool: ic_list_students manifest_parser · 85%
info
Tool: ic_list_documents manifest_parser · 85%
info
Tool: ic_download_document manifest_parser · 85%
info
Tool: ic_list_messages manifest_parser · 85%
info
Tool: ic_get_message manifest_parser · 85%
info
Tool: ic_list_school_days manifest_parser · 85%
info
Tool: ic_list_fees manifest_parser · 85%
info
Tool: ic_list_food_service manifest_parser · 85%
info
Tool: ic_get_schedule manifest_parser · 85%
info
Required env vars (6) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 70%
low
Permission: filesystem access detected permission_analyzer · 90%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 253 components sbom_generator · 100%
high
Hardcoded Password found in chrischall-infinitecampus-mcp-3aba422/src/client.ts secret_scanner · 65%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%