home / skills / composiohq / awesome-claude-skills / zoho_mail-automation

zoho_mail-automation skill

/zoho_mail-automation

This skill automates Zoho Mail tasks via Rube MCP, enabling email sending, folder management, and label handling with tool discovery first.

npx playbooks add skill composiohq/awesome-claude-skills --skill zoho_mail-automation

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
4.0 KB
---
name: zoho_mail-automation
description: "Automate Zoho Mail tasks via Rube MCP (Composio): email sending, folders, labels, and mailbox management. Always search tools first for current schemas."
requires:
  mcp: [rube]
---

# Zoho Mail Automation via Rube MCP

Automate Zoho Mail operations through Composio's Zoho Mail toolkit via Rube MCP.

**Toolkit docs**: [composio.dev/toolkits/zoho_mail](https://composio.dev/toolkits/zoho_mail)

## Prerequisites

- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Zoho Mail connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `zoho_mail`
- 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 `zoho_mail`
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": "email sending, folders, labels, and mailbox management", "known_fields": ""}]
```

This returns:
- Available tool slugs for Zoho Mail
- Recommended execution plan steps
- Known pitfalls and edge cases
- Input schemas for each tool

## Core Workflows

### 1. Discover Available Zoho Mail Tools

```
RUBE_SEARCH_TOOLS:
  queries:
    - use_case: "list all available Zoho Mail tools and capabilities"
```

Review the returned tools, their descriptions, and input schemas before proceeding.

### 2. Execute Zoho Mail 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 Zoho Mail operations:

1. Search for all relevant tools: `RUBE_SEARCH_TOOLS` with specific use case
2. Execute prerequisite steps first (e.g., fetch before update)
3. Pass data between steps using tool responses
4. Use `RUBE_REMOTE_WORKBENCH` for 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_CONNECTIONS` if 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 Zoho Mail 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_SCHEMAS` to load full input schemas when `schemaRef` is returned instead of `input_schema`.

## Quick Reference

| Operation | Approach |
|-----------|----------|
| Find tools | `RUBE_SEARCH_TOOLS` with Zoho Mail-specific use case |
| Connect | `RUBE_MANAGE_CONNECTIONS` with toolkit `zoho_mail` |
| 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/zoho_mail](https://composio.dev/toolkits/zoho_mail)

Overview

This skill automates Zoho Mail tasks via Rube MCP (Composio) so agents can send email, manage folders and labels, and perform mailbox administration programmatically. It guides required setup and enforces a discovery-first workflow so tool schemas and available operations are always current. The skill focuses on reliability: connection checks, schema validation, pagination handling, and bulk operation support.

How this skill works

Before any action, the skill calls RUBE_SEARCH_TOOLS to discover current Zoho Mail tool slugs, input schemas, and recommended execution plans. It manages connections via RUBE_MANAGE_CONNECTIONS and executes operations through RUBE_MULTI_EXECUTE_TOOL or RUBE_REMOTE_WORKBENCH for bulk tasks. Responses are inspected for errors, pagination tokens, and data to pass between multi-step workflows.

When to use it

  • Send transactional or templated emails from an automated agent
  • Create, update, or list folders and labels in a Zoho Mail account
  • Run bulk mailbox operations like tagging or moving messages
  • Build multi-step email workflows that require fetching then updating messages
  • Integrate Zoho Mail actions into larger automation pipelines via Rube MCP

Best practices

  • Always call RUBE_SEARCH_TOOLS first to discover current tool slugs and input schemas
  • Verify Zoho Mail connection status via RUBE_MANAGE_CONNECTIONS and re-authenticate if not ACTIVE
  • Validate every tool response for errors before proceeding to the next step
  • Use pagination tokens (next_cursor/page_token) to exhaustively list resources
  • For bulk operations use RUBE_REMOTE_WORKBENCH and parallel execution with care to respect rate limits
  • Never hardcode tool slugs or input shapes; use RUBE_GET_TOOL_SCHEMAS when schemaRef is returned

Example use cases

  • Automate daily newsletter sends and track delivery statuses via discovered send tools
  • Batch-apply labels to filtered messages using RUBE_REMOTE_WORKBENCH with run_composio_tool()
  • Create mailbox housekeeping jobs: archive old messages, clean folders, and update labels
  • Build a support workflow: fetch new ticket emails, tag and assign to agents, then move to appropriate folder
  • Re-authorize expired Zoho connections automatically by detecting inactive connection state and returning the auth link

FAQ

What must I do before executing a tool?

Always run RUBE_SEARCH_TOOLS to load current tool slugs and schemas, and confirm the Zoho Mail connection is ACTIVE via RUBE_MANAGE_CONNECTIONS.

How do I handle large lists of messages?

Check responses for next_cursor or page_token and iterate until exhausted; use batching and RUBE_REMOTE_WORKBENCH for large-scale processing.

What if a tool returns an error or auth fails?

Inspect the error payload, confirm connection status, and re-run RUBE_MANAGE_CONNECTIONS to get a fresh auth link if the token expired.