Canvas MCP Server について
Canvas MCP ServerはMCPクライアントをCanvas LMS APIに接続し、コース一覧ツールと使い方を案内するプロンプトを提供します。Cursorなどを通じてCanvasを操作するユーザー向けです。
主な機能
- 01Canvasのコース一覧
- 02登録種別による絞り込み
- 03対話型のツールヘルププロンプト
活用シーン
- 01アカウントで利用可能なコースの確認
- 02教師・学生・TAの登録種別でコースを絞り込み
MCP 対応
Canvas LMSのコース一覧とツールヘルプ機能をMCPクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Canvas MCP サーバー
Canvas LMS API 用の Model Context Protocol(MCP)サーバー実装です。このサーバーを使用すると、Canvas LMS とプログラムからやり取りできます。
機能
- 登録タイプで任意に絞り込みながら、Canvas LMS のコースを一覧表示
- ツールの使い方を案内する対話型ヘルププロンプト
前提条件
- Node.js 18 以降
- Canvas LMS インスタンス
- Canvas API アクセストークン
- Cursor(クライアント連携用)
セットアップ
- このリポジトリをクローンします
- 依存関係をインストールします:
npm install - 環境変数を設定します:
export CANVAS_BASE_URL="https://your-canvas-instance.com" export CANVAS_ACCESS_TOKEN="your-api-token" - プロジェクトをビルドします:
npm run build - サーバーを起動します:
npm start
Cursor との接続
この MCP サーバーを Cursor で使用するには:
- Cursor の設定を開きます
- MCP 設定セクションに移動します
- 新しいサーバー設定を追加します:
{ "mcpServers": { "canvas": { "command": "npm", "args": [ "start" ], "cwd": "/path/to/mcp-server-canvas" } } } - 設定を保存し、Cursor を再起動します
- Canvas ツールが Cursor の MCP ツールパネルで使用できるようになります
利用可能なツール
list_courses
Canvas LMS のすべてのコースを一覧表示します。
パラメーター:
enrollment_type(任意):登録タイプ(teacher、student、ta)でコースを絞り込みます
レスポンス例:
{
"content": [
{
"type": "text",
"text": [
{
"id": 1234,
"name": "Example Course",
"code": "EX101",
"state": "available",
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2024-12-31T23:59:59Z"
}
]
}
]
}
list-courses-help
list_courses ツールの使い方を案内する対話型プロンプトです。
開発
このサーバーは TypeScript と MCP SDK を使用して構築されています。新しい機能を追加するには:
CanvasAPIクラスに新しい API メソッドを追加しますserver.tool()を使用して新しいツールを登録しますserver.prompt()を使用してヘルププロンプトを登録します- 変更をビルドしてテストします
トラブルシューティング
問題が発生した場合:
- 環境変数が正しく設定されていることを確認します
- Canvas API トークンに必要な権限があることを確認します
- Cursor の MCP サーバーログでエラーメッセージを確認します
- Cursor の設定でサーバーのパスが正しいことを確認します
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。