✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

heroku-mcp-server

The Heroku Platform MCP Server works on Common Runtime, Cedar Private and Shield Spaces, and Fir Private Spaces.

Overview

The Heroku Platform MCP Server is a specialized Model Context Protocol (MCP) implementation designed to facilitate seamless interaction between large language models (LLMs) and the Heroku Platform. This server provides a robust set of tools and capabilities that enable LLMs to read, manage, and operate Heroku Platform resources.

Key Features:

  • Direct interaction with Heroku Platform resources through LLM-driven tools
  • Secure and authenticated access to Heroku Platform APIs, leveraging the Heroku CLI
  • Natural language interface for Heroku Platform interactions

Note: The Heroku Platform MCP Server is currently in early development. As we continue to enhance and refine the implementation, the available functionality and tools may evolve. We welcome feedback and contributions to help shape the future of this project.

Install the Heroku Platform MCP Server

Install the Heroku Platform MCP Server globally usingnpm:

npm i -g @heroku/mcp-server

Authentication

Generate a Heroku authorization token with one of these methods:

  • Use the Heroku CLI command:
    heroku authorizations:create
  • Use an existing token in the CLI
    heroku auth:token

Copy the token and use it as your HEROKU_API_KEY in the following steps.

  • In your Heroku Dashboard:
  1. Select your avatar, then select Account Settings.
  2. Open the Applications tab.
  3. Next to Authorizations, click Create authorization.

Configure the Heroku Platform MCP Server

You can configure Claude Desktop, Zed, Cursor, and Windsurf to work with the Heroku Platform MCP Server.

Claude Desktop

Add this snippet to your claude_desktop_config.json:

{
  "mcpServers": {
    "heroku": {
      "command": "npx -y @heroku/mcp-server",
      "env": {
        "HEROKU_API_KEY": "<YOUR_HEROKU_AUTH_TOKEN>"
      }
    }
  }
}

Zed

Add this snippet to your Zed settings.json:

{
  "context_servers": {
    "heroku": {
      "command": {
        "path": "npx",
        "args": ["-y", "@heroku/mcp-server"],
        "env": {
          "HEROKU_API_KEY": "<YOUR_HEROKU_AUTH_TOKEN>"
        }
      }
    }
  }
}

Cursor

Add this snippet to your Cursor mcp.json:

{
  "mcpServers": {
    "heroku": {
      "command": "npx -y @heroku/mcp-server",
      "env": {
        "HEROKU_API_KEY": "<YOUR_HEROKU_AUTH_TOKEN>"
      }
    }
  }
}

Windsurf

Add this snippet to your Windsurf mcp_config.json:

{
  "mcpServers": {
    "heroku": {
      "command": "npx -y @heroku/mcp-server",
      "env": {
        "HEROKU_API_KEY": "<YOUR_HEROKU_AUTH_TOKEN>"
      }
    }
  }
}

Available Tools

Application Management

  • list_apps - List all Heroku apps. You can filter apps by personal, collaborator, team, or space.
  • get_app_info - Get detailed information about an app, including its configuration, dynos, and add-ons.
  • create_app - Create a new app with customizable settings for region, team, and space.
  • rename_app - Rename an existing app.
  • transfer_app - Transfer ownership of an app to another user or team.
  • deploy_to_heroku - Deploy projects to Heroku with an app.json configuration, supporting team deployments, private spaces, and environment setups.

Process & Dyno Management

  • ps_list - List all dynos for an app.
  • ps_scale - Scale the number of dynos up or down, or resize dynos.
  • ps_restart - Restart specific dynos, process types, or all dynos.

Add-ons

  • list_addons - List all add-ons for all apps or for a specific app.
  • get_addon_info - Get detailed information about a specific add-on.
  • create_addon - Provision a new add-on for an app.

Maintenance & Logs

  • maintenance_on - Enable maintenance mode for an app.
  • maintenance_off - Disable maintenance mode for an app.
  • get_app_logs - View application logs.

Pipeline Management

  • pipelines_create - Create a new pipeline.
  • pipelines_promote - Promote apps to the next stage in a pipeline.
  • pipelines_list - List available pipelines.
  • pipelines_info - Get detailed pipeline information.

Team & Space Management

  • list_teams - List teams you belong to.
  • list_private_spaces - List available spaces.

PostgreSQL Database Management

  • pg_psql - Execute SQL queries against the Heroku PostgreSQL database.
  • pg_info - Display detailed database information.
  • pg_ps - View active queries and execution details.
  • pg_locks - View database locks and identify blocking transactions.
  • pg_outliers - Identify resource-intensive queries.
  • pg_credentials - Manage database credentials and access.
  • pg_kill - Terminate specific database processes.
  • pg_maintenance - Show database maintenance information.
  • pg_backups - Manage database backups and schedules.
  • pg_upgrade - Upgrade PostgreSQL to a newer version.

Debugging

You can use the MCP inspector or the VS Code Run and Debug function to run and debug the server.

  1. Link the project as a global CLI using npm link from the project root.
  2. Build with npm run build:dev or watch for file changes and build automatically with npm run build:watch.

