跳到正文
cccskills
免费在 GitHub 公开

canvas-api

Canvas API Connection Skill

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md3.7 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Canvas API Connection Skill

Complete guide to connecting and using Canvas LMS API for Whitecliffe courses.

Quick Reference

ItemValue
User ID2396
User NameMohamed Abdul Latiff (Ariff)
Canvas URLhttps://learn.mywhitecliffe.com
MCP Servercanvas-mcp-sse.ariff.dev

Current Courses (2025)

CourseIDCode
Applied Project2366IT8107
Cybersecurity Architecture2368IT8109

Connection Methods

Method 1: Canvas MCP (Recommended)

The Canvas MCP server is already configured and provides 12 tools:

Course Tools:

  • get_courses - List all enrolled courses
  • get_modules - Get course modules

Assignment Tools:

  • get_assignments - List assignments for a course
  • get_upcoming_assignments - Next 7 days deadlines

Grade Tools:

  • get_grades - Current grades for a course
  • get_submissions - Submission details

Discussion Tools:

  • get_discussion_topics - List discussions
  • get_announcements - Course announcements

Quiz Tools:

  • get_quizzes - List quizzes

Example Usage

# Get all courses
mcp__canvas-mcp__get_courses()

# Get assignments for IT8107
mcp__canvas-mcp__get_assignments(course_id=2366)

# Check grades
mcp__canvas-mcp__get_grades(course_id=2366)

# Get upcoming deadlines
mcp__canvas-mcp__get_upcoming_assignments()

Method 2: Direct API

For custom integrations or when MCP is unavailable:

Base URL: https://learn.mywhitecliffe.com/api/v1

Authentication:

# Store token securely (never commit!)
export CANVAS_TOKEN="your-token-here"

# API request
curl -H "Authorization: Bearer $CANVAS_TOKEN" \
     "https://learn.mywhitecliffe.com/api/v1/courses"

Common Endpoints:

EndpointDescription
/coursesList courses
/courses/:id/assignmentsCourse assignments
/courses/:id/gradesCourse grades
/courses/:id/modulesCourse modules
/users/self/upcoming_eventsUpcoming events

Method 3: Python SDK

from canvasapi import Canvas

API_URL = "https://learn.mywhitecliffe.com"
API_KEY = os.environ.get("CANVAS_TOKEN")

canvas = Canvas(API_URL, API_KEY)
user = canvas.get_current_user()
courses = user.get_courses(enrollment_state='active')

Setup Instructions

Adding Canvas MCP to Claude

Already configured in mcp-config.json:

{
  "mcpServers": {
    "canvas-mcp": {
      "type": "sse",
      "url": "https://canvas-mcp-sse.ariff.dev/sse"
    }
  }
}

Getting API Token

  1. Log in to https://learn.mywhitecliffe.com
  2. Go to Account → Settings
  3. Scroll to "Approved Integrations"
  4. Click "+ New Access Token"
  5. Set expiry (recommended: end of semester)
  6. Copy token immediately (shown only once)

Storing Token Securely

macOS Keychain:

security add-generic-password -a "$USER" -s "canvas-api" -w "YOUR_TOKEN"

Environment variable:

# Add to ~/.zshrc
export CANVAS_TOKEN="$(security find-generic-password -a "$USER" -s "canvas-api" -w)"

Important Notes

⚠️ Always verify with MCP tools - Don't assume course/assignment details

⚠️ Token security - Never commit tokens to git

⚠️ Rate limits - Canvas has API rate limits, batch requests when possible

⚠️ Course IDs change - Each semester has new course IDs

Troubleshooting

"Unauthorized" errors:

  • Token expired - generate new one
  • Token revoked - check Canvas settings

MCP not responding:

Missing courses:

  • Check enrollment status
  • Some courses may be unpublished

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Complete methodology for preventing AI hallucinations. Use when accuracy is critical and you need Claude to verify before claiming, cite before asserting, and admit uncertainty instead of guessing.

中文简介正在准备中。当前显示原文说明。

a-ariff/ariff-claude-plugins142026年3月29日 更新

Transform rough ideas into solid designs through structured questioning

中文简介正在准备中。当前显示原文说明。

a-ariff/ariff-claude-plugins142026年3月29日 更新

Forces every code-related claim to include file:line citations. No citation means the claim must be verified or removed. Use when building documentation, writing code reviews, or any output that others will rely on.

中文简介正在准备中。当前显示原文说明。

a-ariff/ariff-claude-plugins142026年3月29日 更新

Assign confidence scores (0-100) to every claim in a response. Helps users understand which parts are verified facts and which are educated guesses. Use when the user needs to know how much to trust each part of the answer.

中文简介正在准备中。当前显示原文说明。

a-ariff/ariff-claude-plugins142026年3月29日 更新

Forces Claude to extract exact quotes from files before making claims about them. Prevents hallucinations by grounding every statement in actual text from the codebase. Use when working with large files or unfamiliar code.

中文简介正在准备中。当前显示原文说明。

a-ariff/ariff-claude-plugins142026年3月29日 更新

Verify every claim from multiple independent angles -- code, docs, tests, git history. Use when you need high confidence that something is correct before acting on it.

中文简介正在准备中。当前显示原文说明。

a-ariff/ariff-claude-plugins142026年3月29日 更新

查看 a-ariff 的全部技能

报告此技能的问题