Public log

@heroku/mcp-server

No description published.

npm · fingerprint 032d7d0dbeb6b784324c69ae · repository · RSS

33tools
2recorded versions
23dtracked
changed today

What changed

Changed 2026-10-30 12:35 UTC

33 schema or annotation changes with the description left byte-identical.

--- pinned/create_addon
+++ observed/create_addon
  {
    "description": "Create add-on: specify service, plan, custom names",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app for add-on. Must have write access. Region/space affects availability",
--- pinned/create_app
+++ observed/create_app
  {
    "description": "Create app: custom name, region (US/EU), team, private space",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "App name. Auto-generated if omitted",
--- pinned/deploy_one_off_dyno
+++ observed/deploy_one_off_dyno
  {
    "description": "\nRun code/commands in Heroku one-off dyno with network and filesystem access.\n\nRequirements:\n- Show command output\n- Use app_info for buildpack detection\n- Support shell setup commands\n- Use stdout/stderr\n\nFeatures:\n- Network/filesystem access\n- Environment variables\n- File operations\n- Temp directory handling\n\nUsage:\n1. Use Heroku runtime\n2. Proper syntax/imports\n3. Organized code structure\n4. Package management:\n   - Define dependencies\n   - Minimize external deps\n   - Prefer native modules\n\nExample package.json:\n```json\n{\n  \"type\": \"module\",\n  \"dependencies\": {\n    \"axios\": \"^1.6.0\"\n  }\n}\n```\n",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "command": {
          "description": "Command to run in dyno.",
+         "propertyNames": {
+           "type": "string"
+         },
          "type": "object"
        },
        "name": {
-           "additionalProperties": false,
            "properties": {
              "contents": {
                "description": "File contents.",
--- pinned/deploy_to_heroku
+++ observed/deploy_to_heroku
  {
    "description": "Use for all deployments. Deploys new/existing apps, with or without teams/spaces, and env vars to Heroku. Ask for app name if missing. Requires valid app.json via appJson param.",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "appJson": {
          "description": "App.json config for deployment. Must follow schema: {\"default\":{\"$schema\":\"http://json-schema.org/draft-07/schema#\",\"title\":\"Heroku app.json Schema\",\"description\":\"app.json is a manifest format for describing web apps. It declares environment variables, add-ons, and other information required to run an app on Heroku. Used for dynamic configurations or converted projects\",\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\",\"pattern\":\"^[a-zA-Z-_\\\\.]+\",\"maxLength\":300},\"description\":{\"type\":\"string\"},\"keywords\":{\"type\":\"array\",\"items\":{\"type\":\"string\"}},\"website\":{\"$ref\":\"#/definitions/uriString\"},\"repository\":{\"$ref\":\"#/definitions/uriString\"},\"logo\":{\"$ref\":\"#/definitions/uriString\"},\"success_url\":{\"type\":\"string\"},\"scripts\":{\"$ref\":\"#/definitions/scripts\"},\"env\":{\"$ref\":\"#/definitions/env\"},\"formation\":{\"$ref\":\"#/definitions/formation\"},\"addons\":{\"$ref\":\"#/definitions/addons\"},\"buildpacks\":{\"$ref\":\"#/definitions/buildpacks\"},\"environments\":{\"$ref\":\"#/definitions/environments\"},\"stack\":{\"$ref\":\"#/definitions/stack\"},\"image\":{\"type\":\"string\"}},\"additionalProperties\":false,\"definitions\":{\"uriString\":{\"type\":\"string\",\"format\":\"uri\"},\"scripts\":{\"type\":\"object\",\"properties\":{\"postdeploy\":{\"type\":\"string\"},\"pr-predestroy\":{\"type\":\"string\"}},\"additionalProperties\":false},\"env\":{\"type\":\"object\",\"patternProperties\":{\"^[A-Z][A-Z0-9_]*$\":{\"type\":\"object\",\"properties\":{\"description\":{\"type\":\"string\"},\"value\":{\"type\":\"string\"},\"required\":{\"type\":\"boolean\"},\"generator\":{\"type\":\"string\",\"enum\":[\"secret\"]}},\"additionalProperties\":false}}},\"dynoSize\":{\"type\":\"string\",\"enum\":[\"free\",\"eco\",\"hobby\",\"basic\",\"standard-1x\",\"standard-2x\",\"performance-m\",\"performance-l\",\"private-s\",\"private-m\",\"private-l\",\"shield-s\",\"shield-m\",\"shield-l\"]},\"formation\":{\"type\":\"object\",\"patternProperties\":{\"^[a-zA-Z0-9_-]+$\":{\"type\":\"object\",\"properties\":{\"quantity\":{\"type\":\"integer\",\"minimum\":0},\"size\":{\"$ref\":\"#/definitions/dynoSize\"}},\"required\":[\"quantity\"],\"additionalProperties\":false}}},\"addons\":{\"type\":\"array\",\"items\":{\"oneOf\":[{\"type\":\"string\"},{\"type\":\"object\",\"properties\":{\"plan\":{\"type\":\"string\"},\"as\":{\"type\":\"string\"},\"options\":{\"type\":\"object\"}},\"required\":[\"plan\"],\"additionalProperties\":false}]}},\"buildpacks\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"url\":{\"type\":\"string\"}},\"required\":[\"url\"],\"additionalProperties\":false}},\"environmentConfig\":{\"type\":\"object\",\"properties\":{\"env\":{\"type\":\"object\"},\"formation\":{\"type\":\"object\"},\"addons\":{\"type\":\"array\"},\"buildpacks\":{\"type\":\"array\"}}},\"environments\":{\"type\":\"object\",\"properties\":{\"test\":{\"allOf\":[{\"$ref\":\"#/definitions/environmentConfig\"},{\"type\":\"object\",\"properties\":{\"scripts\":{\"type\":\"object\",\"properties\":{\"test\":{\"type\":\"string\"}},\"additionalProperties\":false}}}]},\"review\":{\"$ref\":\"#/definitions/environmentConfig\"},\"production\":{\"$ref\":\"#/definitions/environmentConfig\"}},\"additionalProperties\":false},\"stack\":{\"type\":\"string\",\"enum\":[\"heroku-18\",\"heroku-20\",\"heroku-22\",\"heroku-24\"]}}}}",
+         "propertyNames": {
+           "type": "string"
+         },
          "type": "object"
        },
        "internalRouting": {
--- pinned/get_addon_info
+++ observed/get_addon_info
  {
    "description": "Get add-on details: plan, state, billing",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "addon": {
          "description": "Add-on identifier: UUID, name (postgresql-curved-12345), or attachment name (DATABASE)",
--- pinned/get_app_info
+++ observed/get_app_info
  {
    "description": "Get app details: config, dynos, addons, access, domains",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name. Requires access permissions",
--- pinned/get_app_logs
+++ observed/get_app_logs
  {
    "description": "App logs: monitor/debug/filter by dyno/process/source",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Heroku app name. Requires: permissions, Cedar-gen",
--- pinned/list_addon_plans
+++ observed/list_addon_plans
  {
    "description": "List service plans: features, pricing, availability",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "json": {
          "description": "JSON output with pricing, features, space compatibility. Default: text format",
--- pinned/list_addon_services
+++ observed/list_addon_services
  {
    "description": "List available add-on services and features",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "json": {
          "description": "JSON output with sharing options and app generation support. Default: basic text",
--- pinned/list_addons
+++ observed/list_addons
  {
    "description": "List add-ons: all apps or specific app, detailed metadata",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "all": {
          "description": "List all add-ons across accessible apps. Overrides app param, shows full status",
--- pinned/list_apps
+++ observed/list_apps
  {
    "description": "List Heroku apps: owned, collaborator access, team/space filtering",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "all": {
          "description": "Show owned apps and collaborator access. Default: owned only",
--- pinned/list_private_spaces
+++ observed/list_private_spaces
  {
    "description": "Lists Heroku Private Spaces with CIDR blocks, regions, compliance and capacity details. JSON output supported.",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "json": {
          "description": "JSON output for detailed space metadata, text output if false/omitted",
--- pinned/list_teams
+++ observed/list_teams
  {
    "description": "Lists accessible Heroku Teams. Use for: viewing teams, checking membership, getting team metadata, and verifying access. JSON output available.",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "json": {
          "description": "Output format control - true for detailed JSON with team metadata, false/omitted for simplified text",
--- pinned/maintenance_off
+++ observed/maintenance_off
  {
    "description": "Disable maintenance mode and restore normal app operations",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target Heroku app name",
--- pinned/maintenance_on
+++ observed/maintenance_on
  {
    "description": "Enable maintenance mode and redirect traffic for a Heroku app",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target Heroku app name",
--- pinned/pg_backups
+++ observed/pg_backups
  {
    "description": "Manage backups: schedules, status, verification, recovery",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_credentials
+++ observed/pg_credentials
  {
    "description": "Manage access: credentials, permissions, security, monitoring",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_info
+++ observed/pg_info
  {
    "description": "View database status: config, metrics, resources, health",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_kill
+++ observed/pg_kill
  {
    "description": "Stop processes: stuck queries, blocking transactions, runaway operations",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_locks
+++ observed/pg_locks
  {
    "description": "Analyze locks: blocked queries, deadlocks, concurrency",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_maintenance
+++ observed/pg_maintenance
  {
    "description": "Track maintenance: windows, schedules, progress, planning",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_outliers
+++ observed/pg_outliers
  {
    "description": "Find resource-heavy queries: performance, patterns, optimization",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_ps
+++ observed/pg_ps
  {
    "description": "Monitor active queries: progress, resources, performance",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pg_psql
+++ observed/pg_psql
  {
    "description": "Execute SQL queries: analyze, debug, modify schema, manage data",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "app to run command against",
--- pinned/pg_upgrade
+++ observed/pg_upgrade
  {
    "description": "Upgrade PostgreSQL: version migration, compatibility, safety",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Target app name",
--- pinned/pipelines_create
+++ observed/pipelines_create
  {
    "description": "Creates new Heroku deployment pipeline with configurable stages, apps, and team settings",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "App to add to pipeline",
--- pinned/pipelines_info
+++ observed/pipelines_info
  {
    "description": "Displays detailed pipeline configuration, stages, and connected applications",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "json": {
          "description": "Enable JSON output",
--- pinned/pipelines_list
+++ observed/pipelines_list
  {
    "description": "Lists accessible Heroku pipelines with ownership and configuration details",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "json": {
          "description": "Enable JSON output",
--- pinned/pipelines_promote
+++ observed/pipelines_promote
  {
    "description": "Promotes apps between pipeline stages with configurable target applications",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Source app for promotion",
--- pinned/ps_list
+++ observed/ps_list
  {
    "description": "List and monitor Heroku app dynos. View running dynos, check status/health, monitor process states, verify configurations.",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "App name to list processes for",
--- pinned/ps_restart
+++ observed/ps_restart
  {
    "description": "Restart Heroku app processes. Restart specific dynos, process types, or all dynos. Reset dyno states selectively.",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "App name to restart processes for",
--- pinned/ps_scale
+++ observed/ps_scale
  {
    "description": "Scale Heroku app dynos. Adjust quantities, change sizes, view formation details, manage resources.",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "App name to scale",
--- pinned/rename_app
+++ observed/rename_app
  {
    "description": "Rename app: validate and update app name",
    "execution": {
-     "additionalProperties": false,
      "properties": {
        "app": {
          "description": "Current app name. Requires access",

Current tools

Show all 33 tool fingerprints
create_addon
3d16839ed1a8b415
create_app
de6760bb057b256a
deploy_one_off_dyno
4c966525981cd52b
deploy_to_heroku
7fb3077f5dfd0e16
get_addon_info
5faa28fd8f4e3bf4
get_app_info
268f480628a540a7
get_app_logs
224123738fcf4440
list_addon_plans
b526fa55ea1fe073
list_addon_services
b122a5c35e0a60c1
list_addons
9678ff78e716deec
list_apps
fb01bce6afb4b757
list_private_spaces
579e152e2bebd2b7
list_teams
875a3ab9777faa45
maintenance_off
1ca4480a1db76f33
maintenance_on
2046eb0804ac5b94
pg_backups
d1d72c8cdd5a21b1
pg_credentials
884404fe83f74fe3
pg_info
2c163645de9db658
pg_kill
f59890297112533c
pg_locks
1d724f189a4d0d8a
pg_maintenance
f99c9e885ff97018
pg_outliers
85923cd43301168e
pg_ps
deb2ac6c5adbf59d
pg_psql
0121be7bed5a5530
pg_upgrade
ab78d87c105eac3e
pipelines_create
d140d363042b6bd6
pipelines_info
d7f96f927f6bbe1e
pipelines_list
b7b2550a0bdc6379
pipelines_promote
6597dea04b90ca33
ps_list
802cd74c9b86038a
ps_restart
f79771c16c3d4ea5
ps_scale
ee12d6c3c60d2f4b
rename_app
32f54cae12ea0c2e

Watch this server yourself

If you run this server, put the proxy in front of it. It pins these exact fingerprints on first connect and stops the session if they move.

npx -y mcp-pin@0.2.3 -- <your @heroku/mcp-server command>

Or subscribe to this page's RSS feed to be told when it changes.

Badge

mcp-pin status badge for @heroku/mcp-server

The badge states one fact about time and nothing else. It never claims a server is safe.

[![mcp-pin](https://mcp-pin.gautamkhosla.com/badge/0d500126612f467f.svg)](https://mcp-pin.gautamkhosla.com/servers/0d500126612f467f.html)