update-template
Modify an existing RunPod template by updating its name, Docker image, exposed ports, environment variables, or documentation.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| env | No | New environment variables | |
| imageName | No | New Docker image | |
| name | No | New name for the template | |
| ports | No | New ports to expose | |
| readme | No | New README content in markdown format | |
| templateId | Yes | ID of the template to update |
Implementation Reference
- src/index.ts:583-599 (handler)The handler function that executes the update-template tool logic by making a PATCH request to the RunPod API /templates/{templateId} endpoint.async (params) => { const { templateId, ...updateParams } = params; const result = await runpodRequest( `/templates/${templateId}`, 'PATCH', updateParams ); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; }
- src/index.ts:573-582 (schema)The Zod input schema defining parameters for the update-template tool, including templateId (required) and optional fields like name, imageName, etc.templateId: z.string().describe('ID of the template to update'), name: z.string().optional().describe('New name for the template'), imageName: z.string().optional().describe('New Docker image'), ports: z.array(z.string()).optional().describe('New ports to expose'), env: z.record(z.string()).optional().describe('New environment variables'), readme: z .string() .optional() .describe('New README content in markdown format'), },
- src/index.ts:571-600 (registration)The registration of the 'update-template' tool using server.tool(), including schema and handler.'update-template', { templateId: z.string().describe('ID of the template to update'), name: z.string().optional().describe('New name for the template'), imageName: z.string().optional().describe('New Docker image'), ports: z.array(z.string()).optional().describe('New ports to expose'), env: z.record(z.string()).optional().describe('New environment variables'), readme: z .string() .optional() .describe('New README content in markdown format'), }, async (params) => { const { templateId, ...updateParams } = params; const result = await runpodRequest( `/templates/${templateId}`, 'PATCH', updateParams ); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; } );