{
    "$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 \u2014 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 \u2014 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": true
        }
    }
}