Skip to main content
Glama

canvas-mcp-lite

Canvas LMS向けの、インストラクターに焦点を当てた軽量なMCPサーバーで、FastMCPで構築されています。AIアシスタントがあなたのCanvasインスタンスに対してティーチングアシスタントとして機能できるようにします。コースの閲覧、学生の提出物(PDF/DOCXファイルのアップロードを含む)の読み取り、ルーブリックによる採点、アナウンスの投稿、モジュールやページの管理などが可能です。

Tools

11のCanvasドメインにわたる64のツール。リスクレベル別に整理されています。

グループ

読み取り

32

list_courses, list_ungraded_submissions, list_missing_submissions, get_submission_content, list_quiz_submissions, get_student_analytics

書き込み

23

create_assignment, grade_submission, grade_with_rubric, post_grades, create_announcement, send_message, upload_course_file

削除

9

delete_assignment, delete_page, bulk_delete_announcements

主な特長:

  • 学生が実際に提出したものを読むget_submission_content は、アップロードされたPDF、DOCXファイル、プレーンテキスト(さらに、入力されたテキストエントリ、URL、ディスカッション提出物)からテキストを抽出し、提出コメントのスレッドも含めるため、採点ツールは実際のコンテンツに基づいて動作します。

  • 実際の採点ワークフローlist_ungraded_submissions は採点キューであり、grade_submission は点数、合格/不合格、文字評価、パーセント評価を処理します(Canvasがコメントを保存しても成績を拒否した場合は部分的な成功を報告します)。また、post_grades/hide_grades は学生が結果をいつ見るかを制御します。

  • コースコードまたはID — すべてのコーススコープのツールは、数値のコースIDまたはcourse_code文字列(短いTTLキャッシュで解決)のいずれかを受け入れます。

  • デフォルトで安全 — 課題とページは、特に指定しない限り非公開で作成されます。破壊的なツールは明確にマークされています。

  • LLMに優しい出力 — すべてのツールは、生のJSONではなく、整形された読みやすいテキストを返します。

Related MCP server: Canvas MCP

Setup

Python 3.10以上が必要です。

  1. インストール(プロジェクトルートから編集可能モードで):

    python -m venv .venv
    source .venv/bin/activate
    pip install -e .
  2. 資格情報を設定 パッケージの隣にある.envファイルに:

    CANVAS_API_URL=https://yourschool.instructure.com/api/v1
    CANVAS_API_TOKEN=your-canvas-access-token

    Canvasのアカウント → 設定 → 新しいアクセストークンでトークンを生成します。.envはパッケージの場所(作業ディレクトリではなく)を基準に読み込まれます。MCPクライアントは任意のディレクトリからサーバーを起動するためです。

  3. 実行 コンソールスクリプト経由で:

    canvas-mcp-lite

Using with Claude

stdio MCPサーバーとして登録します。Claude Codeの場合:

claude mcp add canvas -- /path/to/.venv/bin/canvas-mcp-lite

または、Claude Desktop / MCPクライアント設定の場合:

{
  "mcpServers": {
    "canvas": {
      "command": "/path/to/.venv/bin/canvas-mcp-lite"
    }
  }
}

Project layout

canvas_mcp_lite/
  server.py      FastMCP entry point; registers READ/WRITE/DELETE tool lists
  client.py      Async Canvas API client: auth, pagination, retry, errors
  util.py        Course code → ID resolution (cached), date formatting
  tools/         One module per domain: courses, assignments, grading,
                 modules_pages, announcements, discussions, files, quizzes,
                 messaging, peer_review, analytics

Notes

  • パッケージ名はcanvas_mcp_liteで、相対インポートを使用しています。インストールされたcanvas-mcp-liteスクリプトから実行してください。python server.pyではありません。

  • テキスト抽出のためのファイルダウンロードは25MBに制限されています。スキャンされた/画像のみのPDFは、テキストの代わりに通知を返します。

  • Canvas APIエラーはステータスコードとURLとともに表示されます。一時的なタイムアウトはバックオフ付きで再試行されます。

Install Server
F
license - not found
B
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vkumar04/canvas-mcp-lite'

If you have feedback or need assistance with the MCP directory API, please join our Discord server