get_app_info
Retrieve detailed Heroku app information, including configuration, dynos, add-ons, buildpacks, collaborators, and domains. Input app name to access status and metadata in text or JSON format.
Instructions
Get comprehensive information about a Heroku application. Use this tool when you need to: 1) View app configuration and settings, 2) Check dyno formation and scaling, 3) List add-ons and buildpacks, 4) View collaborators and access details, 5) Check domains and certificates. Accepts app name and optional JSON format. Returns detailed app status and configuration.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| app | Yes | The name of the Heroku app to get information about. This must be an existing app that you have access to. | |
| json | No | Controls the output format. When true, returns a detailed JSON response containing app metadata such as add-ons, dynos, buildpack configurations, collaborators, and domain information. When false or omitted, returns a simplified text format. |
Implementation Reference
- src/tools/apps.ts:76-86 (handler)Handler function that constructs the Heroku CLI 'apps:info' command with app name and optional json flag, executes it via herokuRepl.executeCommand, and returns processed output using handleCliOutput.async (options: GetAppInfoOptions): Promise<McpToolResponse> => { const command = new CommandBuilder(TOOL_COMMAND_MAP.GET_APP_INFO) .addFlags({ app: options.app, json: options.json }) .build(); const output = await herokuRepl.executeCommand(command); return handleCliOutput(output); }
- src/tools/apps.ts:54-58 (schema)Zod schema for get_app_info tool options: required 'app' string and optional 'json' boolean flag, with descriptions.*/ export const getAppInfoOptionsSchema = z.object({ app: z.string().describe('Target app name. Requires access permissions'), json: z.boolean().optional().describe('JSON output with full metadata. Default: text format') });
- src/tools/apps.ts:71-88 (registration)registerGetAppInfoTool function that registers the 'get_app_info' tool on the MCP server using server.tool with name, description, schema, and inline handler.export const registerGetAppInfoTool = (server: McpServer, herokuRepl: HerokuREPL): void => { server.tool( 'get_app_info', 'Get app details: config, dynos, addons, access, domains', getAppInfoOptionsSchema.shape, async (options: GetAppInfoOptions): Promise<McpToolResponse> => { const command = new CommandBuilder(TOOL_COMMAND_MAP.GET_APP_INFO) .addFlags({ app: options.app, json: options.json }) .build(); const output = await herokuRepl.executeCommand(command); return handleCliOutput(output); } ); };
- src/index.ts:51-51 (registration)Invocation of registerGetAppInfoTool(server, herokuRepl) to register the tool during server setup.apps.registerGetAppInfoTool(server, herokuRepl);
- src/utils/tool-commands.ts:11-11 (helper)TOOL_COMMAND_MAP.GET_APP_INFO constant, mapped to Heroku CLI command 'apps:info'.GET_APP_INFO: 'apps:info',