search_feedback
Search for feedback across projects using text queries, filter by category, and limit results to analyze bug reports, feature requests, and reviews.
Instructions
Search for feedback across all accessible projects using text search
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query to find in feedback content | |
| projectId | No | Limit search to specific project | |
| category | No | Filter search results by category | |
| limit | No | Maximum number of results (default: 10) |
Implementation Reference
- src/index.ts:203-223 (handler)MCP server handler for the 'search_feedback' tool: validates input arguments, constructs search options, and delegates execution to the client.searchFeedback method.case 'search_feedback': if (!args || typeof args !== 'object' || !('query' in args) || typeof args.query !== 'string') { throw new Error('Search query is required'); } const searchOptions: { projectId?: string; category?: 'BUG' | 'FEATURE' | 'REVIEW'; limit?: number; } = {}; if (typeof args.projectId === 'string') { searchOptions.projectId = args.projectId; } if (typeof args.category === 'string' && ['BUG', 'FEATURE', 'REVIEW'].includes(args.category)) { searchOptions.category = args.category as 'BUG' | 'FEATURE' | 'REVIEW'; } if (typeof args.limit === 'number') { searchOptions.limit = args.limit; } return await client.searchFeedback(args.query, searchOptions);
- src/index.ts:154-183 (schema)Defines the tool name, description, and input schema for 'search_feedback' returned by the ListTools handler.{ name: 'search_feedback', description: 'Search for feedback across all accessible projects using text search', inputSchema: { type: 'object', properties: { query: { type: 'string', description: 'Search query to find in feedback content', }, projectId: { type: 'string', description: 'Limit search to specific project', }, category: { type: 'string', enum: ['BUG', 'FEATURE', 'REVIEW'], description: 'Filter search results by category', }, limit: { type: 'number', description: 'Maximum number of results (default: 10)', minimum: 1, maximum: 50, }, }, required: ['query'], additionalProperties: false, }, },
- src/client.ts:217-228 (helper)FeedbackBasketClient method that implements the search_feedback tool logic by mapping parameters to a call to the shared getFeedback method with the search query.async searchFeedback(query: string, options: { projectId?: string; category?: 'BUG' | 'FEATURE' | 'REVIEW'; limit?: number; } = {}): Promise<{ content: Array<{ type: string; text: string }> }> { return this.getFeedback({ search: query, limit: options.limit || 10, ...(options.projectId && { projectId: options.projectId }), ...(options.category && { category: options.category }), }); }