configure-installation
Configure installation settings for MCP servers, including directory, package manager, and auto-localization options to streamline environment setup.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| installationDir | No | Directory for installing packages | |
| preferredPackageManager | No | Preferred package manager | |
| autoLocalize | No | Automatically localize packages |
Implementation Reference
- src/tools/installation-tools.ts:196-231 (handler)The async handler function for the 'configure-installation' tool. Updates installation configuration (directory, package manager, auto-localize) using configService and returns updated settings.async ({ installationDir, preferredPackageManager, autoLocalize }, extra) => { const config = configService.getInstallationConfig(); const updates = { packageManager: { ...config.packageManager } }; if (installationDir !== undefined) { updates.packageManager.installationDir = installationDir; } if (preferredPackageManager !== undefined) { updates.packageManager.preferredPackageManager = preferredPackageManager; } if (autoLocalize !== undefined) { updates.packageManager.autoLocalize = autoLocalize; } const updatedConfig = await configService.updateInstallationConfig(updates); return { content: [ { type: "text", text: JSON.stringify({ success: true, packageManager: updatedConfig.packageManager }, null, 2) } ] }; } );
- Zod input schema defining optional parameters: installationDir (string), preferredPackageManager (enum: npm/yarn/pnpm), autoLocalize (boolean).{ installationDir: z.string().optional().describe("Directory for installing packages"), preferredPackageManager: z.enum(['npm', 'yarn', 'pnpm']).optional().describe("Preferred package manager"), autoLocalize: z.boolean().optional().describe("Automatically localize packages") },
- src/tools/installation-tools.ts:189-231 (registration)server.tool registration of the 'configure-installation' tool, including name, input schema, and inline handler function within registerInstallationTools.server.tool( "configure-installation", { installationDir: z.string().optional().describe("Directory for installing packages"), preferredPackageManager: z.enum(['npm', 'yarn', 'pnpm']).optional().describe("Preferred package manager"), autoLocalize: z.boolean().optional().describe("Automatically localize packages") }, async ({ installationDir, preferredPackageManager, autoLocalize }, extra) => { const config = configService.getInstallationConfig(); const updates = { packageManager: { ...config.packageManager } }; if (installationDir !== undefined) { updates.packageManager.installationDir = installationDir; } if (preferredPackageManager !== undefined) { updates.packageManager.preferredPackageManager = preferredPackageManager; } if (autoLocalize !== undefined) { updates.packageManager.autoLocalize = autoLocalize; } const updatedConfig = await configService.updateInstallationConfig(updates); return { content: [ { type: "text", text: JSON.stringify({ success: true, packageManager: updatedConfig.packageManager }, null, 2) } ] }; } );