Render MCP Server
OFFICIAL SERVERCreate, deploy and troubleshoot Render services, Postgres and Key Value from an AI client
Heroku's own server for managing apps, dynos, add-ons, pipelines and Postgres from an MCP client
Official · Heroku TypeScript Local · stdio Cloud platformsDatabasesDevOps and monitoring
62 popularity score ★ 82 ↓ 8.2k/wk
Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.
It needs HEROKU_API_KEY. Replace each <NAME> with your value.
claude mcp add heroku-platform -e HEROKU_API_KEY=<HEROKU_API_KEY> -- npx -y @heroku/mcp-server{
"mcpServers": {
"heroku-platform": {
"command": "npx",
"args": [
"-y",
"@heroku/mcp-server"
],
"env": {
"HEROKU_API_KEY": "<HEROKU_API_KEY>"
}
}
}
}{
"mcpServers": {
"heroku-platform": {
"command": "npx",
"args": [
"-y",
"@heroku/mcp-server"
],
"env": {
"HEROKU_API_KEY": "<HEROKU_API_KEY>"
}
}
}
}{
"servers": {
"heroku-platform": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@heroku/mcp-server"
],
"env": {
"HEROKU_API_KEY": "<HEROKU_API_KEY>"
}
}
}
}[mcp_servers.heroku-platform]
command = "npx"
args = ["-y", "@heroku/mcp-server"]
[mcp_servers.heroku-platform.env]
HEROKU_API_KEY = "<HEROKU_API_KEY>"gemini mcp add --scope user -e HEROKU_API_KEY=<HEROKU_API_KEY> heroku-platform npx -- -y @heroku/mcp-serverHEROKU_API_KEY secret |
Required: Heroku authorization token; needed when started with npx. Not needed with `heroku mcp:start`, which uses the CLI login. |
|---|---|
MCP_SERVER_REQUEST_TIMEOUT |
Optional: Command timeout in milliseconds. |
MCP_SERVER_IDLE_TIMEOUT |
Optional: Milliseconds without calls before the CLI process is shut down; 0 keeps it running. |
Heroku publishes this server so an MCP client can work with a Heroku account the way the Heroku CLI does. It covers apps (list, inspect, create, rename, deploy), dynos (list, scale, restart), add-ons and their plans, maintenance mode, logs, pipelines, teams and private spaces, and Heroku Postgres: running SQL, looking at locks and slow queries, killing queries, reading credentials and backups, and upgrading versions. Calls go through the Heroku CLI rather than straight to the API, so the CLI must be installed.
It runs on your machine over stdio and can be started two ways. The CLI command `heroku mcp:start` reuses your logged-in CLI session. The npm package `@heroku/mcp-server` needs a Heroku authorization token in `HEROKU_API_KEY`. Heroku says it works on the Common Runtime, Cedar Private and Shield Spaces, and Fir Private Spaces.
The README lists 34 tools, but src/index.ts registers 33 by default, and the two lists don't match. `transfer_app` appears in the README and is never registered. `list_addon_services` and `list_addon_plans` are registered but missing from the README. Three AI tools only show up when the Heroku CLI plugin `@heroku/plugin-ai` is installed. The server also serves Heroku Dev Center's llms.txt as a resource.
The CLI process behind it starts on the first tool call. After a stretch of no calls it is shut down, then started again on the next call. The README puts that idle window at 5 minutes, but the code's default is 600000 ms, so 10 minutes. `MCP_SERVER_IDLE_TIMEOUT` changes it, and 0 keeps the process alive. Each command is cut off after 15 seconds unless `MCP_SERVER_REQUEST_TIMEOUT` says otherwise.
| Runtime | Node.js 20+ |
|---|---|
| Runs on | macOS, Windows, Linux |
| Heroku | Paid planApps, dynos and add-ons the tools create are billed to the account |
| Also |
|
Install the Heroku CLI globally before either way of starting it. For `heroku mcp:start`, log in with the CLI first. For the npx way, make a token with `heroku authorizations:create` or `heroku auth:token` and put it in HEROKU_API_KEY. The AI tools appear only after `heroku plugins:install @heroku/plugin-ai`.
The README says the CLI process is shut down after 5 minutes without calls, but src/index.ts and src/repl/heroku-cli-repl.ts default to 600000 ms, which is 10 minutes. Set MCP_SERVER_IDLE_TIMEOUT if the exact window matters, or 0 to keep the process running.
A good fit for developers who already use Heroku and the Heroku CLI and want an assistant to check apps, read logs, scale dynos, run pipelines or look into Heroku Postgres. It comes from Heroku itself and reuses your CLI login, so there is no separate key to manage. Many tools change things that cost money or affect production (scaling, add-ons, Postgres upgrades, killing queries), so it suits people who review each tool call. If you do not use Heroku, or cannot install the Heroku CLI, it is no use to you.
20 only read, 13 change things, 3 can delete or overwrite. A ? marks an optional parameter.
list_appsall?: booleanpersonal?: booleanspace?: stringteam?: stringget_app_infoapp: stringjson?: booleancreate_app changesapp?: stringregion?: enumspace?: stringteam?: stringrename_app changesapp: stringnewName: stringdeploy_to_heroku changesname: stringrootUri: stringtarballUri?: stringteamId?: stringspaceId?: stringinternalRouting?: booleanenv?: objectdeploy_one_off_dyno changesname: stringcommand: stringsources?: arraysize?: stringtimeToLive?: numberenv?: objectps_listapp: stringjson?: booleanps_scale changesapp: stringdyno?: stringps_restart changesapp: stringdyno-name?: stringprocess-type?: stringlist_addonsall?: booleanapp?: stringget_addon_infoaddon: stringapp?: stringcreate_addon changesapp: stringserviceAndPlan: stringas?: stringname?: stringlist_addon_servicesjson?: booleanlist_addon_plansservice: stringjson?: booleanmaintenance_on changesapp: stringmaintenance_off changesapp: stringget_app_logsapp: stringdynoName?: stringsource?: stringprocessType?: stringpipelines_create changesname: stringstage: enumapp?: stringteam?: stringpipelines_promote changesapp: stringto?: stringpipelines_listjson?: booleanpipelines_infopipeline: stringjson?: booleanlist_teamsjson?: booleanlist_private_spacesjson?: booleanpg_psql deletesapp: stringcommand?: stringfile?: stringcredential?: stringdatabase?: stringpg_infoapp: stringdatabase?: stringpg_psapp: stringverbose?: booleandatabase?: stringpg_locksapp: stringtruncate?: booleandatabase?: stringpg_outliers changesapp: stringnum?: numberreset?: booleantruncate?: booleandatabase?: stringpg_credentialsapp: stringdatabase?: stringpg_kill deletesapp: stringpid: numberforce?: booleandatabase?: stringpg_maintenanceapp: stringdatabase?: stringpg_backupsapp: stringpg_upgrade deletesapp: stringversion?: stringconfirm?: stringdatabase?: stringlist_ai_available_modelsprovision_ai_model changesapp: stringmodelName: stringas?: stringmake_ai_inferenceapp: stringmodelResource: stringopts: objectjson?: booleanoutput?: stringhttps://devcenter.heroku.com/llms.txt