Canvas MCP Server

Integrations

  • Allows interaction with the Canvas Learning Management System API, providing tools for managing courses, assignments, enrollments, and student grades within Canvas.

Canvas MCP サーバー

Canvas APIと連携するためのモデルコンテキストプロトコル(MCP)サーバー。このサーバーを使用すると、Canvas内でコース、課題、登録、成績を管理できます。

前提条件

  • Node.js : バージョン18以上
  • Canvas APIトークン: Canvasアカウントから取得
  • Canvas ドメイン: 通常は、 canvas.instructure.com

設定

  1. リポジトリのクローンを作成する
    git clone https://github.com/yourusername/canvas-mcp-server.git cd canvas-mcp-server
  2. 依存関係をインストールする
    npm install
  3. 環境変数を設定する

サンプル環境ファイルをコピーします。

cp .env.example .env

.env を編集し、プレースホルダーの値を実際の Canvas API トークンとドメインに置き換えます。

プロジェクトを構築する

npm run build
  1. サーバーを実行する
    npm start
    サーバーが起動し、stdio 経由で MCP 要求をリッスンします。

Claudeデスクトップに接続しています

  1. クロードの設定を更新するMCP サーバー構成を claude_desktop_config.json に追加します。
"canvas-mcp-server": { "command": "npx", "args": ["-y", "canvas-mcp-server"] },

Claudeデスクトップを再起動します

Claude Desktopを完全に終了してください。Claude Desktopを再起動してください。🔌メニューに移動して、Canvas MCPサーバーを見つけて接続してください。

利用可能なツール(学生向けのツールも近日中に追加予定)

  • canvas_create_course : Canvas に新しいコースを作成します。
  • canvas_update_course : Canvas 内の既存のコースを更新します。
  • canvas_create_assignment : Canvas コースに新しい課題を作成します。
  • canvas_update_assignment : 既存の課題を更新します。
  • canvas_submit_grade : 生徒の課題の成績を送信します。
  • canvas_enroll_user : ユーザーをコースに登録します。

エラー処理

ツールは、問題が発生した場合にisError: trueというエラーメッセージを返します。実行時エラーを回避するために、必要な環境変数がすべて設定されていることを確認してください。

トラブルシューティング

  • ビルド エラー:

TypeScript のバージョンを確認します: npx tsc --version クリーンしてリビルドします: rm -rf build/ && npm run build

  • ランタイムエラー:詳細なエラーメッセージについてはログを確認してください。環境変数が正しく設定されていることを確認してください。
  • 型エラー:TypeScriptの型チェックを使用して型を検証する: npx tsc --noEmit

貢献

貢献を歓迎します!改善やバグ修正については、問題を報告したり、プルリクエストを送信してください。

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています。


追加情報

  • 型安全性: types.tsファイルは、Canvas API とのすべてのやり取りが型安全であることを保証し、実行時エラーを削減し、コードの保守性を向上させます。
  • エラー処理: サーバーは、 isErrorフラグを使用して意味のあるメッセージを返すことでエラーを適切に処理し、クライアント (Claude Desktop など) がエラーを理解して適切に対応できるようにします。
  • 環境変数: API トークンなどの機密情報は環境変数を通じて管理され、さまざまな環境にわたるセキュリティと柔軟性が向上します。
  • モジュール性: 関心事を異なるファイル ( types.tsclient.tsindex.ts ) に分割すると、コードベースのナビゲートと保守が容易になります。

プロジェクトの具体的なニーズに合わせて、ファイルパスや設定を自由に調整してください。さらにサポートが必要な場合はお知らせください。

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Canvas 学習管理システム API とのやり取りを可能にし、ユーザーが Canvas 内でコース、課題、登録、成績を管理できるようにするモデル コンテキスト プロトコル サーバー。

  1. 前提条件
    1. 設定
      1. Claudeデスクトップに接続しています
      2. 利用可能なツール(学生向けのツールも近日中に追加予定)
      3. エラー処理
      4. トラブルシューティング
      5. 貢献
      6. ライセンス
      7. 追加情報

    Related MCP Servers

    • -
      security
      A
      license
      -
      quality
      A local server that enables interaction with Canvas Learning Management System API through Claude Desktop, allowing users to manage courses, access assignments, view announcements, and retrieve course materials.
      Last updated -
      1
      Python
      MIT License
      • Apple
    • -
      security
      A
      license
      -
      quality
      A Model Context Protocol server that enables creating, modifying, and validating infinite canvas data structures according to the JSON Canvas 1.0 specification.
      Last updated -
      1
      Python
      MIT License
    • -
      security
      F
      license
      -
      quality
      A Model Context Protocol server that provides a comprehensive interface for interacting with the ConnectWise Manage API, simplifying API discovery, execution, and management for both developers and AI assistants.
      Last updated -
      46
      2
      Python
      • Linux
      • Apple
    • -
      security
      F
      license
      -
      quality
      A Model Context Protocol server that helps students manage academic workflows by integrating with Canvas and Gradescope to fetch deadlines, download course materials, and sync with macOS Calendar or Reminders.
      Last updated -
      3
      Python
      • Apple

    View all related MCP servers

    ID: w48kv5b02m