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

canny-automation skill

/canny-automation

This skill automates Canny tasks via Rube MCP by discovering current tool schemas first and executing tool workflows reliably.

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

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

Files (1)
SKILL.md
2.8 KB
---
name: canny-automation
description: "Automate Canny tasks via Rube MCP (Composio). Always search tools first for current schemas."
requires:
  mcp: [rube]
---

# Canny Automation via Rube MCP

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

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

## Prerequisites

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

### Step 2: Check Connection

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

Overview

This skill automates Canny tasks by orchestrating Composio's Canny toolkit through Rube MCP. It streamlines discovery, connection management, and multi-tool execution so agents can perform Canny operations reliably. The skill emphasizes always searching tools first to obtain current schemas and execution plans.

How this skill works

First, it calls RUBE_SEARCH_TOOLS to discover available Canny tools, their input schemas, and recommended execution flows. Next, it verifies or establishes an active Canny connection via RUBE_MANAGE_CONNECTIONS. Finally, it runs one or more toolkit operations with RUBE_MULTI_EXECUTE_TOOL (including an explicit memory object and session ID) or uses RUBE_REMOTE_WORKBENCH for bulk jobs.

When to use it

  • When automating feature requests, voting, or feedback workflows in Canny programmatically.
  • Before running any Canny toolkit action to ensure tool schemas and slugs are up to date.
  • When performing bulk operations or workbench jobs across multiple Canny endpoints.
  • When you need reliable session and connection handling for repeatable automation.
  • When integrating Canny actions into larger agent-driven workflows.

Best practices

  • Always run RUBE_SEARCH_TOOLS first; never hardcode tool slugs or argument shapes.
  • Verify RUBE_MANAGE_CONNECTIONS shows ACTIVE for the Canny toolkit before execution.
  • Include a memory object (can be {}) in every RUBE_MULTI_EXECUTE_TOOL call.
  • Reuse session IDs within a workflow; generate new sessions for separate workflows.
  • Handle pagination in search results and follow schemaRef via RUBE_GET_TOOL_SCHEMAS when needed.

Example use cases

  • Search available Canny tools then create or update feedback entries using discovered schemas.
  • Bulk-migrate feedback data by running composio tools through RUBE_REMOTE_WORKBENCH.
  • Build an agent that reads user feedback and posts validated feature requests to Canny.
  • Automate permission checks and connection refresh flows before running Canny operations.
  • Fetch complete tool schemas for dynamic UI builders with RUBE_GET_TOOL_SCHEMAS.

FAQ

Do I need API keys to use Rube MCP?

No API keys are required; add https://rube.app/mcp as an MCP server in your client configuration.

What if a tool schema changes during a workflow?

Always call RUBE_SEARCH_TOOLS at the start of the workflow and validate field names/types from the returned schema before execution.