Canvas LMS MCP Server
🎓 Canvas LMS MCPサーバー
Claude AIをCanvas LMSアカウントに接続し、自然言語を使ってコースワークとやり取りできるようにする堅牢なModel Context Protocol (MCP) サーバーです。
Python · Canvas REST API · MCP SDK で構築
✨ 機能 (4つのモジュールで14のツール)
📚 課題とコース
ツール | 説明 |
| 登録中のアクティブなコースをすべてリストアップ |
| すべての課題を取得(全コースまたはフィルタリング) |
| 今後N日間の締め切りを緊急度別に色分けして表示 |
| 特定の課題の詳細情報を取得 |
| 全コースの提出状況と未提出状況を確認 |
📊 成績
ツール | 説明 |
| 現在の成績を視覚的なプログレスバーで表示 |
| 課題ごとの内訳と現在の合計点を表示 |
| 未提出の課題をすべて取得 |
📢 お知らせとモジュール
ツール | 説明 |
| 各コースの最近のお知らせを取得 |
| ロック/完了ステータスを含むモジュールを取得 |
| 完了チェックボックス付きのモジュール内アイテムを取得 |
📅 カレンダー
ツール | 説明 |
| 今後N日間のすべてのイベントを取得 |
| 週ごとのスケジュールを一覧表示 |
| 全コースの今後のイベントをN件取得 |
🚀 セットアップ
1. リポジトリをクローン
git clone https://github.com/yourusername/canvas-mcp.git
cd canvas-mcp2. 依存関係をインストール
pip install -r requirements.txt3. Canvasの認証情報を設定
cp .env.example .env.env を編集します:
CANVAS_BASE_URL=https://yourschool.instructure.com
CANVAS_API_TOKEN=your_token_hereCanvas APIトークンの取得方法:
Canvasにログイン
アカウント → 設定 に移動
承認済み統合 までスクロール
新しいアクセストークン をクリック
トークンをコピーして
.envに貼り付け
4. Claude Desktopを設定
claude_desktop_config.json に以下を追加します:
Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"canvas": {
"command": "python",
"args": ["/absolute/path/to/canvas-mcp/server.py"],
"env": {
"CANVAS_BASE_URL": "canvas_base_url"
"CANVAS_API_TOKEN": "your_token_here"
}
}
}
}5. Claude Desktopを再起動
これでCanvasツールがClaudeのサイドバーに表示されます!
💬 プロンプト例
接続後、Claudeに以下のように尋ねてみてください:
"今週締め切りの課題は何ですか?"
"現在のGPAの推定値は?"
"未提出の課題はありますか?"
"教授から最近投稿されたお知らせはありますか?"
"コース 12345 の成績の内訳を見せて"
"今週の予定はどうなっていますか?"
🗂️ プロジェクト構造
canvas-mcp/
├── server.py # MCP server entry point (14 tools)
├── canvas_client.py # Canvas REST API wrapper with pagination
├── tools/
│ ├── assignments.py # Assignment & course tools
│ ├── grades.py # Grade tools
│ ├── announcements.py# Announcement & module tools
│ └── calendar.py # Calendar tools
├── .env.example # Environment config template
├── requirements.txt
└── README.md🔒 プライバシーとセキュリティ
読み取り専用 — このサーバーはCanvasのデータを書き込み、送信、変更することはありません
🛠️ 技術スタック
Python 3.10+
MCP SDK — Model Context Protocol
httpx — 非同期対応HTTPクライアント
python-dotenv — 環境設定
Canvas LMS REST API
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/adityas0604/MCP-Canvas'
If you have feedback or need assistance with the MCP directory API, please join our Discord server