home / skills / composiohq / awesome-claude-skills / affinda-automation
/affinda-automation
This skill automates Affinda tasks via Rube MCP, always discovering current tool schemas before execution to ensure accuracy and adaptability.
npx playbooks add skill composiohq/awesome-claude-skills --skill affinda-automationReview the files below or copy the command above to add this skill to your agents.
---
name: affinda-automation
description: "Automate Affinda tasks via Rube MCP (Composio). Always search tools first for current schemas."
requires:
mcp: [rube]
---
# Affinda Automation via Rube MCP
Automate Affinda operations through Composio's Affinda toolkit via Rube MCP.
**Toolkit docs**: [composio.dev/toolkits/affinda](https://composio.dev/toolkits/affinda)
## Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Affinda connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `affinda`
- 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 `affinda`
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: "Affinda 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 Affinda task"}]
session: {id: "existing_session_id"}
```
### Step 2: Check Connection
```
RUBE_MANAGE_CONNECTIONS
toolkits: ["affinda"]
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 Affinda-specific use case |
| Connect | `RUBE_MANAGE_CONNECTIONS` with toolkit `affinda` |
| 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 Affinda tasks by orchestrating Composio’s Affinda toolkit through a Rube MCP endpoint. It provides a repeatable pattern for discovering tools, validating connections, and executing schema-compliant workflows. The guide emphasizes always searching tools first, managing connections, and handling session and memory parameters correctly.
The skill inspects the Rube MCP tool registry via RUBE_SEARCH_TOOLS to fetch current tool slugs, input schemas, and recommended execution plans. It then validates an active Affinda connection with RUBE_MANAGE_CONNECTIONS and runs actions via RUBE_MULTI_EXECUTE_TOOL (or RUBE_REMOTE_WORKBENCH for bulk jobs), always passing the memory and a session id. It enforces schema compliance, session reuse within a workflow, and pagination handling for full results.
What must I do before executing an Affinda tool?
Always call RUBE_SEARCH_TOOLS to fetch current tool slugs and schemas, then confirm the Affinda connection is ACTIVE via RUBE_MANAGE_CONNECTIONS.
Can I hardcode tool slugs and arguments?
No. Tool schemas change. Never hardcode slugs or input fields—always use the results from RUBE_SEARCH_TOOLS for accuracy.
Is memory required when invoking tools?
Yes. Include the memory parameter in RUBE_MULTI_EXECUTE_TOOL calls. It may be an empty object ({}), but it must be present.