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

chatbotkit-automation skill

/chatbotkit-automation

This skill automates Chatbotkit workflows by discovering current tool schemas via Rube MCP before execution, ensuring up-to-date tool usage.

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

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

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

# Chatbotkit Automation via Rube MCP

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

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

## Prerequisites

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

### Step 2: Check Connection

```
RUBE_MANAGE_CONNECTIONS
toolkits: ["chatbotkit"]
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 Chatbotkit-specific use case |
| Connect | `RUBE_MANAGE_CONNECTIONS` with toolkit `chatbotkit` |
| 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 Chatbotkit tasks through Composio’s Rube MCP connector, letting you discover tools, manage connections, and run workflows programmatically. It enforces a strict pattern: always search for current tool schemas, verify connections, and execute schema-compliant tool calls. The skill is optimized for repeatable automation and safe bulk operations.

How this skill works

The skill uses RUBE_SEARCH_TOOLS to discover available Chatbotkit tools and their input schemas, then checks or establishes an active connection via RUBE_MANAGE_CONNECTIONS. Workflows execute tools through RUBE_MULTI_EXECUTE_TOOL or RUBE_REMOTE_WORKBENCH, always supplying session IDs and a memory object. It includes steps for pagination, schema lookup (RUBE_GET_TOOL_SCHEMAS), and connection validation before any execution.

When to use it

  • Automate repetitive Chatbotkit tasks like message routing, template updates, or bot configuration changes
  • Run bulk operations or orchestrated sequences against Chatbotkit using discovered tool slugs
  • Integrate Chatbotkit actions into larger pipelines that require verified connection state and schema compliance
  • Perform safe, schema-driven executions when tool arguments or slugs may change over time
  • Fetch full tool schemas before writing automation to avoid runtime failures

Best practices

  • Always call RUBE_SEARCH_TOOLS first — do not hardcode tool slugs or arguments
  • Verify toolkit connection with RUBE_MANAGE_CONNECTIONS and ensure status is ACTIVE before executing
  • Pass a session_id and a memory object (even empty) in RUBE_MULTI_EXECUTE_TOOL calls
  • Respect exact field names and types returned by tool schemas; use RUBE_GET_TOOL_SCHEMAS when needed
  • Handle pagination tokens from search responses and loop until all pages are retrieved
  • Reuse session IDs for related steps; create new session IDs for new workflows

Example use cases

  • Discover Chatbotkit endpoints for sending templated messages and execute a multi-step send+log workflow
  • Validate and refresh an existing Chatbotkit connection before running nightly bulk updates
  • Run a remote workbench script to apply configuration changes across multiple chatbot instances
  • Fetch full schemas for a new Chatbotkit tool before implementing client-side argument validation
  • Automate pagination-aware exports of bot conversations and store them in an external system

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 to connect.

What if a tool schema changes after I automate it?

Always call RUBE_SEARCH_TOOLS at runtime to get current schemas. If schemas change, update arguments according to the returned schema or fetch full details using RUBE_GET_TOOL_SCHEMAS.