search_bugs_by_product_id
Find Cisco product bugs using a specific product ID like C9200-24P. Filter results by status, severity, and modification date to identify relevant issues.
Instructions
Search bugs by specific base product ID (e.g., C9200-24P). Use when you have an exact Cisco product ID. For general product searches by name, consider using keyword search instead.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| base_pid | Yes | Base product ID | |
| page_index | No | Page number (10 results per page) | |
| status | No | Bug status filter. IMPORTANT: Only ONE status allowed per search. Values: O=Open, F=Fixed, T=Terminated. Do NOT use comma-separated values like "O,F". | |
| severity | No | Bug severity filter. Returns bugs with ONLY the specified severity level. Values: 1=Severity 1 (highest), 2=Severity 2, 3=Severity 3, 4=Severity 4, 5=Severity 5, 6=Severity 6 (lowest). For "severity 3 or higher" bugs, use multi_severity_search tool which handles multiple separate API calls. | |
| modified_date | No | Last modified date filter. Values: 1=Last Week, 2=Last 30 Days, 3=Last 6 Months, 4=Last Year, 5=All. Default: 5 (All) | 5 |
| sort_by | No | Sort order for results. Default: modified_date (recent first) |
Implementation Reference
- src/apis/bug-api.ts:192-230 (schema)Tool schema definition including inputSchema with base_pid required parameter and optional filters like status, severity, page_index{ name: 'search_bugs_by_product_id', description: 'Search bugs by specific base product ID (e.g., C9200-24P). Use when you have an exact Cisco product ID. For general product searches by name, consider using keyword search instead.', inputSchema: { type: 'object', properties: { base_pid: { type: 'string', description: 'Base product ID' }, page_index: { type: 'integer', default: 1, description: 'Page number (10 results per page)' }, status: { type: 'string', description: 'Bug status filter. IMPORTANT: Only ONE status allowed per search. Values: O=Open, F=Fixed, T=Terminated. Do NOT use comma-separated values like "O,F".', enum: ['O', 'F', 'T'] }, severity: { type: 'string', description: 'Bug severity filter. Returns bugs with ONLY the specified severity level. Values: 1=Severity 1 (highest), 2=Severity 2, 3=Severity 3, 4=Severity 4, 5=Severity 5, 6=Severity 6 (lowest). For "severity 3 or higher" bugs, use multi_severity_search tool which handles multiple separate API calls.', enum: ['1', '2', '3', '4', '5', '6'] }, modified_date: { type: 'string', description: 'Last modified date filter. Values: 1=Last Week, 2=Last 30 Days, 3=Last 6 Months, 4=Last Year, 5=All. Default: 5 (All)', enum: ['1', '2', '3', '4', '5'], default: '5' }, sort_by: { type: 'string', description: 'Sort order for results. Default: modified_date (recent first)', enum: ['status', 'modified_date', 'severity', 'support_case_count', 'modified_date_earliest'] }, }, required: ['base_pid'] }
- src/apis/bug-api.ts:664-668 (handler)Handler in executeTool method: encodes the base_pid parameter and constructs the Cisco Bug API endpoint `/bugs/products/product_id/{base_pid}`, then calls makeApiCall from base classcase 'search_bugs_by_product_id': // Ensure forward slashes are properly encoded for product IDs like ISR4431-V/K9 const encodedBasePid = encodeURIComponent(processedArgs.base_pid).replace(/\//g, '%2F'); endpoint = `/bugs/products/product_id/${encodedBasePid}`; break;
- src/apis/index.ts:101-112 (registration)Registration of BugApi instance in ApiRegistry's apis map, making its tools (including search_bugs_by_product_id) available via getAvailableTools()// Initialize implemented APIs this.apis.set('bug', new BugApi()); this.apis.set('case', new CaseApi()); this.apis.set('eox', new EoxApi()); this.apis.set('psirt', new PsirtApi()); this.apis.set('product', new ProductApi()); this.apis.set('software', new SoftwareApi()); this.apis.set('serial', new SerialApi()); this.apis.set('rma', new RmaApi()); this.apis.set('enhanced_analysis', new EnhancedAnalysisApi()); this.apis.set('smart_bonding', new SmartBondingApi() as any); // Cast needed due to different base class }
- src/apis/enhanced-analysis-api.ts:37-44 (registration)Listed as internal tool in EnhancedAnalysisApi (extends BugApi), allowing internal use by enhanced analysis tools despite not being exposed publicly'search_bugs_by_keyword', 'search_bugs_by_product_id', 'search_bugs_by_product_and_release', 'search_bugs_by_product_series_affected', 'search_bugs_by_product_series_fixed', 'search_bugs_by_product_name_affected', 'search_bugs_by_product_name_fixed' ];
- src/utils/formatting.ts:385-386 (helper)Helper in formatSearchContext function to include product ID in formatted search context for bug search results} else if (searchContext.toolName === 'search_bugs_by_product_id' && searchContext.args.base_pid) { formatted += `**Product ID:** ${searchContext.args.base_pid}\n\n`;