Connect your AI Agents to Render in minutes

Merge lets you securely connect your agents to Render and thousands of tools instantly

Available tools

list_deploys

List deploys for a Render service, ordered newest first. Returns deploy IDs, statuses, triggers, and timestamps. Use cursor from page_info to fetch more pages. Use list_services to find valid service IDs.

get_deploy

Get a single deploy by ID for a Render service. Returns status, trigger, commit, image, and timestamps. Use list_deploys to find valid deploy IDs.

trigger_deploy

Trigger a new deploy for a Render service. Optionally specify a commit SHA, Docker image URL, or whether to clear the build cache. Use list_services to find valid service IDs.

cancel_deploy

Cancel an in-progress deploy for a Render service. Only deploys that are currently building or pending can be canceled. Use list_deploys to find valid deploy IDs.

rollback_deploy

Roll back a Render service to a previous deploy. The specified deploy must have previously reached 'live' status. Use list_deploys to find valid deploy IDs.

list_disks

List persistent disks with optional filters by serviceId or ownerId. Supports cursor pagination; pass cursor from page_info to fetch the next page.

get_disk

Retrieve a single persistent disk by ID. Use list_disks to find valid IDs.

create_disk

Create a persistent disk and attach it to a service. Requires name, sizeGB, serviceId, and mountPath. Use list_disks to verify the disk was created.

update_disk

Update a persistent disk's name or size. Disk size can only be increased, not decreased. Use list_disks to find valid IDs.

delete_disk

Permanently delete a persistent disk. This cannot be undone and will detach the disk from its service. Use list_disks to find valid IDs.

list_custom_domains

List custom domains attached to a Render service. Returns domain IDs, names, verification status, and DNS configuration. Supports cursor pagination.

get_custom_domain

Retrieve a single custom domain by ID. Returns domain name, type, verification status, and server configuration. Use list_custom_domains to find valid IDs.

create_custom_domain

Add a custom domain to a Render service. Provide the fully qualified domain name (e.g. 'app.example.com'). After creating, call verify_custom_domain once DNS is configured.

delete_custom_domain

Remove a custom domain from a Render service. This cannot be undone. Use list_custom_domains to find valid domain IDs.

verify_custom_domain

Trigger DNS verification for a custom domain. Call this after configuring DNS records to confirm ownership. Use list_custom_domains to find valid domain IDs.

list_env_groups

List environment groups in your Render account with optional filters by name or ownerId. Supports cursor pagination. Use get_env_group to fetch full details for a specific group.

get_env_group

Retrieve a single environment group by ID, including its environment variables, secret files, and linked services. Use list_env_groups to find valid IDs.

create_env_group

Create a new environment group. Provide a name and ownerId (required). Optionally include initial envVars, secretFiles, and serviceIds to link on creation.

update_env_group

Update an environment group's name. Use list_env_groups to find valid group IDs. To update env vars or secret files, use the dedicated update tools.

delete_env_group

Permanently delete an environment group. This cannot be undone. Linked services will lose access to the group's variables. Use list_env_groups to find valid IDs.

link_env_group_service

Link a service to an environment group so it can consume the group's variables. Use list_env_groups to find group IDs and list_services to find service IDs.

unlink_env_group_service

Unlink a service from an environment group. The service will lose access to the group's variables. Use get_env_group to find linked service IDs.

list_env_vars

List all environment variables for a Render service. Returns key/value pairs with pagination. Use list_services to find valid service IDs.

get_env_var

Get a single environment variable by key for a Render service. Use list_env_vars to find valid keys.

update_env_var

Add or update a single environment variable on a Render service. Creates the variable if it does not exist. Use list_services to find valid service IDs.

delete_env_var

Delete an environment variable from a Render service by key. Use list_env_vars to find valid keys.

replace_env_vars

Replace ALL environment variables on a Render service with the provided list. WARNING: removes any existing variables not included in the new list. Each item must have 'key' and 'value'. Use list_services to find valid service IDs.

list_secret_files

List all secret files for a Render service. Returns file names and content with pagination. Use list_services to find valid service IDs.

get_secret_file

Get a single secret file by name for a Render service. Use list_secret_files to find valid names.

update_secret_file

Update the content of a secret file on a Render service. Use list_secret_files to find valid names.

delete_secret_file

Delete a secret file from a Render service by name. Use list_secret_files to find valid names.

replace_secret_files

Replace ALL secret files on a Render service with the provided list. WARNING: removes any existing files not included in the new list. Each item must have 'name' and 'content'. Use list_services to find valid service IDs.

list_jobs

List one-off jobs for a Render service. Returns job IDs, statuses, start commands, and timestamps. Use cursor from page_info to fetch more pages. Use list_services to find valid service IDs.

get_job