Use the MCP Inspector

Use the MCP inspector with no breakpoints in the code:

# Breakpoints are not available
npx @modelcontextprotocol/inspector heroku-mcp-server

Alternatively, if you installed the package in a specific directory or are actively developing on the Heroku MCP server:

cd /path/to/servers
npx @modelcontextprotocol/inspector dist/index.js

Use the VS Code Run and Debug Function

Use the VS Code Run and Debug launcher with fully functional breakpoints in the code:

  1. Locate and select the run debug.
  2. Select the configuration labeled "MCP Server Launcher" in the dropdown.
  3. Select the run/debug button.

VS Code / Cursor Debugging Setup

To set up local debugging with breakpoints:

  1. Store your Heroku auth token in the VS Code user settings:
  • Open the Command Palette (Cmd/Ctrl + Shift + P).
  • Type Preferences: Open User Settings (JSON).
  • Add the following snippet:
   {
     "heroku.mcp.authToken": "your-token-here"
   }
  1. Create or update .vscode/launch.json:
   {
     "version": "0.2.0",
     "configurations": [
       {
         "type": "node",
         "request": "launch",
         "name": "MCP Server Launcher",
         "skipFiles": ["<node_internals>/**"],
         "program": "${workspaceFolder}/node_modules/@modelcontextprotocol/inspector/bin/cli.js",
         "outFiles": ["${workspaceFolder}/**/dist/**/*.js"],
         "env": {
           "HEROKU_API_KEY": "${config:heroku.mcp.authToken}",
           "DEBUG": "true"
         },
         "args": ["heroku-mcp-server"],
         "sourceMaps": true,
         "console": "integratedTerminal",
         "internalConsoleOptions": "neverOpen",
         "preLaunchTask": "npm: build:watch"
       },
       {
         "type": "node",
         "request": "attach",
         "name": "Attach to Debug Hook Process",
         "port": 9332,
         "skipFiles": ["<node_internals>/**"],
         "sourceMaps": true,
         "outFiles": ["${workspaceFolder}/dist/**/*.js"]
       },
       {
         "type": "node",
         "request": "attach",
         "name": "Attach to REPL Process",
         "port": 9333,
         "skipFiles": ["<node_internals>/**"],
         "sourceMaps": true,
         "outFiles": ["${workspaceFolder}/dist/**/*.js"]
       }
     ],
     "compounds": [
       {
         "name": "Attach to MCP Server",
         "configurations": ["Attach to Debug Hook Process", "Attach to REPL Process"]
       }
     ]
   }
  1. Create .vscode/tasks.json:
   {
     "version": "2.0.0",
     "tasks": [
       {
         "type": "npm",
         "script": "build:watch",
         "group": {
           "kind": "build",
           "isDefault": true
         },
         "problemMatcher": ["$tsc"]
       }
     ]
   }
  1. (Optional) Set breakpoints in your TypeScript files.

  2. Press F5 or use the Run and Debug sidebar.

Note: the debugger automatically builds your TypeScript files before launching.

Heroku Platform MCP Server

327 GitHub stars

Project Details

Recomended MCP Servers

Neon MCP Server
Neon MCP Server

MCP server for interacting with Neon Management API and databases

🧩
Agent Twitter Client MCP

A Model Context Protocol (MCP) server that integrates with X using the @elizaOS `agent-twitter-client` package, allowing AI models...

🧩
Code MCP

Coding assistant MCP for Claude Desktop

🧩
PubMed

A PubMed MCP server.

AWS MCP Servers
AWS MCP Servers

AWS MCP Servers — specialized MCP servers that bring AWS best practices directly to your development workflow

🧩
Sleep Server

Allows AI Agents to sleep for a specified amount of milliseconds, like when they should wait for an...

Osmosis
Osmosis

Osmosis protocol tools for LLMs

Stealth Browser
Stealth Browser

A MCP Server that provides browser access through playwright with "stealth mode" enabled.

🧩
ORTools Constraint Solver

Model Context Protocol (MCP) server implementation using Google OR-Tools for constraint solving

Google Map Server
Google Map Server

A powerful Model Context Protocol (MCP) server providing comprehensive Google Maps API integration with LLM processing capabilities.

Kubernetes Operations Manager
Kubernetes Operations Manager

kom 是一个用于 Kubernetes 操作的工具,SDK级的kubectl、client-go的使用封装。并且支持作为管理k8s 的 MCP server。 它提供了一系列功能来管理 Kubernetes 资源,包括创建、更新、删除和获取资源,甚至使用SQL查询k8s资源。这个项目支持多种 Kubernetes 资源类型的操作,并能够处理自定义资源定义(CRD)。 通过使用 kom,你可以轻松地进行资源的增删改查和日志获取以及操作POD内文件等动作。

Linkup Search
Linkup Search

Linkup is a third-party extension that gives Claude access to real-time web search and premium content sources. It...

Featured Templates

View More

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.