google_classroom-automation
Scannednpx machina-cli add skill ComposioHQ/awesome-claude-skills/google_classroom-automation --openclawGoogle Classroom Automation via Rube MCP
Automate Google Classroom operations through Composio's Google Classroom toolkit via Rube MCP.
Toolkit docs: composio.dev/toolkits/google_classroom
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Google Classroom connection via
RUBE_MANAGE_CONNECTIONSwith toolkitgoogle_classroom - Always call
RUBE_SEARCH_TOOLSfirst 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_TOOLSresponds - Call
RUBE_MANAGE_CONNECTIONSwith toolkitgoogle_classroom - 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": "course management, assignments, student rosters, and announcements", "known_fields": ""}]
This returns:
- Available tool slugs for Google Classroom
- Recommended execution plan steps
- Known pitfalls and edge cases
- Input schemas for each tool
Core Workflows
1. Discover Available Google Classroom Tools
RUBE_SEARCH_TOOLS:
queries:
- use_case: "list all available Google Classroom tools and capabilities"
Review the returned tools, their descriptions, and input schemas before proceeding.
2. Execute Google Classroom Operations
After discovering tools, execute them via:
RUBE_MULTI_EXECUTE_TOOL:
tools:
- tool_slug: "<discovered_tool_slug>"
arguments: {<schema-compliant arguments>}
memory: {}
sync_response_to_workbench: false
3. Multi-Step Workflows
For complex workflows involving multiple Google Classroom operations:
- Search for all relevant tools:
RUBE_SEARCH_TOOLSwith specific use case - Execute prerequisite steps first (e.g., fetch before update)
- Pass data between steps using tool responses
- Use
RUBE_REMOTE_WORKBENCHfor bulk operations or data processing
Common Patterns
Search Before Action
Always search for existing resources before creating new ones to avoid duplicates.
Pagination
Many list operations support pagination. Check responses for next_cursor or page_token and continue fetching until exhausted.
Error Handling
- Check tool responses for errors before proceeding
- If a tool fails, verify the connection is still ACTIVE
- Re-authenticate via
RUBE_MANAGE_CONNECTIONSif connection expired
Batch Operations
For bulk operations, use RUBE_REMOTE_WORKBENCH with run_composio_tool() in a loop with ThreadPoolExecutor for parallel execution.
Known Pitfalls
- Always search tools first: Tool schemas and available operations may change. Never hardcode tool slugs without first discovering them via
RUBE_SEARCH_TOOLS. - Check connection status: Ensure the Google Classroom connection is ACTIVE before executing any tools. Expired OAuth tokens require re-authentication.
- Respect rate limits: If you receive rate limit errors, reduce request frequency and implement backoff.
- Validate schemas: Always pass strictly schema-compliant arguments. Use
RUBE_GET_TOOL_SCHEMASto load full input schemas whenschemaRefis returned instead ofinput_schema.
Quick Reference
| Operation | Approach |
|---|---|
| Find tools | RUBE_SEARCH_TOOLS with Google Classroom-specific use case |
| Connect | RUBE_MANAGE_CONNECTIONS with toolkit google_classroom |
| Execute | RUBE_MULTI_EXECUTE_TOOL with discovered tool slugs |
| Bulk ops | RUBE_REMOTE_WORKBENCH with run_composio_tool() |
| Full schema | RUBE_GET_TOOL_SCHEMAS for tools with schemaRef |
Toolkit docs: composio.dev/toolkits/google_classroom
Source
git clone https://github.com/ComposioHQ/awesome-claude-skills/blob/master/composio-skills/google_classroom-automation/SKILL.mdView on GitHub Overview
Automate Google Classroom tasks like courses, assignments, rosters, and announcements using Composio's Rube MCP toolkit. The workflow emphasizes discovering current tool schemas with RUBE_SEARCH_TOOLS before acting. Requires an active Google Classroom connection and a connected MCP setup.
How This Skill Works
Connect to Rube MCP, fetch tool schemas with RUBE_SEARCH_TOOLS, then manage the Google Classroom connection with RUBE_MANAGE_CONNECTIONS. Use RUBE_MULTI_EXECUTE_TOOL to run discovered tools and sequence multi-step workflows, reusing tool responses as inputs. For batch tasks, leverage RUBE_REMOTE_WORKBENCH with run_composio_tool in parallel loops.
When to Use It
- To initialize Google Classroom automation by discovering available tools and current schemas before building workflows.
- When creating or updating courses, assignments, student rosters, or announcements via discovered tools.
- When performing bulk edits or large-scale updates across multiple courses or classes.
- To handle multi-step workflows that require data passed between steps and potential parallel executions.
- When troubleshooting integration issues, ensuring the connection is ACTIVE and schemas are up-to-date.
Quick Start
- Step 1: Verify Rube MCP is available and search tools with RUBE_SEARCH_TOOLS
- Step 2: Manage connections with RUBE_MANAGE_CONNECTIONS for the google_classroom toolkit and authenticate if needed
- Step 3: Discover a tool slug and execute it with RUBE_MULTI_EXECUTE_TOOL using schema-compliant arguments
Best Practices
- Always call RUBE_SEARCH_TOOLS first to fetch current tool schemas and capabilities.
- Validate inputs against live tool schemas (use RUBE_GET_TOOL_SCHEMAS) before executing.
- Regularly check connection status and re-authenticate with RUBE_MANAGE_CONNECTIONS if needed.
- Handle pagination in list operations and respect rate limits with backoff strategies.
- Use RUBE_REMOTE_WORKBENCH for bulk operations and parallel execution, not in single-threaded flows.
Example Use Cases
- Discover available Google Classroom tools and their input schemas, then choose a tool to create a course.
- Connect to Google Classroom via the toolkit and fetch a roster update for multiple students.
- Publish an assignment by discovering the appropriate tool slug and executing it with schema-compliant arguments.
- Update student rosters in bulk across several courses using a batch workflow.
- Post announcements to multiple classes by chaining discovered tools in a multi-step workflow.