Compatible with every major AI agent and IDE
What is the Canvas LMS MCP Server?
Connect your Canvas LMS instance to any AI agent to automate course administration and student management through natural conversation.
What you can do
- Course Management — List, create, update, or delete courses. Fetch detailed metadata for specific course IDs.
- Account Administration — Navigate account hierarchies, list sub-accounts, and update organizational details.
- User Operations — Create and update user profiles, or retrieve specific user details and activity streams.
- Assignments & Tasks — List all assignments within a course and track your personal 'To Do' items and activity stream.
- Workflow Automation — Use your AI as a teaching assistant or admin to handle repetitive setup tasks in the LMS.
How it works
- Subscribe to this server
- Enter your Canvas Domain (e.g., school.instructure.com) and Personal Access Token
- Start managing your virtual classroom from Claude, Cursor, or any MCP-compatible client
Who is this for?
- Educators & Tutors — quickly check assignment lists or update course details without navigating complex menus
- LMS Administrators — automate user creation and account management across sub-accounts
- Students & Developers — track personal todos and activity streams directly from the terminal or code editor
Built-in capabilities (45)
Make a user an admin in an account
Create a new assignment in a course
Create a new conversation
Create a new Canvas course
Create a new discussion topic in a course
Create a new quiz in a course
Create a new role in an account
Import SIS data
Create a new Canvas user
Delete or conclude a Canvas course
Execute a GraphQL query against Canvas
Get details for a specific Canvas account
Get current user activity stream
Get details for a specific assignment
Get details for a specific conversation
Get details for a specific Canvas course
Get details for a specific file
Get details for a specific folder
Get details for a specific page
Get details for a specific quiz
Get status of a SIS import
Get sub-accounts for a specific account
Get current user todo items
Show user details
Grade a submission
List Canvas accounts
List admins in an account
List announcements
List assignments for a course
List conversations (Inbox)
List your Canvas courses
List discussion topics in a course
List files in a course
List sub-folders within a folder
List items in a specific module
List modules in a course
List pages in a course
List quizzes in a course
List roles in an account
List submissions for an assignment
Submit an assignment
Update an existing Canvas account
Edit an existing assignment
Update an existing Canvas course
Update an existing Canvas user
Why Mastra AI?
Mastra's agent abstraction provides a clean separation between LLM logic and Canvas LMS tool infrastructure. Connect 45 tools through Vinkius and use Mastra's built-in workflow engine to chain tool calls with conditional logic, retries, and parallel execution. deployable to any Node.js host in one command.
- —
Mastra's agent abstraction provides a clean separation between LLM logic and tool infrastructure. add Canvas LMS without touching business code
- —
Built-in workflow engine chains MCP tool calls with conditional logic, retries, and parallel execution for complex automation
- —
TypeScript-native: full type inference for every Canvas LMS tool response with IDE autocomplete and compile-time checks
- —
One-command deployment to any Node.js host. Vercel, Railway, Fly.io, or your own infrastructure
Canvas LMS in Mastra AI
Canvas LMS and 4,000+ other MCP servers. One platform. One governance layer.
Teams that connect Canvas LMS to Mastra AI through Vinkius don't need to source, host, or maintain individual MCP servers. Every tool call runs inside a hardened runtime with credential isolation, DLP, and a signed audit chain.
Raw MCP | Vinkius | |
|---|---|---|
| Server catalog | Find and host yourself | 4,000+ managed |
| Infrastructure | Self-hosted | Sandboxed V8 isolates |
| Credential handling | Plaintext in config | Vault + runtime injection |
| Data loss prevention | None | Configurable DLP policies |
| Kill switch | None | Global instant shutdown |
| Financial circuit breakers | None | Per-server limits + alerts |
| Audit trail | None | Ed25519 signed logs |
| SIEM log streaming | None | Splunk, Datadog, Webhook |
| Honeytokens | None | Canary alerts on leak |
| Custom domains | Not applicable | DNS challenge verified |
| GDPR compliance | Manual effort | Automated purge + export |
Why teams choose Vinkius for Canvas LMS in Mastra AI
The Canvas LMS MCP Server runs on Vinkius-managed infrastructure inside AWS — a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts. All 45 tools execute in hardened sandboxes optimized for native MCP execution.
Your AI agents in Mastra AI only access the data you authorize, with DLP that blocks sensitive information from ever reaching the model, kill switch for instant shutdown, and up to 60% token savings. Enterprise-grade infrastructure, zero maintenance.

* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure
How Vinkius secures
Canvas LMS for Mastra AI
Every tool call from Mastra AI to the Canvas LMS MCP Server is protected by DLP redaction, cryptographic audit chains, V8 sandbox isolation, kill switch, and financial circuit breakers.
Frequently asked questions
Can I see my personal upcoming tasks and deadlines?
Yes! Use the get_todo tool to retrieve your current todo items or get_activity_stream to see recent updates and announcements across your courses.
How do I list all assignments for a specific course?
Simply provide the Course ID to the list_assignments tool. The agent will return a list of all assignments configured for that specific course environment.
Is it possible to create or update courses through this integration?
Yes. You can use create_course to instantiate new courses under an account, or update_course to modify names and codes of existing ones.
How does Mastra AI connect to MCP servers?
Create an MCPClient with the server URL and pass it to your agent. Mastra discovers all tools and makes them available with full TypeScript types.
Can Mastra agents use tools from multiple servers?
Yes. Pass multiple MCP clients to the agent constructor. Mastra merges all tool schemas and the agent can call any tool from any server.
Does Mastra support workflow orchestration?
Yes. Mastra has a built-in workflow engine that lets you chain MCP tool calls with branching logic, error handling, and parallel execution.
createMCPClient not exported
Install: npm install @mastra/mcp
Explore More MCP Servers
View all →
UnifyApps
6 toolsAutomate integration workflows via UnifyApps — monitor execution logs, check active flows, audit connections, and list configured AI agents autonomously.

Amplenote
12 toolsConnect your Amplenote workspace to your AI agent — search notes, manage tasks, and organize ideas via natural language.

Elastic Email
10 toolsEquip your AI agent to manage email campaigns, track contacts, and monitor delivery logs via the Elastic Email API.

GraphHopper
10 toolsEmpower routing and geocoding via GraphHopper — calculate optimal routes, perform reverse geocoding, solve vehicle routing problems, and analyze reachability directly from any AI agent.
