# 安装 io.github.chrischall/canvas-parent-mcp

- 类型: MCP 工具
- 说明: 帮助用户在 Claude 中管理 Canvas 课程、成绩、作业、计划与文件。
- 仓库: https://github.com/chrischall/canvas-parent-mcp

## 方式一 · 一键代装（复制提示词让 AI 代劳）

### Claude Code
```
请帮我安装 askskill 上的 "io.github.chrischall/canvas-parent-mcp" MCP 服务：
执行：claude mcp add io-github-chrischall-canvas-parent-mcp -- npx -y canvas-parent-mcp
```

### Codex
```
请帮我安装 askskill 上的 "io.github.chrischall/canvas-parent-mcp" MCP 服务：
在 ~/.codex/config.toml 中添加：
[mcp_servers.io-github-chrischall-canvas-parent-mcp]
command = "npx"
args = ["-y","canvas-parent-mcp"]
然后重启 Codex 生效
```

### Cursor
```
请帮我安装 askskill 上的 "io.github.chrischall/canvas-parent-mcp" MCP 服务：
在 .cursor/mcp.json 的 "mcpServers" 中添加：
"io-github-chrischall-canvas-parent-mcp": { "command": "npx", "args": ["-y","canvas-parent-mcp"] }
然后在 Cursor 设置 > MCP 中启用
```

## 方式二 · 命令行安装（原生命令与配置）

### Claude Code
```bash
claude mcp add --env CANVAS_BASE_URL=YOUR_VALUE --env CANVAS_USERNAME=YOUR_VALUE --env CANVAS_PASSWORD=YOUR_VALUE --env CANVAS_TOKEN=YOUR_VALUE --env CANVAS_CLIENT_ID=YOUR_VALUE --env CANVAS_CLIENT_SECRET=YOUR_VALUE --env CANVAS_REFRESH_TOKEN=YOUR_VALUE --env CANVAS_NAME=YOUR_VALUE --transport stdio io-github-chrischall-canvas-parent-mcp -- npx -y canvas-parent-mcp
```
需要环境变量：CANVAS_BASE_URL, CANVAS_USERNAME, CANVAS_PASSWORD, CANVAS_TOKEN, CANVAS_CLIENT_ID, CANVAS_CLIENT_SECRET, CANVAS_REFRESH_TOKEN, CANVAS_NAME

### Codex
```bash
codex mcp add --env CANVAS_BASE_URL=YOUR_VALUE --env CANVAS_USERNAME=YOUR_VALUE --env CANVAS_PASSWORD=YOUR_VALUE --env CANVAS_TOKEN=YOUR_VALUE --env CANVAS_CLIENT_ID=YOUR_VALUE --env CANVAS_CLIENT_SECRET=YOUR_VALUE --env CANVAS_REFRESH_TOKEN=YOUR_VALUE --env CANVAS_NAME=YOUR_VALUE io-github-chrischall-canvas-parent-mcp -- npx -y canvas-parent-mcp
```
配置文件 ~/.codex/config.toml：
```toml
[mcp_servers.io-github-chrischall-canvas-parent-mcp]
command = "npx"
args = ["-y","canvas-parent-mcp"]

[mcp_servers.io-github-chrischall-canvas-parent-mcp.env]
CANVAS_BASE_URL = "YOUR_VALUE"
CANVAS_USERNAME = "YOUR_VALUE"
CANVAS_PASSWORD = "YOUR_VALUE"
CANVAS_TOKEN = "YOUR_VALUE"
CANVAS_CLIENT_ID = "YOUR_VALUE"
CANVAS_CLIENT_SECRET = "YOUR_VALUE"
CANVAS_REFRESH_TOKEN = "YOUR_VALUE"
CANVAS_NAME = "YOUR_VALUE"
```
需要环境变量：CANVAS_BASE_URL, CANVAS_USERNAME, CANVAS_PASSWORD, CANVAS_TOKEN, CANVAS_CLIENT_ID, CANVAS_CLIENT_SECRET, CANVAS_REFRESH_TOKEN, CANVAS_NAME

### Cursor
配置文件 .cursor/mcp.json：
```json
{
  "mcpServers": {
    "io-github-chrischall-canvas-parent-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "canvas-parent-mcp"
      ],
      "env": {
        "CANVAS_BASE_URL": "YOUR_VALUE",
        "CANVAS_USERNAME": "YOUR_VALUE",
        "CANVAS_PASSWORD": "YOUR_VALUE",
        "CANVAS_TOKEN": "YOUR_VALUE",
        "CANVAS_CLIENT_ID": "YOUR_VALUE",
        "CANVAS_CLIENT_SECRET": "YOUR_VALUE",
        "CANVAS_REFRESH_TOKEN": "YOUR_VALUE",
        "CANVAS_NAME": "YOUR_VALUE"
      }
    }
  }
}
```
一键安装：cursor://anysphere.cursor-deeplink/mcp/install?name=io-github-chrischall-canvas-parent-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsImNhbnZhcy1wYXJlbnQtbWNwIl0sImVudiI6eyJDQU5WQVNfQkFTRV9VUkwiOiJZT1VSX1ZBTFVFIiwiQ0FOVkFTX1VTRVJOQU1FIjoiWU9VUl9WQUxVRSIsIkNBTlZBU19QQVNTV09SRCI6IllPVVJfVkFMVUUiLCJDQU5WQVNfVE9LRU4iOiJZT1VSX1ZBTFVFIiwiQ0FOVkFTX0NMSUVOVF9JRCI6IllPVVJfVkFMVUUiLCJDQU5WQVNfQ0xJRU5UX1NFQ1JFVCI6IllPVVJfVkFMVUUiLCJDQU5WQVNfUkVGUkVTSF9UT0tFTiI6IllPVVJfVkFMVUUiLCJDQU5WQVNfTkFNRSI6IllPVVJfVkFMVUUifX0
需要环境变量：CANVAS_BASE_URL, CANVAS_USERNAME, CANVAS_PASSWORD, CANVAS_TOKEN, CANVAS_CLIENT_ID, CANVAS_CLIENT_SECRET, CANVAS_REFRESH_TOKEN, CANVAS_NAME