Get a single one-off job by ID for a Render service. Returns status, start command, plan, and timestamps. Use list_jobs to find valid job IDs.

create_job

Create and run a one-off job on a Render service. Provide the command to run; optionally specify a plan ID for compute resources. Use list_services to find valid service IDs.

cancel_job

Cancel a running one-off job for a Render service. Only jobs in a running or pending state can be canceled. Use list_jobs to find valid job IDs.

trigger_cron_job

Manually trigger a cron job to run immediately outside its schedule. Use list_services to find valid cron job service IDs.

cancel_cron_job

Cancel a currently running cron job execution. Only cron jobs that are actively running can be canceled. Use list_services to find valid cron job service IDs.

list_key_value

List all Key-Value (Redis-compatible) instances. Filter by name or ownerId. Returns IDs, names, plans, regions, and statuses. Use page_info.cursor for the next page.

get_key_value

Retrieve a single Key-Value instance by ID. Returns plan, region, status, maxmemory policy, and IP allow-list. Use list_key_value to find valid IDs.

create_key_value

Create a new Key-Value (Redis-compatible) instance. Requires name, ownerId, and plan. Optionally set region, maxmemory policy, and IP allow-list.

update_key_value

Update a Key-Value instance. Modify name, plan, maxmemory policy, or IP allow-list. Use list_key_value to find valid IDs.

delete_key_value

Permanently delete a Key-Value instance. This cannot be undone. Use list_key_value to find valid IDs.

suspend_key_value

Suspend a Key-Value instance, stopping it and halting billing. Use list_key_value to find valid IDs.

resume_key_value

Resume a previously suspended Key-Value instance. Use list_key_value to find valid IDs.

get_key_value_connection_info

Retrieve connection details for a Key-Value instance, including internal/external connection strings and host/port. Use list_key_value to find valid IDs.

list_owners

List all Render workspace owners (teams and users). Supports cursor pagination and optional filtering by name or email.

get_owner

Retrieve a single Render workspace owner by ID. Use list_owners to find valid owner IDs.

list_owner_members

List members of a Render workspace/owner. Supports cursor pagination. Use list_owners to find valid owner IDs.

list_postgres

List all managed PostgreSQL databases. Filter by name, owner IDs, or include replicas. Use cursor from page_info to paginate. Returns database IDs, plans, regions, and status.

get_postgres

Get details of a managed PostgreSQL database by ID, including plan, region, status, version, and connection info. Use list_postgres to find valid IDs.

create_postgres

Create a new managed PostgreSQL database. Requires name, ownerId, and plan. Optionally set region, version, disk size, high availability, read replicas, and IP allow-list.

update_postgres

Update a managed PostgreSQL database's name, plan, or IP allow-list. Use list_postgres to find valid IDs.

delete_postgres

Permanently delete a managed PostgreSQL database. This cannot be undone. Use list_postgres to find valid IDs.

restart_postgres

Restart a managed PostgreSQL database. This causes a brief interruption. Use list_postgres to find valid IDs.

suspend_postgres

Suspend a managed PostgreSQL database, stopping compute while retaining data. Use list_postgres to find valid IDs.

resume_postgres

Resume a suspended managed PostgreSQL database. Use list_postgres to find valid IDs.

get_postgres_connection_info

Get connection strings for a managed PostgreSQL database, including external and internal connection strings and psql command. Use list_postgres to find valid IDs.

create_postgres_user

Create a new user in a managed PostgreSQL database. Use list_postgres to find valid database IDs.

list_postgres_users

List all users in a managed PostgreSQL database. Use cursor from page_info to paginate. Use list_postgres to find valid database IDs.

delete_postgres_user

Delete a user from a managed PostgreSQL database. Use list_postgres_users to find valid usernames. Use list_postgres to find valid database IDs.

list_projects

List Render projects with optional filters by name or ownerId. Returns paginated results. Use cursor from page_info to fetch the next page.

get_project

Retrieve a single Render project by ID. Use list_projects to find valid project IDs.

create_project

Create a new Render project. Requires a name and an ownerId (team or user). A project must have at least one environment; if none are supplied, a single 'production' environment is created automatically. Optionally supply environments as a list of objects like [{'name': 'staging'}].

update_project

Update a Render project's name. Use list_projects to find valid project IDs.

delete_project

Permanently delete a Render project. This cannot be undone. Use list_projects to find valid project IDs.

list_environments

List environments within a Render project. Returns paginated results. Use list_projects to find valid project IDs. Use cursor from page_info for the next page.

get_environment

Retrieve a single environment by environment ID. Use list_environments to find valid environment IDs.

create_environment

Create a new environment in a Render project. Requires a project ID and environment name. Use list_projects to find valid project IDs.

update_environment

Update an environment's name or protected status. Use list_projects and list_environments to find valid IDs.

