# ClassDojo Roster MCP [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/Eason0in/classdojo-mcp  
**GitHub Stars:** 0  
**npm Downloads (last month):** 452  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/classdojo-roster-mcp

## Description
Unofficial local-first MCP for previewing, importing, and verifying ClassDojo rosters from XLSX.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "classdojo-roster-mcp": {
    "command": "npx",
    "args": ["-y","classdojo-mcp"],
    "env": {
      "CLASSDOJO_CDP_URL": ""
    }
  }
}
```

**Requires environment variables:** `CLASSDOJO_CDP_URL` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What the ClassDojo Roster MCP MCP server does

The ClassDojo Roster MCP MCP server helps teachers work with ClassDojo rosters and classroom skills from an MCP-compatible client. It reads an XLSX workbook, identifies likely class, seat, and student-name columns across its sheets, and compares selected source data with visible ClassDojo classes.

Roster imports support two name formats. `seat_number_dot_name` preserves a seat number by creating names such as `1.Student A`, while `name_only` uses ClassDojo's bulk paste behavior and is rejected when the source class contains duplicate names. The workflow requires explicit sheet selection and class mappings, reducing the chance of combining unrelated workbook data.

The server also handles classroom-skill synchronization. A sync can use the built-in Traditional Chinese classroom preset, a source ClassDojo class, or a complete inline rule list. The comparison reports additions, changes, and removals before an exact replacement is applied.

## How it works

The server uses MCP stdio and a local browser adapter. A teacher starts Chrome or another Chromium browser with Chrome DevTools Protocol enabled, signs in to ClassDojo in that dedicated profile, and points the server at the local CDP endpoint. The server does not request a ClassDojo password, cookie, or API token.

Write operations are separated from review. A roster or skill preview creates a short-lived preview ID, and applying it requires both that ID and `confirm: true`. Preview IDs expire after 15 minutes, remain only in the running MCP process, and are consumed by the first apply attempt. After a roster import, the server reads the class again and compares names and counts. Skill synchronization similarly reads target classes back after applying.

The ClassDojo Roster MCP MCP server stops a skill apply when the class has changed since preview, so a new preview is required before retrying. Matching skills remain unchanged, while the synchronization otherwise replaces the selected class's rules exactly.

## Setup and configuration

Requirements are Node.js 20 or newer, Chrome or another Chromium browser with CDP, a ClassDojo teacher account, and an MCP client that supports local stdio servers. Install the published package with `npx -y classdojo-mcp`.

Start a dedicated browser profile with remote debugging on loopback, sign in to ClassDojo, and configure the MCP client with:

```json
{
  "command": "npx",
  "args": ["-y", "classdojo-mcp"],
  "env": {
    "CLASSDOJO_CDP_URL": "http://127.0.0.1:9222"
  }
}
```

The same stdio configuration is documented for Claude Desktop, Cursor, and Codex; VS Code uses its `servers` configuration format. Keep the CDP port on loopback because anyone able to reach the endpoint may be able to control the browser session.

## Tools and capabilities

Read-only tools include:

- `classdojo_doctor` for browser connection, login, and visible-class checks
- `classdojo_list_classes`, `classdojo_get_roster`, and `classdojo_get_skills`
- `classdojo_inspect_workbook` for workbook-wide column detection
- `classdojo_get_ui_state` for detecting blocking dialogs without dismissing them
- Roster and skill verification tools for independent comparisons

Preview and write tools include `classdojo_preview_roster_import`, `classdojo_apply_roster_import`, `classdojo_preview_skill_sync`, and `classdojo_apply_skill_sync`. The `classdojo_configure_skill_rules` prompt guides review of the built-in preset while keeping preview, approval, application, and verification separate.

## Limitations and notes

This is an unofficial community project and is not affiliated with or supported by ClassDojo. It depends on the signed-in ClassDojo website rather than an official public API, so ClassDojo interface changes may require an adapter update. The server works only with classes visible in the teacher session.

All screenshots and sample data described by the project are synthetic. Workbook previews and verification require an explicit non-empty `sheetNames` selection and class mappings. Skill synchronization can partially fail; affected classes need a fresh preview before retrying. A human should review each preview before approving a write.

_Full upstream README: https://allmcps.com/mcp/classdojo-roster-mcp/readme_

