render-automation
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseRender Automation via Rube MCP
通过Rube MCP实现Render自动化
Automate Render cloud platform operations through Composio's Render toolkit via Rube MCP.
通过Composio的Render工具包,借助Rube MCP自动化Render云平台的操作。
Prerequisites
前提条件
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Render connection via with toolkit
RUBE_MANAGE_CONNECTIONSrender - Always call first to get current tool schemas
RUBE_SEARCH_TOOLS
- 必须已连接Rube MCP(需确保RUBE_SEARCH_TOOLS可用)
- 通过并使用工具包
RUBE_MANAGE_CONNECTIONS建立有效的Render连接render - 请始终先调用以获取最新的工具模式
RUBE_SEARCH_TOOLS
Setup
设置步骤
Get Rube MCP: Add as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
https://rube.app/mcp- Verify Rube MCP is available by confirming responds
RUBE_SEARCH_TOOLS - Call with toolkit
RUBE_MANAGE_CONNECTIONSrender - If connection is not ACTIVE, follow the returned auth link to complete Render authentication
- Confirm connection status shows ACTIVE before running any workflows
获取Rube MCP:在客户端配置中添加作为MCP服务器。无需API密钥 —— 只需添加端点即可使用。
https://rube.app/mcp- 通过确认能正常响应,验证Rube MCP是否可用
RUBE_SEARCH_TOOLS - 调用并指定工具包
RUBE_MANAGE_CONNECTIONSrender - 如果连接状态未显示为ACTIVE,请按照返回的认证链接完成Render身份验证
- 在运行任何工作流之前,确认连接状态显示为ACTIVE
Core Workflows
核心工作流
1. List and Browse Services
1. 列出并浏览服务
When to use: User wants to find or inspect Render services (web services, static sites, workers, cron jobs)
Tool sequence:
- - List all services with optional filters [Required]
RENDER_LIST_SERVICES
Key parameters:
- : Filter services by name substring
name - : Filter by service type ('web_service', 'static_site', 'private_service', 'background_worker', 'cron_job')
type - : Maximum results per page (default 20, max 100)
limit - : Pagination cursor from previous response
cursor
Pitfalls:
- Service types must match exact enum values: 'web_service', 'static_site', 'private_service', 'background_worker', 'cron_job'
- Pagination uses cursor-based approach; follow until absent
cursor - Name filter is substring-based, not exact match
- Service IDs follow the format 'srv-xxxxxxxxxxxx'
- Default limit is 20; set higher for comprehensive listing
适用场景:用户想要查找或查看Render服务(Web服务、静态站点、工作进程、定时任务)
工具执行顺序:
- - 列出所有服务,可选择使用过滤器 [必填]
RENDER_LIST_SERVICES
关键参数:
- : 根据名称子串过滤服务
name - : 根据服务类型过滤(可选值:'web_service'、'static_site'、'private_service'、'background_worker'、'cron_job')
type - : 每页最大结果数(默认20,最大100)
limit - : 来自上一次响应的分页游标
cursor
注意事项:
- 服务类型必须完全匹配枚举值:'web_service'、'static_site'、'private_service'、'background_worker'、'cron_job'
- 分页采用基于游标的方式;需持续使用返回的直到其不存在
cursor - 名称过滤器是基于子串匹配,而非精确匹配
- 服务ID格式为'srv-xxxxxxxxxxxx'
- 默认限制为20;若需完整列表可设置更高值
2. Trigger Deployments
2. 触发部署
When to use: User wants to manually deploy or redeploy a service
Tool sequence:
- - Find the service to deploy [Prerequisite]
RENDER_LIST_SERVICES - - Trigger a new deployment [Required]
RENDER_TRIGGER_DEPLOY - - Monitor deployment progress [Optional]
RENDER_RETRIEVE_DEPLOY
Key parameters:
- For TRIGGER_DEPLOY:
- : Service ID to deploy (required, format: 'srv-xxxxxxxxxxxx')
serviceId - : Set
clearCacheto clear build cache before deployingtrue
- For RETRIEVE_DEPLOY:
- : Service ID
serviceId - : Deploy ID from trigger response (format: 'dep-xxxxxxxxxxxx')
deployId
Pitfalls:
- is required; resolve via LIST_SERVICES first
serviceId - Service IDs start with 'srv-' prefix
- Deploy IDs start with 'dep-' prefix
- forces a clean build; takes longer but resolves cache-related issues
clearCache: true - Deployment is asynchronous; use RETRIEVE_DEPLOY to poll status
- Triggering a deploy while another is in progress may queue the new one
适用场景:用户想要手动部署或重新部署服务
工具执行顺序:
- - 找到要部署的服务 [前置步骤]
RENDER_LIST_SERVICES - - 触发新的部署 [必填]
RENDER_TRIGGER_DEPLOY - - 监控部署进度 [可选]
RENDER_RETRIEVE_DEPLOY
关键参数:
- 对于TRIGGER_DEPLOY:
- : 要部署的服务ID(必填,格式:'srv-xxxxxxxxxxxx')
serviceId - : 设置为
clearCache可在部署前清除构建缓存true
- 对于RETRIEVE_DEPLOY:
- : 服务ID
serviceId - : 触发部署响应中的部署ID(格式:'dep-xxxxxxxxxxxx')
deployId
注意事项:
- 为必填项;需先通过LIST_SERVICES获取
serviceId - 服务ID以'srv-'为前缀
- 部署ID以'dep-'为前缀
- 会强制执行干净构建;耗时更长但可解决缓存相关问题
clearCache: true - 部署是异步操作;需使用RETRIEVE_DEPLOY轮询状态
- 若在已有部署进行时触发新部署,新部署可能会进入队列
3. Monitor Deployment Status
3. 监控部署状态
When to use: User wants to check the progress or result of a deployment
Tool sequence:
- - Get deployment details and status [Required]
RENDER_RETRIEVE_DEPLOY
Key parameters:
- : Service ID (required)
serviceId - : Deployment ID (required)
deployId - Response includes ,
status,createdAt,updatedAt,finishedAtcommit
Pitfalls:
- Both and
serviceIdare requireddeployId - 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
适用场景:用户想要检查部署的进度或结果
工具执行顺序:
- - 获取部署详情和状态 [必填]
RENDER_RETRIEVE_DEPLOY
关键参数:
- : 服务ID(必填)
serviceId - : 部署ID(必填)
deployId - 响应包含、
status、createdAt、updatedAt、finishedAt字段commit
注意事项:
- 和
serviceId均为必填项deployId - 部署状态包括:'created'、'build_in_progress'、'update_in_progress'、'live'、'deactivated'、'build_failed'、'update_failed'、'canceled'
- 'live'表示部署成功
- 'build_failed'或'update_failed'表示部署出错
- 需以合理间隔(10-30秒)轮询,避免触发速率限制
4. Manage Projects
4. 管理项目
When to use: User wants to list and organize Render projects
Tool sequence:
- - List all projects [Required]
RENDER_LIST_PROJECTS
Key parameters:
- : Maximum results per page (max 100)
limit - : Pagination cursor from previous response
cursor
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
适用场景:用户想要列出并管理Render项目
工具执行顺序:
- - 列出所有项目 [必填]
RENDER_LIST_PROJECTS
关键参数:
- : 每页最大结果数(最大100)
limit - : 来自上一次响应的分页游标
cursor
注意事项:
- 项目用于将相关服务分组
- 分页采用基于游标的方式
- 项目ID用于组织管理
- 并非所有服务都必须分配到项目中
Common Patterns
通用模式
ID Resolution
ID解析
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服务名称 -> 服务ID:
1. 调用RENDER_LIST_SERVICES,参数name=service_name
2. 在结果中按名称查找服务
3. 提取id(格式:'srv-xxxxxxxxxxxx')部署查询:
1. 保存RENDER_TRIGGER_DEPLOY响应中的deployId
2. 调用RENDER_RETRIEVE_DEPLOY,传入serviceId和deployId
3. 检查状态是否完成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 reached1. RENDER_LIST_SERVICES -> 按名称查找服务 -> 获取serviceId
2. 使用serviceId调用RENDER_TRIGGER_DEPLOY -> 获取deployId
3. 循环:调用RENDER_RETRIEVE_DEPLOY,传入serviceId + deployId
4. 检查状态:'live' = 成功,'build_failed'/'update_failed' = 错误
5. 持续轮询直到达到最终状态Pagination
分页
- Use from response for next page
cursor - Continue until is absent or results are empty
cursor - Both LIST_SERVICES and LIST_PROJECTS use cursor-based pagination
- Set to max (100) for fewer pagination rounds
limit
- 使用响应中的获取下一页内容
cursor - 持续操作直到不存在或结果为空
cursor - LIST_SERVICES和LIST_PROJECTS均使用基于游标的分页
- 将设置为最大值(100)以减少分页次数
limit
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 key
data - Timestamps use ISO 8601 format
- Parse defensively with fallbacks for optional fields
服务ID:
- 始终以'srv-'为前缀(例如:'srv-abcd1234efgh')
- 部署ID以'dep-'为前缀(例如:'dep-d2mqkf9r0fns73bham1g')
- 必须始终通过LIST_SERVICES将服务名称解析为ID
服务类型:
- 过滤时必须使用精确的枚举值
- 可用类型:web_service、static_site、private_service、background_worker、cron_job
- 不同服务类型的部署行为不同
部署行为:
- 部署是异步操作;必须始终轮询以确认完成
- 清除缓存的部署耗时更长,但可解决缓存过期问题
- 部署失败不会自动回滚;上一版本会保持在线状态
- 并发触发的部署可能会进入队列
速率限制:
- Render API存在速率限制
- 避免频繁轮询;使用10-30秒的间隔
- 批量操作应进行限流
响应解析:
- 响应数据可能嵌套在键下
data - 时间戳采用ISO 8601格式
- 解析时需带有容错机制,处理可选字段
Quick Reference
快速参考
| Task | Tool Slug | Key Params |
|---|---|---|
| List services | RENDER_LIST_SERVICES | name, type, limit, cursor |
| Trigger deploy | RENDER_TRIGGER_DEPLOY | serviceId, clearCache |
| Get deploy status | RENDER_RETRIEVE_DEPLOY | serviceId, deployId |
| List projects | RENDER_LIST_PROJECTS | limit, cursor |
| 任务 | 工具标识 | 关键参数 |
|---|---|---|
| 列出服务 | RENDER_LIST_SERVICES | name, type, limit, cursor |
| 触发部署 | RENDER_TRIGGER_DEPLOY | serviceId, clearCache |
| 获取部署状态 | RENDER_RETRIEVE_DEPLOY | serviceId, deployId |
| 列出项目 | RENDER_LIST_PROJECTS | limit, cursor |