# Task ID: 91 **Title:** Implement mcpctl describe proxymodel Command **Status:** cancelled **Dependencies:** 78 ✓ **Priority:** medium **Description:** Add CLI command to show detailed information about a specific proxymodel including full stage configuration. **Details:** Create `src/cli/src/commands/describe-proxymodel.ts`: ```typescript import { Command } from 'commander'; import { loadProxyModels } from 'mcplocal/proxymodel/loader'; import { stringify as yamlStringify } from 'yaml'; export function registerDescribeProxymodel(program: Command): void { program .command('describe proxymodel ') .description('Show detailed information about a proxymodel') .action(async (name: string) => { const models = await loadProxyModels(); const model = models.get(name); if (!model) { console.error(`Proxymodel '${name}' not found`); process.exit(1); } console.log(`Name: ${model.metadata.name}`); console.log(`Source: ${isBuiltIn(name) ? 'built-in' : 'local'}`); console.log(`Controller: ${model.spec.controller ?? 'gate'}`); console.log(`Cacheable: ${model.spec.cacheable ? 'yes' : 'no'}`); console.log(`Applies to: ${(model.spec.appliesTo ?? ['prompts', 'toolResults']).join(', ')}`); console.log(''); console.log('Stages:'); for (const stage of model.spec.stages) { console.log(` - ${stage.type}`); if (stage.config) { console.log(` config:`); for (const [k, v] of Object.entries(stage.config)) { console.log(` ${k}: ${JSON.stringify(v)}`); } } } }); } ``` **Test Strategy:** CLI test: `mcpctl describe proxymodel default` shows expected output. Test with proxymodel that has stage configs, verify all fields displayed correctly.