home / skills / composiohq / awesome-claude-skills / cloudflare-automation
/cloudflare-automation
This skill automates Cloudflare operations through Composio's MCP toolkit, always discovering tool schemas and managing connections for reliable workflows.
npx playbooks add skill composiohq/awesome-claude-skills --skill cloudflare-automationReview the files below or copy the command above to add this skill to your agents.
---
name: cloudflare-automation
description: "Automate Cloudflare tasks via Rube MCP (Composio). Always search tools first for current schemas."
requires:
mcp: [rube]
---
# Cloudflare Automation via Rube MCP
Automate Cloudflare operations through Composio's Cloudflare toolkit via Rube MCP.
**Toolkit docs**: [composio.dev/toolkits/cloudflare](https://composio.dev/toolkits/cloudflare)
## Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Cloudflare connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `cloudflare`
- 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 `cloudflare`
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: "Cloudflare 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 Cloudflare task"}]
session: {id: "existing_session_id"}
```
### Step 2: Check Connection
```
RUBE_MANAGE_CONNECTIONS
toolkits: ["cloudflare"]
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 Cloudflare-specific use case |
| Connect | `RUBE_MANAGE_CONNECTIONS` with toolkit `cloudflare` |
| 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 Cloudflare tasks through Composio's Cloudflare toolkit using Rube MCP. It provides a reliable workflow pattern to discover tools, validate connections, and execute Cloudflare operations programmatically. The skill emphasizes always searching tools first to read current schemas and avoid breaking changes.
It first calls RUBE_SEARCH_TOOLS to discover available tool slugs, input schemas, and recommended execution plans. Next it verifies an active Cloudflare connection via RUBE_MANAGE_CONNECTIONS, then runs actions using RUBE_MULTI_EXECUTE_TOOL (or RUBE_REMOTE_WORKBENCH for bulk work). All calls use session IDs and include a memory parameter as required.
Why must I call RUBE_SEARCH_TOOLS every time?
Tool schemas and slugs can change; searching first ensures you use current input fields, types, and recommended execution plans to avoid errors.
What if RUBE_MANAGE_CONNECTIONS shows NOT_ACTIVE?
Follow the returned auth link or connection instructions from the manage connections response to complete authentication, then re-check until status is ACTIVE.