liara_delete_env_var
Remove environment variables from applications on the Liara cloud platform to manage configuration settings.
Instructions
Delete/unset an environment variable for an app
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| appName | Yes | The name of the app | |
| key | Yes | Variable name to delete |
Implementation Reference
- src/services/environment.ts:118-124 (handler)The core handler function that deletes a single environment variable for a Liara app by wrapping deleteEnvVars.export async function deleteEnvVar( client: LiaraClient, appName: string, key: string ): Promise<{ message: string }> { return await deleteEnvVars(client, appName, [key]); }
- src/services/environment.ts:88-113 (helper)Supporting function that implements the deletion logic by fetching current env vars, filtering out the specified keys, and updating via API.export async function deleteEnvVars( client: LiaraClient, appName: string, keys: string[] ): Promise<{ message: string }> { validateAppName(appName); validateRequired(keys, 'Environment variable keys'); if (keys.length === 0) { throw new Error('At least one environment variable key is required'); } // Get current env vars const currentVars = await getEnvVars(client, appName); // Filter out the keys to delete const updatedVars = currentVars.filter(v => !keys.includes(v.key)); // Update with remaining vars const request: UpdateEnvsRequest = { project: appName, variables: updatedVars, }; return await client.post<{ message: string }>('/v1/projects/update-envs', request); }
- src/services/environment.ts:48-83 (helper)Helper function to retrieve all current environment variables for an app, used in deletion to preserve others.export async function getEnvVars( client: LiaraClient, appName: string ): Promise<EnvironmentVariable[]> { validateAppName(appName); try { const project = await client.get<{ envs?: Array<{ key?: string; name?: string; value?: string }>; envVars?: Array<{ key?: string; name?: string; value?: string }>; project?: { envs?: Array<{ key?: string; name?: string; value?: string }> }; }>(`/v1/projects/${appName}`); // API returns 'envs' array in project object const envs = project.envs || project.envVars || project.project?.envs || []; // Map to EnvironmentVariable format (extract key and value) return envs.map((env) => ({ key: env.key || env.name || '', value: env.value || '', })); } catch (error: unknown) { const err = error as { statusCode?: number }; if (err.statusCode === 404) { const { LiaraMcpError } = await import('../utils/errors.js'); throw new LiaraMcpError( `App "${appName}" not found`, 'APP_NOT_FOUND', { appName }, [ 'Check if the app name is correct', 'Use liara_list_apps to see all available apps', 'Verify you have access to this app' ] ); } throw error; } }
- src/api/types.ts:109-112 (schema)Type definition for environment variables used in API requests and responses.export interface EnvironmentVariable { key: string; value: string; }