
Heroku MCP Server: Setup for Claude, Cursor and Other Apps
Lets Claude, Cursor and other assistants manage your Heroku apps, dynos, add-ons, pipelines and Postgres databases.
This is Heroku's own server, and it runs on your computer using the Heroku CLI. Your assistant can list apps, read logs, scale or restart dynos, promote pipelines and run SQL on your databases. The best setup uses your existing Heroku CLI sign-in, so you do not paste a key into any file. The README calls the server early in development, so tools may change.
Good for
- Heroku developers who read logs and fix issues without leaving their editor
- Teams who manage staging and production pipelines
- Engineers who check slow queries and locks in Heroku Postgres
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install heroku-mcp-server
Claude Code
- 1
Copy this prompt.
Add the heroku-mcp-server server to Claude Code. Run this command: claude mcp add heroku -- heroku mcp:start Ask me for HEROKU_API_KEY and only put the values in that config, nowhere else. Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Heroku CLI 10.8.1+.
Install the Heroku CLI (version 10.8.1 or higher) and sign in with heroku login first. This route uses your CLI login, so no key is needed. Alternative if you prefer a token. The Heroku CLI is still required. Create the token with heroku authorizations:create.
From the project README. Source.
Tools
Lists your Heroku apps
Lists apps, filtered by personal, collaborator, team or space.
Try: “List my Heroku apps.”
Read ·
list_appsShows one app's setup
Returns an app's configuration, dynos and add-ons.
Try: “Show me the setup of my-shop-api.”
Read ·
get_app_infoReads an app's logs
Shows the application logs.
Try: “Show the last errors in the logs of my-shop-api.”
Read ·
get_app_logsCreates an app
Creates a new app with the region, team and space you choose.
Try: “Create an app called my-shop-staging in the eu region.”
Write ·
create_appRenames an app
Renames an existing app.
Try: “Rename my-shop-staging to my-shop-test.”
Write ·
rename_appTransfers an app to someone else
Moves ownership of an app to another user or team.
Try: “Transfer my-shop-test to the Platform team.”
Write ·
transfer_appDeploys a project
Deploys a project using its app.json, including team, private space and environment settings.
Try: “Deploy this project to a new Heroku app.”
Write ·
deploy_to_herokuRuns a script on a temporary dyno
Runs code or commands in a sandbox on a one-off dyno, with optional files, network access and variables. It cleans up afterwards.
Try: “Run this migration script on a one-off dyno.”
Runs code ·
deploy_one_off_dynoLists an app's dynos
Shows all dynos of an app.
Try: “What dynos are running for my-shop-api?”
Read ·
ps_listScales or resizes dynos
Changes how many dynos run, or their size.
Try: “Scale the web dynos of my-shop-api to 3.”
Write ·
ps_scaleRestarts dynos
Restarts chosen dynos, a process type, or all dynos.
Try: “Restart all dynos for my-shop-api.”
Write ·
ps_restartLists add-ons
Lists add-ons across all apps or for one app.
Try: “Which add-ons does my-shop-api use?”
Read ·
list_addonsShows one add-on
Returns details of an add-on.
Try: “Show details of the Postgres add-on on my-shop-api.”
Read ·
get_addon_infoAdds an add-on
Provisions a new add-on for an app.
Try: “Add a Redis add-on to my-shop-api.”
Write ·
create_addonTurns maintenance mode on
Puts an app into maintenance mode.
Try: “Turn on maintenance mode for my-shop-api.”
Write ·
maintenance_onTurns maintenance mode off
Takes an app out of maintenance mode.
Try: “Turn off maintenance mode for my-shop-api.”
Write ·
maintenance_offLists pipelines
Lists the pipelines you can see.
Try: “List my pipelines.”
Read ·
pipelines_listShows one pipeline
Returns detailed information about a pipeline.
Try: “Show the my-shop pipeline.”
Read ·
pipelines_infoCreates a pipeline
Creates a new pipeline.
Try: “Create a pipeline called my-shop.”
Write ·
pipelines_createPromotes apps to the next stage
Promotes apps to the next stage of a pipeline.
Try: “Promote staging to production in the my-shop pipeline.”
Write ·
pipelines_promoteLists your teams
Lists the teams you belong to.
Try: “Which Heroku teams am I in?”
Read ·
list_teamsLists private spaces
Lists the spaces available to you.
Try: “List my private spaces.”
Read ·
list_private_spacesShows database details
Displays detailed information about a Heroku Postgres database.
Try: “Show info about the database of my-shop-api.”
Read ·
pg_infoShows running queries
Shows active queries and how they are running.
Try: “What queries are running on my-shop-api's database?”
Read ·
pg_psFinds database locks
Shows locks and which transactions block others.
Try: “Is anything blocking queries on my-shop-api's database?”
Read ·
pg_locksFinds the slowest queries
Identifies queries that use the most resources.
Try: “Which queries use the most resources?”
Read ·
pg_outliersShows database maintenance info
Shows maintenance information for the database.
Try: “When is the next maintenance for my database?”
Read ·
pg_maintenanceRuns SQL on your database
Runs the SQL you or the assistant write against a Heroku Postgres database. SQL can read, change and delete data.
Try: “Count the orders created today in my-shop-api's database.”
Delete ·
pg_psqlManages database credentials
Manages database credentials and access.
Try: “List the credentials for my database.”
Write ·
pg_credentialsStops a database process
Terminates a specific database process.
Try: “Kill the long running query that is blocking others.”
Runs code ·
pg_killManages database backups
Manages database backups and their schedules.
Try: “Show the backup schedule for my database.”
Delete ·
pg_backupsUpgrades Postgres
Upgrades the database to a newer PostgreSQL version.
Try: “Upgrade my database to the latest version.”
Write ·
pg_upgrade
Read from the source code
Permissions
high risk · 3 things to watch
High risk
It can deploy code, scale or restart dynos, run SQL, upgrade a database and manage backups on your live apps. Use a Heroku account or token that only reaches the apps you want to hand over, and approve each action.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can run any SQL on your Postgres database
The SQL tool can change or delete data as well as read it. Point it at a follower or staging database when you can. raw.githubusercontent.com
It can deploy, scale and restart live apps
These actions affect production traffic at once. Keep approval prompts on for changes. raw.githubusercontent.com
It can upgrade a database and kill processes
Database upgrade and process termination are available as tools. Ask the assistant to explain before you approve them. raw.githubusercontent.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Talks to | Heroku Platform API, through the Heroku CLI |
|---|---|
| Sign-in and keys | With heroku mcp:start it reuses your Heroku CLI login. With npx you place HEROKU_API_KEY in your client config file. |
| Scopes |
|
Questions
Is the Heroku MCP server official?
Yes. It is published by Heroku in the heroku/heroku-mcp-server repository.
Do I need the Heroku CLI?
Yes. The README requires the Heroku CLI installed globally, version 10.8.1 or higher. Check yours with heroku --version.
Do I need an API key?
Not if you use heroku mcp:start. It uses your current Heroku CLI login. The npx route needs a HEROKU_API_KEY token, which you can create with heroku authorizations:create.
Can I make it read-only?
There is no read-only mode in the README. Use a Heroku account or authorization that can reach only the apps you want to expose.
Does it work with Claude Desktop and Cursor?
The README gives example setups for Claude Desktop, Cursor, Windsurf, Cline, VS Code, Zed and Trae.
Does it run locally or on Heroku?
It runs on your computer and calls the Heroku Platform through your CLI. The README also has a Deploy to Heroku button if you want to host it yourself.
Information
updated Nov 2, 2026
- Publisher
- Official
- Package
@heroku/mcp-server- Registry
- npm
- Transport
- stdio
- Version
- 1.2.13
- License
- Apache-2.0
- Last commit
- Oct 29, 2026
- Open issues
- 7
- Listed in
- Docker MCP Catalog
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 1Hide
- raw.githubusercontent.com · raw.githubusercontent.com