{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.1.1","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.1.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username","isRequired":true,"format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password","isRequired":true,"format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-01T20:39:46.03048Z","publishedAt":"2026-05-01T20:39:46.03048Z","updatedAt":"2026-05-01T20:39:46.03048Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.1.2","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.1.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username","isRequired":true,"format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password","isRequired":true,"format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-04T01:54:57.103752Z","publishedAt":"2026-05-04T01:54:57.103752Z","updatedAt":"2026-05-04T01:54:57.103752Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.1.3","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.1.3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-21T20:11:46.84708Z","publishedAt":"2026-05-21T20:11:46.84708Z","updatedAt":"2026-05-21T20:11:46.84708Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.2.3","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.2.3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-26T17:09:38.280786Z","publishedAt":"2026-05-26T17:09:38.280786Z","updatedAt":"2026-05-26T17:09:38.280786Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.3.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.3.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-28T01:30:09.491875Z","publishedAt":"2026-05-28T01:30:09.491875Z","updatedAt":"2026-05-28T01:30:09.491875Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.3.1","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.3.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-29T21:35:51.756574Z","publishedAt":"2026-05-29T21:35:51.756574Z","updatedAt":"2026-05-29T21:35:51.756574Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.3.2","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.3.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-04T04:29:29.475891Z","publishedAt":"2026-06-04T04:29:29.475891Z","updatedAt":"2026-06-04T04:29:29.475891Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.3.3","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.3.3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-10T02:10:04.913983Z","publishedAt":"2026-06-10T02:10:04.913983Z","updatedAt":"2026-06-10T02:10:04.913983Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.3.4","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.3.4","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-06-13T00:54:35.56411Z","publishedAt":"2026-06-13T00:54:35.56411Z","updatedAt":"2026-06-13T00:54:35.56411Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.3.5","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.3.5","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-05T22:38:07.104396Z","publishedAt":"2026-07-05T22:38:07.104396Z","updatedAt":"2026-07-05T22:38:07.104396Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.3.6","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.3.6","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-07T15:09:53.332782Z","publishedAt":"2026-07-07T15:09:53.332782Z","updatedAt":"2026-07-07T15:09:53.332782Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.4.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.4.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-13T16:49:53.312835Z","publishedAt":"2026-07-13T16:49:53.312835Z","updatedAt":"2026-07-13T16:49:53.312835Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.4.2","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.4.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-07-30T12:53:44.433686Z","publishedAt":"2026-07-30T12:53:44.433686Z","updatedAt":"2026-07-30T12:53:44.433686Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.4.3","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.4.3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-03T04:32:41.539667Z","publishedAt":"2026-08-03T04:32:41.539667Z","updatedAt":"2026-08-03T04:32:41.539667Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.4.4","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.4.4","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-03T14:43:05.878128Z","publishedAt":"2026-08-03T14:43:05.878128Z","updatedAt":"2026-08-03T14:43:05.878128Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.4.5","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.4.5","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-06T00:42:19.20685Z","publishedAt":"2026-08-06T00:42:19.20685Z","updatedAt":"2026-08-06T00:42:19.20685Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.5.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.5.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-28T11:34:23.727359Z","publishedAt":"2026-08-28T11:34:23.727359Z","updatedAt":"2026-08-28T11:34:23.727359Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.5.1","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.5.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-28T21:07:06.576813Z","publishedAt":"2026-08-28T21:07:06.576813Z","updatedAt":"2026-08-28T21:07:06.576813Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.6.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.6.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-29T13:53:41.789826Z","publishedAt":"2026-08-29T13:53:41.789826Z","updatedAt":"2026-08-29T13:53:41.789826Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.7.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.7.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-31T00:22:01.604056Z","publishedAt":"2026-08-31T00:22:01.604056Z","updatedAt":"2026-08-31T00:22:01.604056Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.8.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.8.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-04T22:31:55.245134Z","publishedAt":"2026-09-04T22:31:55.245134Z","updatedAt":"2026-09-04T22:31:55.245134Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.8.1","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.8.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-05T00:51:09.474933Z","publishedAt":"2026-09-05T00:51:09.474933Z","updatedAt":"2026-09-05T00:51:09.474933Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.8.2","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.8.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-07T22:54:04.426725Z","publishedAt":"2026-09-07T22:54:04.426725Z","updatedAt":"2026-09-07T22:54:04.426725Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.8.3","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.8.3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-10T17:50:07.804352Z","publishedAt":"2026-09-10T17:50:07.804352Z","updatedAt":"2026-09-10T17:50:07.804352Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.8.4","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.8.4","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-14T14:09:29.295Z","publishedAt":"2026-09-14T14:09:29.295Z","updatedAt":"2026-09-14T14:09:29.295Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"2.8.5","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"2.8.5","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-15T19:24:39.528464Z","publishedAt":"2026-09-15T19:24:39.528464Z","updatedAt":"2026-09-15T19:24:39.528464Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"3.0.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"3.0.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-19T11:18:33.132129Z","publishedAt":"2026-09-19T11:18:33.132129Z","updatedAt":"2026-09-19T11:18:33.132129Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"3.1.0","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"3.1.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-20T02:48:34.663539Z","publishedAt":"2026-09-20T02:48:34.663539Z","updatedAt":"2026-09-20T02:48:34.663539Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"3.1.1","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"3.1.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-21T04:13:39.632226Z","publishedAt":"2026-09-21T04:13:39.632226Z","updatedAt":"2026-09-21T04:13:39.632226Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.chrischall/infinitecampus-mcp","description":"Infinite Campus (Campus Parent) for Claude — grades, attendance, assignments, messages","repository":{"url":"https://github.com/chrischall/infinitecampus-mcp","source":"github"},"version":"3.1.2","packages":[{"registryType":"npm","identifier":"infinitecampus-mcp","version":"3.1.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Campus Parent portal base URL, e.g. https://campus.district.k12.example.us","isRequired":true,"format":"string","name":"IC_BASE_URL"},{"description":"Infinite Campus district app name (appName path segment from the portal URL)","isRequired":true,"format":"string","name":"IC_DISTRICT"},{"description":"Campus Parent portal username. Optional: leave unset to use the fetchproxy browser-extension fallback.","format":"string","name":"IC_USERNAME"},{"description":"Campus Parent portal password. Required only when IC_USERNAME is set.","format":"string","isSecret":true,"name":"IC_PASSWORD"},{"description":"Friendly name for the district (defaults to district appname)","format":"string","name":"IC_NAME"},{"description":"Set to 1 to skip the fetchproxy browser-extension fallback (missing creds become a hard error — useful in headless CI).","format":"string","name":"IC_DISABLE_FETCHPROXY"},{"description":"Set to false to disable the on-disk session cache and re-authenticate on every process start. Defaults to enabled.","format":"string","name":"IC_SESSION_CACHE"},{"description":"Absolute path for the session cache file. Defaults to $MCP_DATA_DIR/.infinitecampus-mcp/session-<district>.json.","format":"string","name":"IC_SESSION_FILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-23T15:44:57.634369Z","publishedAt":"2026-09-23T15:44:57.634369Z","updatedAt":"2026-09-23T15:44:57.634369Z","isLatest":false}}}],"metadata":{"nextCursor":"io.github.chrischall/infinitecampus-mcp:3.1.2","count":30}}
