Infinitecampus MCP runs on your own machine — the client starts it, so there is no endpoint to ping. 470 installs a week from npm. Last commit 1 Nov 2026.
Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages
Today is the operative word: we check Infinitecampus MCP every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add infinitecampus-mcp -e 'IC_BASE_URL=<IC_BASE_URL>' -e 'IC_DISTRICT=<IC_DISTRICT>' -- npx -y infinitecampus-mcp
{
"mcpServers": {
"infinitecampus-mcp": {
"command": "npx",
"args": [
"-y",
"infinitecampus-mcp"
],
"env": {
"IC_BASE_URL": "<IC_BASE_URL>",
"IC_DISTRICT": "<IC_DISTRICT>"
}
}
}
}
[mcp_servers.infinitecampus-mcp]
command = "npx"
args = ["-y", "infinitecampus-mcp"]
env = { IC_BASE_URL = "<IC_BASE_URL>", IC_DISTRICT = "<IC_DISTRICT>" }
{
"mcpServers": {
"infinitecampus-mcp": {
"command": "npx",
"args": [
"-y",
"infinitecampus-mcp"
],
"env": {
"IC_BASE_URL": "<IC_BASE_URL>",
"IC_DISTRICT": "<IC_DISTRICT>"
}
}
}
}
{
"servers": {
"infinitecampus-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"infinitecampus-mcp"
],
"env": {
"IC_BASE_URL": "<IC_BASE_URL>",
"IC_DISTRICT": "<IC_DISTRICT>"
}
}
}
}
Put your own values in place of
<IC_BASE_URL> (Campus Parent portal base URL, e.g. https://campus.district.k12.example.us), <IC_DISTRICT> (Infinite Campus district app name (appName path segment from the portal URL)).
The author’s registry entry marks them as required.
Optional settings from the registry entry, left out of the block above:
IC_USERNAME (Campus Parent portal username. Optional: leave unset to use the ContextMint Bridge browser-extension fallback), IC_PASSWORD (Campus Parent portal password. Required only when IC_USERNAME is set), IC_NAME (Friendly name for the district (defaults to district appname)), IC_DISABLE_FETCHPROXY (Set to 1 to skip the ContextMint Bridge browser-extension fallback (missing creds become a hard error — useful in headless CI)), IC_SESSION_CACHE (Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled), IC_SESSION_FILE (Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json), IC_DOWNLOAD_DIR (Absolute path of the only directory ic_download_document may write into. Defaults to ~/Downloads), FETCHPROXY_WS_PORT (Localhost concentrator port (default 37149). On one machine every MCP shares the concentrator, so move it for ALL of them or not at all), FETCHPROXY_WS_HOST (Bind interface (default 127.0.0.1; a literal IP only, anything else is ignored). Keep on loopback — it exists for ONE topology: a hosted child in its own network namespace), FETCHPROXY_IDENTITY_DIR (Where to store the long-term fetchproxy identity keypair (default ~/.fetchproxy/identity/; an absolute path only, anything else is ignored). Exists for a host that runs a separate child per caller, so they can share one identity).
Canvas LMS (Instructure) for Claude — courses, grades, assignments, planner, files
Unofficial read-only Somtoday parent portal: timetable, homework, grades, assignments, messages
OurFamilyWizard co-parenting for Claude — messages, calendar, expenses, and journal
Campus relay MCP client: authenticated access to courses, assignments, grades and materials.
Groups, class packs, sessions, attendance and payments for fitness trainers and clubs.
Google Classroom via gogcli for Claude — courses, assignments, submissions, grading
Google Classroom MCP server for students: read only assignments, due dates, grades, announcements.
Evite for Claude — list events, guest lists & RSVPs, RSVP, message guests, and create/edit events
Answers built from our own checks of this server.