Skip to main content
Glama
devlimelabs

MCP Environment & Installation Manager

by devlimelabs

get-env-var

Retrieve environment variable values from specific profiles in the MCP Environment & Installation Manager for configuration management.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
profileIdYesProfile ID to get environment variable from
keyYesEnvironment variable key

Implementation Reference

  • Handler function that implements the logic for the 'get-env-var' tool: validates profileId and key, retrieves the profile and environment variable using ConfigService, handles errors, masks sensitive values, and returns a structured text response.
    async ({ profileId, key }, extra) => { if (!profileId.trim()) { throw new Error("Profile ID cannot be empty"); } if (!key.trim()) { throw new Error("Environment variable key cannot be empty"); } const profile = configService.getProfile(profileId); if (!profile) { throw new Error(`Profile not found: ${profileId}`); } const envVar = configService.getEnvVar(profileId, key); if (!envVar) { throw new Error(`Environment variable not found: ${key}`); } return { content: [ { type: "text", text: JSON.stringify({ profileId, profileName: profile.name, key, value: envVar.sensitive ? '********' : envVar.value, sensitive: envVar.sensitive, description: envVar.description }, null, 2) } ] }; }
  • Zod input schema for the 'get-env-var' tool, defining required parameters profileId (string) and key (string) with descriptions.
    { profileId: z.string().describe("Profile ID to get environment variable from"), key: z.string().describe("Environment variable key") },
  • Direct registration of the 'get-env-var' tool using server.tool(), specifying the tool name, input schema, and handler function within the registerEnvironmentTools function.
    server.tool( "get-env-var", { profileId: z.string().describe("Profile ID to get environment variable from"), key: z.string().describe("Environment variable key") }, async ({ profileId, key }, extra) => { if (!profileId.trim()) { throw new Error("Profile ID cannot be empty"); } if (!key.trim()) { throw new Error("Environment variable key cannot be empty"); } const profile = configService.getProfile(profileId); if (!profile) { throw new Error(`Profile not found: ${profileId}`); } const envVar = configService.getEnvVar(profileId, key); if (!envVar) { throw new Error(`Environment variable not found: ${key}`); } return { content: [ { type: "text", text: JSON.stringify({ profileId, profileName: profile.name, key, value: envVar.sensitive ? '********' : envVar.value, sensitive: envVar.sensitive, description: envVar.description }, null, 2) } ] }; } );
  • src/server.ts:31-31 (registration)
    High-level registration call to registerEnvironmentTools in the main server initialization, which includes the 'get-env-var' tool among environment management tools.
    registerEnvironmentTools(server, configService);

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/devlimelabs/mcp-env-manager-mcp'

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