Skip to main content
Glama

start-pod

Start a RunPod cloud GPU pod to run AI workloads by providing its pod ID. This tool initiates computing resources for machine learning tasks.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
podIdYesID of the pod to start

Implementation Reference

  • The handler function for the 'start-pod' tool. It takes a podId parameter and makes a POST request to the RunPod API endpoint `/pods/{podId}/start` using the shared runpodRequest helper, then returns the JSON response as text content.
    async (params) => { const result = await runpodRequest(`/pods/${params.podId}/start`, 'POST'); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; }
  • The input schema for the 'start-pod' tool, defining a required 'podId' string parameter.
    { podId: z.string().describe('ID of the pod to start'), },
  • src/index.ts:258-275 (registration)
    The registration of the 'start-pod' tool using server.tool(), including name, input schema, and inline handler function.
    server.tool( 'start-pod', { podId: z.string().describe('ID of the pod to start'), }, async (params) => { const result = await runpodRequest(`/pods/${params.podId}/start`, 'POST'); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; } );
  • Shared helper function used by 'start-pod' (and other tools) to make authenticated HTTP requests to the RunPod API, handling JSON responses and errors.
    async function runpodRequest( endpoint: string, method: string = 'GET', body?: Record<string, unknown> ) { const url = `${API_BASE_URL}${endpoint}`; const headers = { Authorization: `Bearer ${API_KEY}`, 'Content-Type': 'application/json', }; const options: NodeFetchRequestInit = { method, headers, }; if (body && (method === 'POST' || method === 'PATCH')) { options.body = JSON.stringify(body); } try { const response = await fetch(url, options); if (!response.ok) { const errorText = await response.text(); throw new Error(`RunPod API Error: ${response.status} - ${errorText}`); } // Some endpoints might not return JSON const contentType = response.headers.get('content-type'); if (contentType && contentType.includes('application/json')) { return await response.json(); } return { success: true, status: response.status }; } catch (error) { console.error('Error calling RunPod API:', error); throw error; } }

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/runpod/runpod-mcp-ts'

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