Site MCP Consumer
Use this skill when you want to wire one of the site-scoped read-only MCP sidecars into Codex, Claude Code, Claude Desktop, or another local MCP-capable runtime that should keep Campus Copilot on the snapshot-first side.
Pick the right surface first
- If you need cross-site health, provider status,
ask_campus_copilot, or export tools, start with the generic server examples underexamples/integrations/instead of a site sidecar. - If you only need one site's records from a snapshot, keep using this skill and
@campus-copilot/mcp-readonly.
Inputs
- one site name:
canvas,gradescope,edstem, ormyuw - one snapshot path such as
examples/workspace-snapshot.sample.json - one local consumer that can launch a stdio MCP sidecar
Steps
- Choose one site MCP binary:
campus-copilot-mcp-canvascampus-copilot-mcp-gradescopecampus-copilot-mcp-edstemcampus-copilot-mcp-myuw
- Point
CAMPUS_COPILOT_SNAPSHOTat a snapshot JSON file. - Run the sidecar with
pnpm --filter @campus-copilot/mcp-readonly start:<site>. - Start with
get_site_overview, then move to the site-specific list tools. - If your consumer wants a JSON config example, reuse:
examples/mcp/codex.example.jsonexamples/mcp/claude-desktop.example.jsonexamples/mcp/codex-repo-root.example.jsonexamples/mcp/claude-desktop-repo-root.example.json
- If your runtime is OpenClaw-style or another local operator shell, treat those config files as reusable only when it explicitly supports the same
mcpServersshape. Otherwise, use the sidecar command directly and followexamples/openclaw-readonly.md. - Keep all claims snapshot-scoped and read-only.
Good fit
- inspect one site's current assignments, messages, or events
- keep a coding-agent workflow grounded in one snapshot instead of raw browser state
- test builder-side integration without reopening live campus sessions
Not a fit
- live browser takeover
- posting, replying, or submitting on external services
- inventing a write-capable plugin contract
Recommended repo-local references
examples/integrations/codex-mcp.example.jsonexamples/integrations/claude-code-mcp.example.jsonexamples/mcp/claude-desktop.example.jsonexamples/mcp/codex-repo-root.example.jsonexamples/mcp/claude-desktop-repo-root.example.jsonexamples/openclaw-readonly.md