delete_environment

Permanently delete an environment from a Render project. This cannot be undone. Use list_projects and list_environments to find valid IDs.

add_environment_resources

Add one or more resources to a Render environment by resource IDs. Use list_environments to find valid environment IDs.

remove_environment_resources

Remove one or more resources from a Render environment by resource IDs. Use list_environments to find valid environment IDs.

list_services

List Render services with optional filters: name, type, env, region, suspended, ownerId. Supports cursor pagination. Use get_service to fetch full details for a specific service.

get_service

Retrieve full details for a single Render service by ID. Use list_services to find valid service IDs.

create_service

Create a new Render service. Required: type (static_site, web_service, private_service, background_worker, cron_job), name, ownerId. Provide repo/branch for Git-backed services or image for Docker-backed services. Use serviceDetails for build/start commands and plan.

update_service

Update a Render service's name, branch, autoDeploy setting, or serviceDetails. Use list_services to find valid service IDs.

delete_service

Permanently delete a Render service and all its associated resources. This cannot be undone. Use list_services to find valid service IDs.

restart_service

Restart a running Render service. Use list_services to find valid service IDs.

suspend_service

Suspend a Render service, stopping all running instances. Use resume_service to bring it back. Use list_services to find valid service IDs.

resume_service

Resume a suspended Render service. Use list_services to find valid service IDs.

scale_service

Scale a Render service to the specified number of instances. Requires a paid plan. Use list_services to find valid service IDs.

purge_service_cache

Purge the build cache for a Render service. The next deploy will rebuild from scratch. Use list_services to find valid service IDs.

list_service_instances

List running instances for a Render service. Supports cursor pagination. Use list_services to find valid service IDs.

list_service_events

List events for a Render service (deploys, restarts, suspensions, etc.). Supports cursor pagination. Use list_services to find valid service IDs.

validate_credential

Validate the Render API key with a lightweight workspaces lookup.

list_webhooks

List Render webhooks with optional owner filter. Supports cursor pagination. Use get_webhook to fetch full details for a specific webhook.

get_webhook

Retrieve full details for a single Render webhook by ID. Use list_webhooks to find valid webhook IDs.

create_webhook

Create a new Render webhook. Required: name, url, ownerId. Optionally specify enabled and eventFilter (list of event type strings). Use list_webhooks to browse existing webhooks.

update_webhook

Update a Render webhook's name, url, enabled state, or eventFilter. Use list_webhooks to find valid webhook IDs.

delete_webhook

Permanently delete a Render webhook by ID. Use list_webhooks to find valid webhook IDs.

list_webhook_events

List events delivered to a Render webhook. Supports cursor pagination. Use list_webhooks to find valid webhook IDs.

View all tools by creating a free accountSee more tools

How to set up Merge Agent Handler

In an mcp.json file, add the configuration below, and restart Cursor.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5      "headers": {
6        "Authorization": "Bearer yMt*****"
7      }
8    }
9  }
10}
11
Copy Code

Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.

Make sure Claude is using the Node v20+.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "command": "npx",
5      "args": [
6        "-y",
7        "mcp-remote@latest",
8        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9        "--header",
10        "Authorization: Bearer ${AUTH_TOKEN}"
11      ],
12      "env": {
13        "AUTH_TOKEN": "yMt*****"
14      }
15    }
16  }
17}
Copy Code
Copied!

Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.

Learn more in the official documentation ↗

1{
2    "mcpServers": {
3      "agent-handler": {
4        "command": "npx",
5        "args": [
6          "-y",
7          "mcp-remote@latest",
8          "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9          "--header",
10          "Authorization: Bearer ${AUTH_TOKEN}"
11        ],
12        "env": {
13          "AUTH_TOKEN": "<ah-production-access-key>"
14        }
15      }
16    }
17  }
Copy Code

In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".

You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.

Learn more in the official documentation ↗

1{
2  "inputs": [
3    {
4      "type": "promptString",
5      "id": "agent-handler-auth",
6      "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7      "password": true
8    }
9  ],
10  "servers": {
11    "agent-handler": {
12      "type": "stdio",
13      "command": "npx",
14      "args": [
15        "-y",
16        "mcp-remote@latest",
17        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18        "--header",
19        "Authorization: Bearer ${input:agent-handler-auth}"
20      ]
21    }
22  }
23}
Copy Code

FAQs on using Merge's Render  MCP server

FAQs on using Merge's Render  MCP server

What is a Render MCP?

It's an MCP server that gives your agents access to a Render account through tools. Your agents can invoke them to list services, inspect deploys, query logs, manage environment variables, and more.

Render offers an official MCP server, but you can also use one from a third-party platform, like Merge Agent Handler.

How can I use the Render MCP server?

