Skip to main content
Glama

deployment_list

List recent deployments for a service in a specific environment to view deployment history and monitor service updates.

Instructions

[API] List recent deployments for a service in a specific environment

⚡️ Best for: ✓ Viewing deployment history ✓ Monitoring service updates

→ Prerequisites: service_list

→ Next steps: deployment_logs, deployment_trigger

→ Related: service_info, service_restart

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
projectIdYesID of the project containing the service
serviceIdYesID of the service to list deployments for
environmentIdYesID of the environment to list deployments from (usually obtained from service_list)
limitNoOptional: Maximum number of deployments to return (default: 10)

Implementation Reference

  • The handler function for the 'deployment_list' tool, which invokes deploymentService.listDeployments with the provided parameters.
    async ({ projectId, serviceId, environmentId, limit = 10 }) => { return deploymentService.listDeployments(projectId, serviceId, environmentId, limit); }
  • Zod input schema defining parameters for the 'deployment_list' tool: projectId, serviceId, environmentId, and optional limit.
    projectId: z.string().describe("ID of the project containing the service"), serviceId: z.string().describe("ID of the service to list deployments for"), environmentId: z.string().describe("ID of the environment to list deployments from (usually obtained from service_list)"), limit: z.number().optional().describe("Optional: Maximum number of deployments to return (default: 10)") },
  • Tool registration using createTool, including name 'deployment_list', formatted description, schema, and handler. Part of the exported deploymentTools array.
    createTool( "deployment_list", formatToolDescription({ type: 'API', description: "List recent deployments for a service in a specific environment", bestFor: [ "Viewing deployment history", "Monitoring service updates" ], relations: { prerequisites: ["service_list"], nextSteps: ["deployment_logs", "deployment_trigger"], related: ["service_info", "service_restart"] } }), { projectId: z.string().describe("ID of the project containing the service"), serviceId: z.string().describe("ID of the service to list deployments for"), environmentId: z.string().describe("ID of the environment to list deployments from (usually obtained from service_list)"), limit: z.number().optional().describe("Optional: Maximum number of deployments to return (default: 10)") }, async ({ projectId, serviceId, environmentId, limit = 10 }) => { return deploymentService.listDeployments(projectId, serviceId, environmentId, limit); } ),
  • DeploymentService.listDeployments method: Fetches deployments via API client, formats with emojis and details, handles empty results and errors.
    async listDeployments(projectId: string, serviceId: string, environmentId: string, limit: number = 5) { try { const deployments = await this.client.deployments.listDeployments({ projectId, serviceId, environmentId, limit }); if (deployments.length === 0) { return createSuccessResponse({ text: "No deployments found for this service.", data: [] }); } const deploymentDetails = deployments.map(deployment => { const status = deployment.status.toLowerCase(); const emoji = status === 'success' ? '✅' : status === 'failed' ? '❌' : '🔄'; return `${emoji} Deployment ${deployment.id} Status: ${deployment.status} Created: ${new Date(deployment.createdAt).toLocaleString()} Service: ${deployment.serviceId} ${deployment.url ? `URL: ${deployment.url}` : ''}`; }); return createSuccessResponse({ text: `Recent deployments:\n\n${deploymentDetails.join('\n\n')}`, data: deployments }); } catch (error) { return createErrorResponse(`Error listing deployments: ${formatError(error)}`); } }
  • Final registration of all tools, including those from deploymentTools (containing deployment_list), to the MCP server via server.tool.
    export function registerAllTools(server: McpServer) { // Collect all tools const allTools = [ ...databaseTools, ...deploymentTools, ...domainTools, ...projectTools, ...serviceTools, ...tcpProxyTools, ...variableTools, ...configTools, ...volumeTools, ...templateTools, ] as Tool[]; // Register each tool with the server allTools.forEach((tool) => { server.tool( ...tool ); }); }

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/epitaphe360/railway-mcp'

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