Connect the MCP server
Let Claude (and other AI assistants) act on your classroom through the Classmoji MCP server.
The Classmoji MCP server lets an AI assistant — Claude, or any Model Context Protocol client — work with your classroom on your behalf: read your roster, grades, assignments, and calendar, and take actions like grading submissions, resolving regrades, and managing pages, modules, and tokens.
You sign in once with your normal Classmoji (GitHub) account and approve a consent screen; no API keys to copy or manage.
The server URL
Section titled “The server URL”https://mcp.classmoji.io/mcpThat’s the only value you need for any client. When a client connects, it discovers everything else automatically and walks you through signing in.
Connect from Claude (claude.ai & desktop)
Section titled “Connect from Claude (claude.ai & desktop)”- In claude.ai (or the Claude desktop app), open Settings → Connectors.
- Click Add custom connector.
- Paste the server URL
https://mcp.classmoji.io/mcpand click Add. - Click Connect on the new connector. You’ll be sent to Classmoji to sign in with GitHub and approve access (read and write). When it’s done, the connector shows Connected.
- In a chat, click the + in the message box → Connectors, and toggle Classmoji on for that conversation. Claude can now use your classroom’s tools.
Connect from Claude Code
Section titled “Connect from Claude Code”claude mcp add --transport http classmoji https://mcp.classmoji.io/mcpThen, inside a Claude Code session, run /mcp, select classmoji, and choose Authenticate — your browser opens for the Classmoji sign-in and consent. Run /mcp again (or claude mcp list) to confirm the tools loaded.
Add --scope project if you want the server checked into the repo’s .mcp.json and shared with your team, instead of just your machine.
Connect from other tools
Section titled “Connect from other tools”The server works with any MCP client that supports remote (HTTP) servers with OAuth. The config differs slightly per tool — note the field names, they vary.
Cursor — .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
{ "mcpServers": { "classmoji": { "url": "https://mcp.classmoji.io/mcp" } }}Then open Settings → MCP Servers, click Needs Login next to Classmoji, and complete the sign-in.
VS Code (Copilot agent mode, VS Code 1.101+) — .vscode/mcp.json:
{ "servers": { "classmoji": { "type": "http", "url": "https://mcp.classmoji.io/mcp" } }}The root key is servers and "type": "http" is required. Click the Auth CodeLens above the entry to sign in.
Zed — settings.json, under context_servers:
{ "context_servers": { "classmoji": { "url": "https://mcp.classmoji.io/mcp" } }}Zed prompts you to authenticate automatically the first time it connects.
Windsurf / Devin Desktop — ~/.codeium/windsurf/mcp_config.json. Note the field is serverUrl, not url:
{ "mcpServers": { "classmoji": { "serverUrl": "https://mcp.classmoji.io/mcp" } }}MCP Inspector (for testing) — run npx @modelcontextprotocol/inspector, set Transport Type to Streamable HTTP, enter the server URL, and click Connect to run the OAuth flow interactively.
What you can do
Section titled “What you can do”Once connected, the assistant has two kinds of capabilities, each limited to your role in each classroom:
- Read — your classrooms, roster, teams, assignment containers and submissions, the grading queue, leaderboard, regrade requests, calendar, pages, modules, quizzes, and your token ledger.
- Act — add and remove emoji grades, assign graders, resolve regrade requests, update assignments, create and publish modules, create and edit pages, manage calendar events, and grant tokens.
Staff-only surfaces (rosters, grading, the leaderboard) require the corresponding teaching-team or owner role, exactly as in the web app; students connecting the same server get only their own view.
Managing access
Section titled “Managing access”Every action the assistant takes is recorded in your classroom’s audit log, just like an action in the web app. To revoke access, remove the connector (in Claude, Settings → Connectors; in Claude Code, claude mcp logout classmoji or Clear authentication in the /mcp menu) — the access is cut off immediately.