Skip to main content
Glama
heroku

Heroku MCP server

Official
by heroku

pipelines_promote

Promote applications through pipeline stages to deploy code, manage staged releases, coordinate multi-app promotions, and control deployment workflows. Simplifies safe app promotion between environments.

Instructions

Promote applications through pipeline stages. Use this tool when you need to: 1) Deploy code to staging or production environments, 2) Manage staged releases, 3) Coordinate multi-app promotions, 4) Control deployment workflows. The tool handles safe promotion of apps between pipeline stages.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
appYesName of the app to promote from
toNocomma separated list of apps to promote to

Implementation Reference

  • The main handler function for the 'pipelines_promote' tool. It constructs a CommandBuilder for 'pipelines:promote', adds app and to flags from options, executes via herokuRepl, and returns handled CLI output.
    async (options: PipelinesPromoteOptions): Promise<McpToolResponse> => { const command = new CommandBuilder(TOOL_COMMAND_MAP.PIPELINES_PROMOTE) .addFlags({ app: options.app, to: options.to }) .build(); const output = await herokuRepl.executeCommand(command); return handleCliOutput(output); }
  • Zod schema defining input parameters for the pipelines_promote tool: app (required string), to (optional string). Used for validation in tool registration.
    export const pipelinesPromoteOptionsSchema = z.object({ app: z.string().describe('Source app for promotion'), to: z.string().optional().describe('Target apps for promotion (comma-separated)') });
  • Registration function that calls server.tool() to register 'pipelines_promote' with name, description, input schema, and handler function on the MCP server.
    export const registerPipelinesPromoteTool = (server: McpServer, herokuRepl: HerokuREPL): void => { server.tool( 'pipelines_promote', 'Promotes apps between pipeline stages with configurable target applications', pipelinesPromoteOptionsSchema.shape, async (options: PipelinesPromoteOptions): Promise<McpToolResponse> => { const command = new CommandBuilder(TOOL_COMMAND_MAP.PIPELINES_PROMOTE) .addFlags({ app: options.app, to: options.to }) .build(); const output = await herokuRepl.executeCommand(command); return handleCliOutput(output); } ); };
  • src/index.ts:94-94 (registration)
    The call to registerPipelinesPromoteTool during MCP server initialization, passing server and herokuRepl instances.
    pipelines.registerPipelinesPromoteTool(server, herokuRepl);
  • Constant in TOOL_COMMAND_MAP that maps to the Heroku CLI command 'pipelines:promote' used by the handler.
    PIPELINES_PROMOTE: 'pipelines:promote',

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/heroku/heroku-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server