Get the FREE Ultimate OpenClaw Setup Guide →

render-automation

npx machina-cli add skill davepoon/buildwithclaude/render-automation --openclaw
Files (1)
SKILL.md
6.5 KB

Render Automation via Rube MCP

Automate Render cloud platform operations through Composio's Render toolkit via Rube MCP.

Toolkit docs: composio.dev/toolkits/render

Prerequisites

  • Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
  • Active Render connection via RUBE_MANAGE_CONNECTIONS with toolkit render
  • 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 render
  3. If connection is not ACTIVE, follow the returned auth link to complete Render authentication
  4. Confirm connection status shows ACTIVE before running any workflows

Core Workflows

1. List and Browse Services

When to use: User wants to find or inspect Render services (web services, static sites, workers, cron jobs)

Tool sequence:

  1. RENDER_LIST_SERVICES - List all services with optional filters [Required]

Key parameters:

  • name: Filter services by name substring
  • type: Filter by service type ('web_service', 'static_site', 'private_service', 'background_worker', 'cron_job')
  • limit: Maximum results per page (default 20, max 100)
  • cursor: Pagination cursor from previous response

Pitfalls:

  • Service types must match exact enum values: 'web_service', 'static_site', 'private_service', 'background_worker', 'cron_job'
  • Pagination uses cursor-based approach; follow cursor until absent
  • Name filter is substring-based, not exact match
  • Service IDs follow the format 'srv-xxxxxxxxxxxx'
  • Default limit is 20; set higher for comprehensive listing

2. Trigger Deployments

When to use: User wants to manually deploy or redeploy a service

Tool sequence:

  1. RENDER_LIST_SERVICES - Find the service to deploy [Prerequisite]
  2. RENDER_TRIGGER_DEPLOY - Trigger a new deployment [Required]
  3. RENDER_RETRIEVE_DEPLOY - Monitor deployment progress [Optional]

Key parameters:

  • For TRIGGER_DEPLOY:
    • serviceId: Service ID to deploy (required, format: 'srv-xxxxxxxxxxxx')
    • clearCache: Set true to clear build cache before deploying
  • For RETRIEVE_DEPLOY:
    • serviceId: Service ID
    • deployId: Deploy ID from trigger response (format: 'dep-xxxxxxxxxxxx')

Pitfalls:

  • serviceId is required; resolve via LIST_SERVICES first
  • Service IDs start with 'srv-' prefix
  • Deploy IDs start with 'dep-' prefix
  • clearCache: true forces a clean build; takes longer but resolves cache-related issues
  • Deployment is asynchronous; use RETRIEVE_DEPLOY to poll status
  • Triggering a deploy while another is in progress may queue the new one

3. Monitor Deployment Status

When to use: User wants to check the progress or result of a deployment

Tool sequence:

  1. RENDER_RETRIEVE_DEPLOY - Get deployment details and status [Required]

Key parameters:

  • serviceId: Service ID (required)
  • deployId: Deployment ID (required)
  • Response includes status, createdAt, updatedAt, finishedAt, commit

Pitfalls:

  • Both serviceId and deployId are required
  • Deploy statuses include: 'created', 'build_in_progress', 'update_in_progress', 'live', 'deactivated', 'build_failed', 'update_failed', 'canceled'
  • 'live' indicates successful deployment
  • 'build_failed' or 'update_failed' indicate deployment errors
  • Poll at reasonable intervals (10-30 seconds) to avoid rate limits

4. Manage Projects

When to use: User wants to list and organize Render projects

Tool sequence:

  1. RENDER_LIST_PROJECTS - List all projects [Required]

Key parameters:

  • limit: Maximum results per page (max 100)
  • cursor: Pagination cursor from previous response

Pitfalls:

  • Projects group related services together
  • Pagination uses cursor-based approach
  • Project IDs are used for organizational purposes
  • Not all services may be assigned to a project

Common Patterns

ID Resolution

Service name -> Service ID:

1. Call RENDER_LIST_SERVICES with name=service_name
2. Find service by name in results
3. Extract id (format: 'srv-xxxxxxxxxxxx')

Deployment lookup:

1. Store deployId from RENDER_TRIGGER_DEPLOY response
2. Call RENDER_RETRIEVE_DEPLOY with serviceId and deployId
3. Check status for completion

Deploy and Monitor Pattern

