PromptShop

Canvas Automation

It enables users to streamline and manage their learning management processes through automated workflows.

Install

npx promptshop add canvas-automation

Details

What This Skill Does

  • This skill automates Canvas operations using Composio's Canvas toolkit via Rube MCP.
  • It enables users to streamline and manage their learning management processes through automated workflows.
  • This is useful for those who need to regularly manage and update their Canvas courses and content.

When to Use

  • Automate Canvas tasks.
  • Schedule regular course updates.
  • Integrate Canvas into existing workflows.
  • Verify Canvas connection status.
  • Discover available Canvas tools.
  • Execute specific Canvas tools.

Key Features

  • Uses Rube MCP to automate Canvas.
  • Requires an active Canvas connection.
  • Discovers available tools via RUBE_SEARCH_TOOLS.
  • Checks connection status via RUBE_MANAGE_CONNECTIONS.
  • Executes tools via RUBE_MULTI_EXECUTE_TOOL.
  • Provides setup instructions and prerequisites.

Manual Installation

Manual installation## Prerequisites

Rube MCP must be connected (RUBE_SEARCH_TOOLS available) Active Canvas connection via RUBE_MANAGE_CONNECTIONS with toolkit canvas Always call RUBE_SEARCH_TOOLS first to get current tool schemas

Setup

Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.

Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds Call RUBE_MANAGE_CONNECTIONS with toolkit canvas If connection is not ACTIVE, follow the returned auth link to complete setup Confirm connection status shows ACTIVE before running any workflows

Tool Discovery

Always discover available tools before executing workflows:

RUBE_SEARCH_TOOLS queries: [{use_case: "Canvas operations", known_fields: ""}] session: {generate_id: true}

This returns available tool slugs, input schemas, recommended execution plans, and known pitfalls.

Core Workflow Pattern

Step 1: Discover Available Tools

RUBE_SEARCH_TOOLS queries: [{use_case: "your specific Canvas task"}] session: {id: "existing_session_id"}

Step 2: Check Connection

RUBE_MANAGE_CONNECTIONS toolkits: ["canvas"] session_id: "your_session_id"

Step 3: Execute Tools

RUBE_MULTI_EXECUTE_TOOL tools: [{ tool_slug: "TOOL_SLUG_FROM_SEARCH", arguments: {/ schema-compliant args from search results /} }] memory: {} session_id: "your_session_id"

Known Pitfalls

Always search first: Tool schemas change. Never hardcode tool slugs or arguments without calling RUBE_SEARCH_TOOLS Check connection: Verify RUBE_MANAGE_CONNECTIONS shows ACTIVE status before executing tools Schema compliance: Use exact field names and types from the search results Memory parameter: Always include memory in RUBE_MULTI_EXECUTE_TOOL calls, even if empty ({}) Session reuse: Reuse session IDs within a workflow. Generate new ones for new workflows Pagination: Check responses for pagination tokens and continue fetching until complete

Quick Reference

OperationApproach
Find toolsRUBE_SEARCH_TOOLS with Canvas-specific use case
ConnectRUBE_MANAGE_CONNECTIONS with toolkit canvas
ExecuteRUBE_MULTI_EXECUTE_TOOL with discovered tool slugs
Bulk opsRUBE_REMOTE_WORKBENCH with run_composio_tool()
Full schemaRUBE_GET_TOOL_SCHEMAS for tools with schema Ref

Automate Canvas operations through Composio's Canvas toolkit via Rube MCP.

Toolkit docs: composio.dev/toolkits/canvas

Prerequisites

Rube MCP must be connected (RUBE_SEARCH_TOOLS available) Active Canvas connection via RUBE_MANAGE_CONNECTIONS with toolkit canvas Always call RUBE_SEARCH_TOOLS first to get current tool schemas

Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.

Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds Call RUBE_MANAGE_CONNECTIONS with toolkit canvas If connection is not ACTIVE, follow the returned auth link to complete setup Confirm connection status shows ACTIVE before running any workflows

Always discover available tools before executing workflows:

RUBE_SEARCH_TOOLS queries: [{use_case: "Canvas operations", known_fields: ""}] session: {generate_id: true}

This returns available tool slugs, input schemas, recommended execution plans, and known pitfalls.

RUBE_SEARCH_TOOLS queries: [{use_case: "your specific Canvas task"}] session: {id: "existing_session_id"}

RUBE_MANAGE_CONNECTIONS toolkits: ["canvas"] session_id: "your_session_id"

RUBE_MULTI_EXECUTE_TOOL tools: [{ tool_slug: "TOOL_SLUG_FROM_SEARCH", arguments: {/ schema-compliant args from search results /} }] memory: {} session_id: "your_session_id"

Always search first: Tool schemas change. Never hardcode tool slugs or arguments without calling RUBE_SEARCH_TOOLS Check connection: Verify RUBE_MANAGE_CONNECTIONS shows ACTIVE status before executing tools Schema compliance: Use exact field names and types from the search results Memory parameter: Always include memory in RUBE_MULTI_EXECUTE_TOOL calls, even if empty ({}) Session reuse: Reuse session IDs within a workflow. Generate new ones for new workflows Pagination: Check responses for pagination tokens and continue fetching until complete

OperationApproach
Find toolsRUBE_SEARCH_TOOLS with Canvas-specific use case
ConnectRUBE_MANAGE_CONNECTIONS with toolkit canvas
ExecuteRUBE_MULTI_EXECUTE_TOOL with discovered tool slugs
Bulk opsRUBE_REMOTE_WORKBENCH with run_composio_tool()
Full schemaRUBE_GET_TOOL_SCHEMAS for tools with schema Ref