# infinitecampus-mcp 中文文档

规范地址：https://npmcn.com/package/infinitecampus-mcp/

版本：3\.2\.3
npm 元数据更新时间：2026-11-03T18:58:01.271Z
中文译文更新时间：2026-11-03T21:56:59.935Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/infinitecampus-mcp
原文对照：https://npmcn.com/package/infinitecampus-mcp/?lang=original
项目主页：https://github.com/chrischall/infinitecampus-mcp#readme
源码仓库：https://github.com/chrischall/infinitecampus-mcp

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：3.1 MB，37 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：7 个
- 首次发布：2026-04-16T00:45:14.605Z
- 最新版本发布：2026-11-03T18:58:00.935Z
- 已发布版本数：48（近 12 个月 48 个）

## 中文简介

无限校园（校园家长）MCP服务器-多区，只读（加上本地文件下载）

## 安装

```sh
npm install infinitecampus-mcp
```

也可以使用：`pnpm add infinitecampus-mcp`、`yarn add infinitecampus-mcp`、`bun add infinitecampus-mcp`

## README

# infinitecampus-mcp

[![CI](https://github.com/chrischall/infinitecampus-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/chrischall/infinitecampus-mcp/actions/workflows/ci.yml) [![npm](https://img.shields.io/npm/v/infinitecampus-mcp)](https://www.npmjs.com/package/infinitecampus-mcp) [![license](https://img.shields.io/npm/l/infinitecampus-mcp)](https://npmcn.com/package/infinitecampus-mcp/LICENSE)

无限校园的MCP服务器（校园家长门户）。登录后通过CUPS SSO自动发现单帐户配置链接的地区。

## 工具

20种工具，涵盖学术、日常生活、文档、消息、功能发现和凭证/地区健康检查。

| 域 | 工具 |
| --- | --- |
| 区 | `ic_list_districts` |
| 学生 | `ic_list_students` |
| 时间表 | `ic_get_schedule` |
| 作业 | `ic_list_assignments` (sectionID端; `missingOnly` /日期过滤器客户端) |
| 成绩 | `ic_list_grades`， `ic_list_recent_grades` （默认14d窗口） |
| 学校的日历 | `ic_list_school_days` |
| 出席 | `ic_list_attendance` (课程总结) `ic_list_attendance_events` （带有代码和注释的单个事件） |
| 行为 | `ic_list_behavior` (FeatureDisabled-aware) |
| 食品服务 | `ic_list_food_service` (FeatureDisabled-aware) |
| 文档 | `ic_list_documents`， `ic_download_document` |
| 消息传递 | `ic_list_messages` （3个来源：prism通知+ Messenger 2.0收件箱+门户公告）， `ic_get_message` （获取收件箱消息的解析HTML正文） |
| 老师 | `ic_list_teachers` （每组教师+指定辅导员） |
| 评估 | `ic_list_assessments` （标准化考试成绩） |
| 费用 | `ic_list_fees` （转让额+盈余） |
| 特性 | `ic_get_features` （每个注册显示选项标志） |

这些工具将被控制为写/IO操作： `ic_download_document`。

## 配置

`infinitecampus-mcp` 按优先级顺序尝试两个认证路径；以先成功者为准。现有设置保持不变。

1.  **Env-var凭证（遗留）。** 设置所有四个：
    
    ```
    IC_BASE_URL=https://campus.springfield.k12.example.us
    IC_DISTRICT=springfield
    IC_USERNAME=parent@example.com
    IC_PASSWORD=...
    IC_NAME=Springfield           # optional, defaults to IC_DISTRICT
    ```
    
2.  **ContextMint桥回退（不需要密码）。** 只设置 `IC_BASE_URL` + `IC_DISTRICT` （仍然需要，以便MCP知道要与哪个主机通信以及要在哪个区域上调度），然后安装ContextMint Bridge浏览器扩展 [它的发布页面](https://github.com/nullnet-app/contextmint-bridge/releases) (Chrome：下载Chrome压缩包并通过解压加载 `chrome://extensions` →开发者模式→解压加载；目前还没有Chrome网络商店列表。Safari还不能使用——它将在ContextMint应用程序中发布，该应用程序没有公共下载（所以现在使用Chrome），并登录一次您的IC门户。ContextMint Bridge是fetchproxy浏览器扩展，它的新名称来自同一个维护者 [fetchproxy自己的README](https://github.com/chrischall/fetchproxy#extension) 指向它。其来源是公开的 [nullnet-app / contextmint-bridge](https://github.com/nullnet-app/contextmint-bridge)：自己构建，或者根据 `.sha256` 旁边公布的文件(`shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256`）. MCP读取 `JSESSIONID` (HttpOnly) + `XSRF-TOKEN` 然后直接从Node转到api——扩展名是 **不** 在请求热路径中。每次会话失效时都会重复读取（JSESSIONID是一个具有短空闲超时的servlet会话），因此您可以保持登录状态，而无需重新启动MCP。

集 `IC_DISABLE_FETCHPROXY=1` 选择退出回退（将丢失的凭据变为硬错误——在无头CI中很有用）。

连接的地区（通过CUPS SSO）在主登录后自动发现—在两个地区有孩子的家长只配置主登录。不需要额外的配置。如果您拥有具有不同凭据的真正独立的IC实例，则运行两个MCP实例。

看到 `.env.example`。

## 状态

非官方-不隶属于无限校园。AI-maintained。

## 条款确认

通过使用此MCP服务器，您承认并同意以下内容：

**1\. 此服务器访问您自己的校园家长帐户。** 授权通过您自己的凭据进行，凭据的范围是您所在学区授权您查看的学生记录。它不会也不能访问其他任何人的学生记录。

**2\. [无限校园的使用条款](https://www.infinitecampus.com/terms/terms-of-use) 控制您对该服务器的使用**，就像他们管理你直接使用校园家长一样。这里最相关的条款是：

> 用户不得通过我们公开支持的接口以外的任何方式访问、使用或搜索服务（例如，抓取或使用内容来训练人工智能软件）。

和: _“您有责任保护您用于访问服务的密码，并同意不向任何第三方泄露您的密码。”_

每次调用此服务器中的工具时，您都同意这些条款（由维护者2026-05-23阅读）。该服务器使用Infinite Campus的移动应用JSON端点(`/campus/api/oneRosterCampus`， `/portal/api/...`)，它们不是“公开支持的接口”——IC可能会将其视为违反ToS。

**3\. 仅供家长/学生个人使用。** 本项目不隶属于Infinite Campus， Inc.或任何学区，也不受其认可、赞助或合作。这是一个个人自动化工具，授权校园家长/校园学生用户读取自己（或他们的学生）的记录。 **不** 用它来大量提取学生数据，分享另一个家庭的成绩，或者根据学生记录训练人工智能模型。

**4\. 适用FERPA + COPPA。** 学生教育记录受联邦家庭教育权利和隐私法案（FERPA）的保护，13岁以下用户的学生数据也受COPPA的保护。尽管 _你的_ 父门户访问是合法的； **如何存储、重新分配或将数据馈送到llm中受到监管**． 将此服务器的任何输出（成绩、出勤、行为记录、日程安排）视为机密学生数据。不要将其放在共享的LLM上下文中，不要将其粘贴到屏幕截图中，也不要在其上训练模型。

**5\. 你承担全部责任** 使用此服务器连接您的校园家长帐户的任何后果-速率限制，帐户警告，地区IT调查，或您的地区或无限校园采取的任何执法行动。贵地区可能有额外的可接受使用政策（可接受使用协议、家长手册）来进一步限制自动化。如果您的地区或无限校园反对您使用，请停止使用此服务器。

本节是维护人员对条款的善意总结-它不是法律建议，也不修改或取代Infinite Campus的实际使用条款或任何学区的政策。

## 常见问题

### infinitecampus-mcp 是什么？

无限校园（校园家长）MCP服务器-多区，只读（加上本地文件下载）

### 如何安装 infinitecampus-mcp？

在项目目录运行 npm install infinitecampus-mcp，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 infinitecampus-mcp，可以用 npx infinitecampus-mcp 直接运行。

### infinitecampus-mcp 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/infinitecampus-mcp 是否存在。

### infinitecampus-mcp 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### infinitecampus-mcp 可以商用吗？

infinitecampus-mcp 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### infinitecampus-mcp 还在维护吗？

最新版本 3\.2\.3 发布于 2026/11/04（1 天前）；至今共发布 48 个版本，其中过去 12 个月发布了 48 个；首次发布于 2026/04/16。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