1. RENDER_LIST_SERVICES -> find service by name -> get serviceId
2. RENDER_TRIGGER_DEPLOY with serviceId -> get deployId
3. Loop: RENDER_RETRIEVE_DEPLOY with serviceId + deployId
4. Check status: 'live' = success, 'build_failed'/'update_failed' = error
5. Continue polling until terminal state reached

Pagination

  • Use cursor from response for next page
  • Continue until cursor is absent or results are empty
  • Both LIST_SERVICES and LIST_PROJECTS use cursor-based pagination
  • Set limit to max (100) for fewer pagination rounds

Known Pitfalls

Service IDs:

  • Always prefixed with 'srv-' (e.g., 'srv-abcd1234efgh')
  • Deploy IDs prefixed with 'dep-' (e.g., 'dep-d2mqkf9r0fns73bham1g')
  • Always resolve service names to IDs via LIST_SERVICES

Service Types:

  • Must use exact enum values when filtering
  • Available types: web_service, static_site, private_service, background_worker, cron_job
  • Different service types have different deployment behaviors

Deployment Behavior:

  • Deployments are asynchronous; always poll for completion
  • Clear cache deploys take longer but resolve stale cache issues
  • Failed deploys do not roll back automatically; the previous version stays live
  • Concurrent deploy triggers may be queued

Rate Limits:

  • Render API has rate limits
  • Avoid rapid polling; use 10-30 second intervals
  • Bulk operations should be throttled

Response Parsing:

  • Response data may be nested under data key
  • Timestamps use ISO 8601 format
  • Parse defensively with fallbacks for optional fields

Quick Reference

TaskTool SlugKey Params
List servicesRENDER_LIST_SERVICESname, type, limit, cursor
Trigger deployRENDER_TRIGGER_DEPLOYserviceId, clearCache
Get deploy statusRENDER_RETRIEVE_DEPLOYserviceId, deployId
List projectsRENDER_LIST_PROJECTSlimit, cursor

Powered by Composio

Source

git clone https://github.com/davepoon/buildwithclaude/blob/main/plugins/all-skills/skills/render-automation/SKILL.mdView on GitHub

Overview

This skill automates Render cloud platform operations using Composio's Render toolkit through Rube MCP. It enables listing and browsing services, triggering deployments, monitoring progress, and managing projects, all with up-to-date tool schemas.

How This Skill Works

The workflow starts by ensuring Rube MCP is connected and that tool schemas are current via RUBE_SEARCH_TOOLS. It then uses Render-specific actions (RENDER_LIST_SERVICES, RENDER_TRIGGER_DEPLOY, RENDER_RETRIEVE_DEPLOY, RENDER_LIST_PROJECTS) to perform operations, with status polling and validation of IDs to ensure correct sequencing and error handling.

When to Use It

  • To quickly list and browse Render services (web services, static sites, workers, cron jobs) to locate targets.
  • To trigger a deployment or redeploy a service, optionally clearing the build cache.
  • To monitor deployment progress and determine when a deployment reaches 'live'.
  • To list and organize Render projects for governance or planning.
  • To establish and validate MCP connections to Render, ensuring ACTIVE status before workflows.

Quick Start

  1. Step 1: Add https://rube.app/mcp as an MCP server in your client configuration.
  2. Step 2: Run RUBE_SEARCH_TOOLS to confirm current tool schemas are available.
  3. Step 3: Run RUBE_MANAGE_CONNECTIONS with toolkit render and authenticate; ensure status is ACTIVE before proceeding.

Best Practices

  • Always call RUBE_SEARCH_TOOLS first to fetch current tool schemas before any operation.
  • Validate IDs: serviceId should start with 'srv-' and deployId with 'dep-'.
  • Use the cursor-based paging correctly when listing services and respect max limits.
  • Use clearCache: true sparingly to force clean builds and resolve cache-related issues.
  • Poll deployment status at 10-30 second intervals and ensure the connection remains ACTIVE throughout.

Example Use Cases

  • List all web services containing 'frontend' in their name to identify a target for deployment.
  • Trigger a deployment for srv-abcdef123456 with clearCache to resolve stale builds.
  • Poll dep-1234abcd status until it returns 'live' and capture the final commit.
  • List all Render projects to map one for a new staging environment.
  • Authenticate Rube MCP with toolkit 'render' and verify ACTIVE before running any workflows.

Frequently Asked Questions

Add this skill to your agents

Related Skills

Sponsor this space

Reach thousands of developers