home / skills / composiohq / awesome-claude-skills / microsoft-tenant-automation
/microsoft-tenant-automation
This skill automates Microsoft tenant operations via Rube MCP, discovering tool schemas first to ensure current, accurate workflows across connections.
npx playbooks add skill composiohq/awesome-claude-skills --skill microsoft-tenant-automationReview the files below or copy the command above to add this skill to your agents.
---
name: microsoft-tenant-automation
description: "Automate Microsoft Tenant tasks via Rube MCP (Composio). Always search tools first for current schemas."
requires:
mcp: [rube]
---
# Microsoft Tenant Automation via Rube MCP
Automate Microsoft Tenant operations through Composio's Microsoft Tenant toolkit via Rube MCP.
**Toolkit docs**: [composio.dev/toolkits/microsoft_tenant](https://composio.dev/toolkits/microsoft_tenant)
## Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Microsoft Tenant connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `microsoft_tenant`
- 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.
1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds
2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `microsoft_tenant`
3. If connection is not ACTIVE, follow the returned auth link to complete setup
4. Confirm connection status shows ACTIVE before running any workflows
## Tool Discovery
Always discover available tools before executing workflows:
```
RUBE_SEARCH_TOOLS
queries: [{use_case: "Microsoft Tenant 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 Microsoft Tenant task"}]
session: {id: "existing_session_id"}
```
### Step 2: Check Connection
```
RUBE_MANAGE_CONNECTIONS
toolkits: ["microsoft_tenant"]
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
| Operation | Approach |
|-----------|----------|
| Find tools | `RUBE_SEARCH_TOOLS` with Microsoft Tenant-specific use case |
| Connect | `RUBE_MANAGE_CONNECTIONS` with toolkit `microsoft_tenant` |
| 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` |
---
*Powered by [Composio](https://composio.dev)*
This skill automates Microsoft Tenant tasks using Composio's Microsoft Tenant toolkit via Rube MCP. It guides discovery of current tool schemas, verifies tenant connections, and executes toolkit actions reliably. The workflow emphasizes searching tools first and strict schema compliance to avoid runtime errors.
First call RUBE_SEARCH_TOOLS to fetch available tool slugs, input schemas, and recommended plans. Then confirm an active Microsoft Tenant connection with RUBE_MANAGE_CONNECTIONS. Finally run operations through RUBE_MULTI_EXECUTE_TOOL (or RUBE_REMOTE_WORKBENCH for bulk jobs), always supplying schema-compliant arguments, a session_id, and a memory object.
What is the first API call I must make?
Always call RUBE_SEARCH_TOOLS to get current tool slugs, input schemas, and recommended execution plans.
What if RUBE_MANAGE_CONNECTIONS shows the connection is not ACTIVE?
Follow the auth link returned by RUBE_MANAGE_CONNECTIONS to complete setup, then recheck until status is ACTIVE.
Can I hardcode tool slugs and argument shapes?
No. Tool slugs and schemas change — always discover the current schema via RUBE_SEARCH_TOOLS before executing.