Skip to main content
NEW · APP STORE Now on iOS · macOS · iPad Android & Windows soon GET IT
Prompts Adobe Automation via Rube MCP

agent tool_use skill risk: medium

Adobe Automation via Rube MCP

Instructs on automating Adobe operations through Composio's Adobe toolkit via Rube MCP, covering prerequisites, setup, tool discovery with RUBE_SEARCH_TOOLS, connection management,…

  • Policy sensitive
  • Human review
  • External action: high

SKILL 1 file

SKILL.md
---
name: adobe-automation
description: "Automate Adobe tasks via Rube MCP (Composio). Always search tools first for current schemas."
---
# Adobe Automation via Rube MCP

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

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

## Prerequisites

- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Adobe connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `adobe`
- 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 `adobe`
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: "Adobe 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 Adobe task"}]
session: {id: "existing_session_id"}
```

### Step 2: Check Connection

```
RUBE_MANAGE_CONNECTIONS
toolkits: ["adobe"]
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 Adobe-specific use case |
| Connect | `RUBE_MANAGE_CONNECTIONS` with toolkit `adobe` |
| 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)*

REQUIRED CONTEXT

  • RUBE_SEARCH_TOOLS availability
  • active Adobe connection via RUBE_MANAGE_CONNECTIONS

OPTIONAL CONTEXT

  • existing session_id
  • specific Adobe use case

TOOLS REQUIRED

  • RUBE_SEARCH_TOOLS
  • RUBE_MANAGE_CONNECTIONS
  • RUBE_MULTI_EXECUTE_TOOL
  • RUBE_GET_TOOL_SCHEMAS
  • RUBE_REMOTE_WORKBENCH

ROLES & RULES

  1. Always search tools first for current schemas
  2. Always call RUBE_SEARCH_TOOLS first to get current tool schemas
  3. Always discover available tools before executing workflows
  4. Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds
  5. If connection is not ACTIVE, follow the returned auth link to complete setup
  6. Confirm connection status shows ACTIVE before running any workflows
  7. Never hardcode tool slugs or arguments without calling RUBE_SEARCH_TOOLS
  8. Verify RUBE_MANAGE_CONNECTIONS shows ACTIVE status before executing tools
  9. Use exact field names and types from the search results
  10. Always include memory in RUBE_MULTI_EXECUTE_TOOL calls, even if empty
  11. Reuse session IDs within a workflow
  12. Generate new session IDs for new workflows
  13. Check responses for pagination tokens and continue fetching until complete

EXPECTED OUTPUT

Format
markdown
Constraints
  • always search tools first
  • verify active connection before execution
  • reuse session IDs

SUCCESS CRITERIA

  • Always search first
  • Check connection status is ACTIVE
  • Use schema-compliant arguments from search results
  • Include memory parameter in execute calls

FAILURE MODES

  • Hardcoding tool slugs or arguments without searching first
  • Executing tools before confirming ACTIVE connection
  • Omitting memory parameter in RUBE_MULTI_EXECUTE_TOOL
  • Failing to reuse or correctly manage session IDs

EXAMPLES

Includes multiple example RUBE tool calls (SEARCH_TOOLS, MANAGE_CONNECTIONS, MULTI_EXECUTE_TOOL) with arguments and session handling.

CAVEATS

Dependencies
  • Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
  • Active Adobe connection via RUBE_MANAGE_CONNECTIONS with toolkit adobe
Missing context
  • Target agent or model that will consume the prompt
  • Concrete examples of specific Adobe operations
Ambiguities
  • Tool invocation format is shown via markdown blocks but never specifies exact syntax (JSON, XML, or function-call style) expected by the client.

QUALITY

OVERALL
0.78
CLARITY
0.78
SPECIFICITY
0.82
REUSABILITY
0.72
COMPLETENESS
0.80

IMPROVEMENT SUGGESTIONS

  • Add an explicit 'Tool Call Format' section that defines the precise syntax for RUBE_* calls.
  • Include one or two end-to-end worked examples for common tasks (e.g., 'export PDF pages').

USAGE

Copy the prompt above and paste it into your AI of choice — Claude, ChatGPT, Gemini, or anywhere else you're working. Replace any placeholder sections with your own context, then ask for the output.

MORE FOR AGENT