The use cases naturally depend on the agent you've built, but here are a few common ones:

  • Deploy investigation: when a deploy fails, an agent can pull the service's recent deploys and logs from Render and surface the error to the engineer who pushed the change
  • Service health summaries: an agent can check the status of every service in a workspace and post a morning digest of which ones are live, building, or failed
  • Log triage from Slack: an engineer can ask their AI to fetch the last hundred error lines for a service, and the agent returns and explains them without a context switch
  • Config drift checks: an agent can compare environment variables across a staging and production service and flag any that differ before a release

What are popular tools for Render's MCP server?

Here are some of the most commonly used tools:

  • list_services: returns the services in a workspace with their type and status. Useful for agents that need an inventory before acting on a specific service
  • get_service: returns configuration and status for a single service. Call this when an agent needs detail on one service before troubleshooting
  • list_deploys: returns deploy history for a service, including status and commit. Good for workflows that investigate a recent release
  • get_logs: returns log output for a service over a time range. Use this when an agent needs to read runtime errors or trace an issue
  • update_env_vars: sets or updates environment variables on a service. Helpful when an agent rotates a value or aligns config across environments
  • list_databases: returns managed Postgres instances and their status. Useful for agents that check database health alongside the services that depend on it

What makes Merge Agent Handler's Render MCP server better than alternative Render MCP servers?

There are a handful of reasons to reach for Merge Agent Handler's Render MCP server instead of building or using an alternative:

  • Enterprise-grade security and DLP: Merge Agent Handler includes built-in data loss prevention controls that let you block or redact sensitive fields before they reach an agent. For Render, this means environment variables, secrets, and database connection strings can be withheld even when an agent can read service config
  • Managed authentication and credentials: Merge stores and refreshes Render credentials on your behalf. You never expose raw API keys to an agent or manage rotation manually, which matters given how broadly scoped Render API keys are
  • Real-time observability and audit trail: Every tool call made against Render is logged with timestamp, tool name, input parameters, and response metadata. You get a record of exactly which services and config an agent touched without instrumenting anything
  • Tool Packs and controlled access: Tool Packs let you bundle specific Render tools with tools from other connectors into a single MCP endpoint, scoped to a specific use case. An agent gets exactly the tools it needs, nothing more

How can I start using Merge Agent Handler's Render MCP server?

You can take the following steps:

1. Create or log into your Merge Agent Handler account.

2. Install the Merge CLI by running pipx install merge-api, then run merge configure to link the CLI to your Merge account and merge login to authenticate your session.

3. Register the Agent Handler MCP server with Claude Code by running claude mcp add --transport http agent-handler https://ah-api.merge.dev/mcp, then open Claude Code and run /mcp to confirm agent-handler appears with a connected status.

4. Select agent-handler from the MCP list. This opens a browser window where you select which integrations to authenticate. Choose Render and complete the auth flow. Merge stores and manages the credentials going forward.

5. Open a Claude Code session and start querying Render data directly. The first time you use a Render tool, a Magic Link may appear to complete connector authentication.

If you want to connect Merge Agent Handler's Render MCP with internal or customer-facing agentic products, you can follow the steps in our docs.

Can employees use Merge Agent Handler to connect their AI tools to Render?

Yes, Agent Handler for Employees lets your employees connect Claude, ChatGPT, Microsoft Copilot, Cursor, and other MCP-compatible AI tools to Render without bypassing IT governance.

Instead of setting up direct connections with personal credentials that IT can't monitor or revoke, each employee authenticates through Agent Handler and gets individual credentials tied to their identity. An engineer can ask their AI to check a service's status, read its logs, or compare environment variables, all within the permissions IT has defined.

IT also provisions access by role or group via SCIM. A backend engineer, for example, gets Render access to inspect service logs, GitHub to review the related commit, and Sentry to correlate the error; while a DevOps engineer gets Render access to check deploy status and env vars, Datadog to watch infrastructure metrics, and Slack to update the team.

Every tool call an employee's AI makes to Render is also inspected against your DLP rules and logged to a searchable audit trail, giving security teams full visibility into what data was accessed and by whom.

Explore other MCP servers built and managed by Merge

activecampaign
ActiveCampaign
adobe_pdf_services
Adobe PDF Services
ahrefs
Ahrefs
airtable
Airtable
amadeus
Amadeus
amazon_s3
Amazon S3
amplitude
Amplitude
anaplan
Anaplan
apollo
Apollo
arize
Arize
articulate
Articulate Reach 360
asana
Asana
ashby
Ashby
attio
Attio
aviationstack
Aviationstack
axiom
Axiom
bamboohr
BambooHR
basecamp
Basecamp
biorxiv
bioRxiv
bitbucket
Bitbucket
bitly
Bitly
box
Box
calendly
Calendly
canva
Canva

Ready to try it out?

Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now