canvas-parent
This skill should be used when the user asks about Canvas LMS data — their own student account or any observed student. Triggers on phrases like "check Canvas", "what's my grade", "Canvas inbox", "what's due", "missing assignments", "Canvas LMS", "Instructure", "course announcements", "syllabus", or any request about courses, assignments, grades, conversations, announcements, planner items, or files in Canvas. Skill: canvas-parent Owner: chrischall Summary: This skill should be used when the user asks about Canvas LMS data — their own student account or any observed student. Triggers on phrases like "check Canvas", "what's my grade", "Canvas inbox", "what's due", "missing assignments", "Canvas LMS", "Instructure", "course announcements", "syllabus", or any request about courses, assignments, grades, conversations, announce
Rank
62
Safety
84
Downloads
1.6k
Updated
Oct 10, 2026
Version
2.1.9
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.6K downloads reported by the source. Last updated 10/10/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 10, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 10, 2026
- Adoption signal
- 1.6K downloadsadoption · observed Oct 10, 2026
- Latest release
- 2.1.9release · observed Oct 9, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s17cjx1a349nz5apaqp02vgz4h85728z:canvas-parent- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-canvas-parent/snapshot"
Documentation
CLAWHUB
108,775 characters of source documentation, loaded on request.
Extracted files
3 files captured from the source.
SKILL.md
---
name: canvas-parent
description: This skill should be used when the user asks about Canvas LMS data — their own student account or any observed student. Triggers on phrases like "check Canvas", "what's my grade", "Canvas inbox", "what's due", "missing assignments", "Canvas LMS", "Instructure", "course announcements", "syllabus", or any request about courses, assignments, grades, conversations, announcements, planner items, or files in Canvas.
---
# canvas-parent-mcp
MCP server for Canvas LMS (Instructure) — read courses, grades, assignments, announcements, planner items, and conversations; download course files. Mirrors the parent/observer scope of the sibling `infinitecampus-mcp`.
- **npm:** [npmjs.com/package/canvas-parent-mcp](https://www.npmjs.com/package/canvas-parent-mcp)
- **Source:** [github.com/chrischall/canvas-parent-mcp](https://github.com/chrischall/canvas-parent-mcp)
## Setup
### Option A — npx (recommended)
Add to `.mcp.json` in your project or `~/.claude/mcp.json`:
```json
{
"mcpServers": {
"canvas": {
"command": "npx",
"args": ["-y", "canvas-parent-mcp"],
"env": {
"CANVAS_BASE_URL": "https://cms.instructure.com"
}
}
}
}
```
With the [ContextMint Bridge](https://github.com/nullnet-app/contextmint-bridge/releases) browser extension installed and a signed-in Canvas tab, that's enough — the MCP reads your session cookies from the browser on the first request and again whenever the session expires, so keep the extension installed and the browser running. Add `CANVAS_TOKEN`, `CANVAS_CLIENT_*`/`CANVAS_REFRESH_TOKEN`, or `CANVAS_USERNAME`/`CANVAS_PASSWORD` to the `env` block if you'd rather use one of those modes.
### Option B — from source
```bash
git clone https://github.com/chrischall/canvas-parent-mcp
cd canvas-parent-mcp
npm install && npm run build
```
## Authentication
**fetchproxy fallback (recommended, zero-config).** Set only `CANVAS_BASE_URL`. Install the [ContextMint Bridge](https://github.com/nullnet-app/contextmint-bridge/releases) browser extension, sign into your Canvas instance once. The MCP reads `canvas_session` + `pseudonym_credentials` cookies from your tab on the first request and re-reads them on every 401; API calls go directly from Node in between, but the extension must stay reachable to renew the session. Works with any auth flow (SSO/SAML/2FA included). It's the fetchproxy extension under its new name, same maintainer ([fetchproxy's README](https://github.com/chrischall/fetchproxy#extension) points to it); verify a release zip with `shasum -a 256 -c <zip>.sha256` or build it from [source](https://github.com/nullnet-app/contextmint-bridge).
### Alternatives (env-var)
- **Personal access token** — set `CANVAS_TOKEN`. Most institutions have disabled this for non-admins.
- **OAuth** — set `CANVAS_CLIENT_ID`, `CANVAS_CLIENT_SECRET`, `CANVAS_REFRESH_TOKEN`. Bootstrap via `canvas-parent-mcp-qr-login`.
- **Username/password (session-scrape)** — set `CANVAS__meta.json
{
"ownerId": "kn700jq4sjtf2anb0rk3ft4p7n856872",
"slug": "canvas-parent",
"version": "2.1.9",
"publishedAt": 1791588228426
}skill-card.md
## Description: Helps users check courses, grades, assignments, messages, and files in their own or an observed student's Canvas account. This skill is ready for commercial/non-commercial use. ## Publisher: [chrischall](https://clawhub.ai/user/chrischall) ### License/Terms of Use: MIT-0 ## Use Case: Students and parents or other observers use this skill to review Canvas coursework, grades, deadlines, announcements, conversations, and course files for accounts they can access. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: Canvas tokens, passwords, or browser session cookies may expose private account records. Mitigation: Use the least-privilege authentication available, protect credentials like passwords, and disable the browser-cookie fallback if live session cookies should not be used. Risk: Downloaded course files and Canvas responses may contain confidential student information. Mitigation: Limit access to authorized accounts and handle downloaded files and responses as confidential student data. ## Reference(s): - [Canvas Parent on ClawHub](https://clawhub.ai/chrischall/skills/canvas-parent) - [Canvas Parent MCP package](https://www.npmjs.com/package/canvas-parent-mcp) - [ContextMint Bridge releases](https://github.com/nullnet-app/contextmint-bridge/releases) ## Skill Output: **Output Type(s):** [Text, Markdown, Guidance] **Output Format:** [Markdown or plain text] **Output Parameters:** [1D] **Other Properties Related to Output:** [May include confidential Canvas student records and links to course files.] ## Skill Version(s): 2.1.9 (source: ClawHub release metadata) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/chrischall/skills/canvas-parent",
"sourceUrl": "https://clawhub.ai/chrischall/skills/canvas-parent",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T05:40:19.107Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-canvas-parent/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-canvas-parent/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-10T05:40:19.107Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.6K downloads",
"href": "https://clawhub.ai/chrischall/canvas-parent",
"sourceUrl": "https://clawhub.ai/chrischall/canvas-parent",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T05:40:19.107Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "2.1.9",
"href": "https://clawhub.ai/chrischall/canvas-parent",
"sourceUrl": "https://clawhub.ai/chrischall/canvas-parent",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-10-09T23:23:48.426Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-canvas-parent/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-chrischall-canvas-parent/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 2.1.9",
"description": "- Updated documentation in SKILL.md to clarify how the ContextMint Bridge extension maintains and refreshes Canvas sessions. - Revised authentication section to explain session renewal requires the extension to remain installed and the browser to stay running. - Removed unnecessary skill-card.md file.",
"href": "https://clawhub.ai/chrischall/canvas-parent",
"sourceUrl": "https://clawhub.ai/chrischall/canvas-parent",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-10-09T23:23:48.426Z",
"isPublic": true
}
]
}Record generated Oct 10, 2026.
