MCP-Gemini

MCP-Gemini

Sistema de gestión de prompts para Google Gemini Pro.

Estado Actual

Implementado

  • ✅ Estructura base del proyecto
  • ✅ Configuración de Docker y Docker Compose
  • ✅ Sistema de logs estandarizado
  • ✅ Sistema de métricas con filtros de seguridad
  • ✅ Pruebas unitarias para:
    • ✅ GeminiClient
    • ✅ FileSystemService
    • ✅ SearchService
    • ✅ CacheService
    • ✅ Sistema de logs
    • ✅ Sistema de métricas
  • ✅ Servicios principales:
    • ✅ Sistema de caché
    • ✅ Sistema de búsqueda
    • ✅ Sistema de archivos
    • ✅ Sistema de logs
    • ✅ Sistema de filtros de seguridad
    • ✅ Sistema de métricas

En Progreso

  • 🔄 Integración con API de Gemini
  • 🔄 Sistema de gestión de prompts
  • 🔄 Interfaz de usuario

Pendiente

  • ⏳ Sistema de autenticación
  • ⏳ Sistema de monitoreo en tiempo real
  • ⏳ Documentación completa
  • ⏳ Pruebas de integración
  • ⏳ Pruebas de rendimiento
  • ⏳ Despliegue en producción

Requisitos

  • Python 3.10+
  • Docker y Docker Compose
  • API Key de Google Gemini

Instalación

  1. Clonar el repositorio:
git clone https://github.com/tu-usuario/mcp-gemini.git cd mcp-gemini
  1. Configurar variables de entorno:
cp .env.example .env # Editar .env con tus credenciales
  1. Instalar dependencias:
pip install -r requirements.txt
  1. Ejecutar con Docker:
docker-compose up -d

Estructura del Proyecto

mcp-gemini/ ├── app/ │ ├── api/ │ ├── core/ │ │ ├── config/ │ │ ├── logging/ │ │ └── security/ │ ├── models/ │ ├── services/ │ └── utils/ ├── data/ │ ├── prompts/ │ ├── cache/ │ └── metrics/ ├── docs/ ├── logs/ │ ├── app/ │ ├── access/ │ ├── error/ │ └── safety/ ├── tests/ │ ├── unit/ │ ├── integration/ │ └── e2e/ ├── .env.example ├── docker-compose.yml ├── Dockerfile └── requirements.txt

Uso

from app.services.gemini_client import GeminiClient client = GeminiClient(api_key="tu-api-key") response = client.generate("Tu prompt aquí") print(response)

Pruebas

# Ejecutar todas las pruebas pytest # Ejecutar pruebas unitarias pytest tests/unit # Ejecutar pruebas de integración pytest tests/integration # Ejecutar pruebas e2e pytest tests/e2e

Contribución

  1. Fork el repositorio
  2. Crear una rama para tu feature (git checkout -b feature/amazing-feature)
  3. Commit tus cambios (git commit -m 'Add some amazing feature')
  4. Push a la rama (git push origin feature/amazing-feature)
  5. Abrir un Pull Request

Licencia

Este proyecto está licenciado bajo la Licencia MIT - ver el archivo LICENSE para más detalles.

Características Implementadas

  • Sistema de logging con rotación de archivos
  • Sistema de métricas y monitoreo
  • Filtros de seguridad para contenido dañino
  • Procesamiento asíncrono de solicitudes
  • Pruebas unitarias para servicios principales

En Desarrollo

  • Integración con API de Gemini
  • Sistema de gestión de prompts
  • Interfaz de usuario

Tareas Pendientes

  • Sistema de monitoreo en tiempo real
  • Sistema de autenticación y autorización
  • Pruebas de rendimiento y optimización
  • Documentación de API

Estructura del Proyecto

mcp-gemini/ ├── app/ │ ├── api/ # Endpoints de la API │ ├── core/ # Funcionalidad central │ │ ├── logging/ # Sistema de logging │ │ └── config/ # Configuración │ ├── services/ # Servicios de la aplicación │ │ ├── metrics.py # Servicio de métricas │ │ └── async_processor.py # Procesamiento asíncrono │ └── utils/ # Utilidades ├── data/ │ ├── metrics/ # Datos de métricas │ └── cache/ # Caché de respuestas ├── logs/ # Archivos de log │ ├── app/ │ ├── access/ │ └── error/ ├── tests/ # Pruebas │ ├── unit/ │ └── integration/ ├── requirements.txt # Dependencias └── README.md
-
security - not tested
-
license - not tested
-
quality - not tested

A prompt management system for Google Gemini Pro that includes caching, security filtering, logging, and metrics collection.

  1. Estado Actual
    1. Implementado
    2. En Progreso
    3. Pendiente
  2. Requisitos
    1. Instalación
      1. Estructura del Proyecto
        1. Uso
          1. Pruebas
            1. Contribución
              1. Licencia
                1. Características Implementadas
                  1. En Desarrollo
                    1. Tareas Pendientes
                      1. Estructura del Proyecto
                        ID: ig4cmtoj8w