UNPKG

mcp-codesentry

Version:

CodeSentry MCP - AI-powered code review assistant with 5 specialized review tools for security, best practices, and comprehensive code analysis

47 lines (42 loc) 1.65 kB
# Task ID: 5 # Title: Develop Gemini API Client # Status: pending # Dependencies: 1 # Priority: high # Description: Create a client for interacting with Google Gemini API, supporting both Gemini 1.5 Pro and Flash models. # Details: 1. Implement GeminiClient class: ```typescript class GeminiClient { constructor(config: GeminiConfig) { // Initialize with API key, model selection, etc. } async reviewPlan(context: { taskDescription: string, implementationPlan: string, codebaseContext: string }): Promise<ReviewResponse> { // Send request to Gemini API for plan review // Process and structure the response } async reviewImplementation(context: { taskDescription: string, implementationPlan: string, completionSummary: string, beforeCodebase: string, afterCodebase: string }): Promise<ReviewResponse> { // Send request to Gemini API for implementation review // Process and structure the response } private async callGeminiAPI(prompt: string, model: string): Promise<any> { // Make actual API call to Gemini } } ``` 2. Implement structured prompt engineering for consistent reviews 3. Add support for both Gemini 1.5 Pro and Flash models 4. Implement error handling and retry logic 5. Add rate limiting to respect API quotas # Test Strategy: Test API client with mock responses to verify correct request formatting and response parsing. Test error handling by simulating API failures. Verify rate limiting functionality by sending multiple requests in quick succession.