GCP MCP Server
Accede y gestiona los servicios y recursos de Google Cloud Platform (GCP).
Documentación
Esto no es un servidor MCP listo
Servidor MCP de GCP
Una implementación integral de servidor de Protocolo de Contexto de Modelo (MCP) para los servicios de Google Cloud Platform (GCP), que permite a los asistentes de IA interactuar y gestionar recursos de GCP a través de una interfaz estandarizada.
Descripción general
El servidor MCP de GCP proporciona a los asistentes de IA capacidades para:
- Consultar recursos de GCP: Obtener información sobre tu infraestructura en la nube
- Gestionar recursos en la nube: Crear, configurar y gestionar servicios de GCP
- Recibir asistencia: Obtener ayuda guiada por IA con configuraciones de GCP y mejores prácticas
La implementación sigue la especificación MCP para permitir que los sistemas de IA interactúen con los servicios de GCP de manera segura y controlada.
Servicios de GCP compatibles
Esta implementación incluye soporte para los siguientes servicios de GCP:
- Artifact Registry: Gestión de contenedores y paquetes
- BigQuery: Almacenamiento de datos y análisis
- Cloud Audit Logs: Registro de auditoría y análisis de rastros
- Cloud Build: Gestión de canalizaciones de CI/CD
- Cloud Compute Engine: Instancias de máquinas virtuales
- Cloud Monitoring: Métricas, alertas y paneles de control
- Cloud Run: Implementaciones de contenedores sin servidor
- Cloud Storage: Gestión de almacenamiento de objetos
Arquitectura
El proyecto está estructurado de la siguiente manera:
gcp-mcp-server/
├── core/ # Core MCP server functionality auth context logging_handler security
├── prompts/ # AI assistant prompts for GCP operations
├── services/ # GCP service implementations
│ ├── README.md # Service implementation details
│ └── ... # Individual service modules
├── main.py # Main server entry point
└── ...
Componentes clave:
- Módulos de servicio: Cada servicio de GCP tiene su propio módulo con recursos, herramientas y avisos
- Instancias de cliente: Gestión centralizada de clientes para autenticación y acceso a recursos
- Componentes principales: Funcionalidad base para la implementación del servidor MCP
Primeros pasos
Requisitos previos
- Python 3.10+
- Proyecto de GCP con APIs habilitadas para los servicios que deseas usar
- Credenciales de GCP autenticadas (se recomiendan Credenciales de Aplicación Predeterminadas)
Instalación
-
Clona el repositorio:
git clone https://github.com/yourusername/gcp-mcp-server.git cd gcp-mcp-server -
Configura un entorno virtual:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate -
Instala las dependencias:
pip install -r requirements.txt -
Configura tus credenciales de GCP:
# Using gcloud gcloud auth application-default login # Or set GOOGLE_APPLICATION_CREDENTIALS export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account-key.json" -
Configura las variables de entorno:
cp .env.example .env # Edit .env with your configuration
Ejecutar el servidor
Inicia el servidor MCP:
python main.py
Para desarrollo y pruebas:
# Development mode with auto-reload
python main.py --dev
# Run with specific configuration
python main.py --config config.yaml
Implementación con Docker
Compila y ejecuta con Docker:
# Build the image
docker build -t gcp-mcp-server .
# Run the container
docker run -p 8080:8080 -v ~/.config/gcloud:/root/.config/gcloud gcp-mcp-server
Configuración
El servidor se puede configurar mediante variables de entorno o un archivo de configuración:
| Variable de entorno | Descripción | Predeterminado |
|---|---|---|
GCP_PROJECT_ID | ID de proyecto de GCP predeterminado | Ninguno (requerido) |
GCP_DEFAULT_LOCATION | Región/zona predeterminada | us-central1 |
MCP_SERVER_PORT | Puerto del servidor | 8080 |
LOG_LEVEL | Nivel de registro | INFO |
Consulta .env.example para obtener una lista completa de opciones de configuración.
Desarrollo
Agregar un nuevo servicio de GCP
- Crea un nuevo archivo en el directorio
services/ - Implementa el servicio siguiendo el patrón de los servicios existentes
- Registra el servicio en
main.py
Consulta el README de servicios para obtener orientación detallada de implementación.
Consideraciones de seguridad
- El servidor utiliza Credenciales de Aplicación Predeterminadas para la autenticación
- La autorización está determinada por los permisos de la identidad autenticada
- No se codifican credenciales en las implementaciones de servicios
- Considera ejecutar con una cuenta de servicio con permisos apropiados
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar una Solicitud de Extracción.
- Haz un fork del repositorio
- Crea tu rama de características (
git checkout -b feature/amazing-feature) - Realiza tus cambios (
git commit -m 'Add some amazing feature') - Envía a la rama (
git push origin feature/amazing-feature) - Abre una Solicitud de Extracción
Licencia
Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENCIA para obtener más detalles.
Agradecimientos
- Al equipo de Google Cloud Platform por sus completas APIs
- Al Protocolo de Contexto de Modelo por proporcionar una forma estandarizada para que la IA interactúe con servicios
Usar el servidor
Para usar este servidor:
- Coloca tu archivo de clave de cuenta de servicio de GCP como
service-account.jsonen el mismo directorio - Instala el paquete MCP:
pip install "mcp[cli]" - Instala el paquete de GCP requerido:
pip install google-cloud-run - Ejecuta:
mcp dev gcp_cloudrun_server.py
O instálalo en Claude Desktop:
mcp install gcp_cloudrun_server.py --name "GCP Cloud Run Manager"
Configuración del servidor MCP
La siguiente configuración se puede agregar a tu archivo de configuración para las Herramientas de GCP Cloud:
"mcpServers": {
"GCP Cloud Tools": {
"command": "uv",
"args": [
"run",
"--with",
"google-cloud-artifact-registry>=1.10.0",
"--with",
"google-cloud-bigquery>=3.27.0",
"--with",
"google-cloud-build>=3.0.0",
"--with",
"google-cloud-compute>=1.0.0",
"--with",
"google-cloud-logging>=3.5.0",
"--with",
"google-cloud-monitoring>=2.0.0",
"--with",
"google-cloud-run>=0.9.0",
"--with",
"google-cloud-storage>=2.10.0",
"--with",
"mcp[cli]",
"--with",
"python-dotenv>=1.0.0",
"mcp",
"run",
"C:\\Users\\enes_\\Desktop\\mcp-repo-final\\gcp-mcp\\src\\gcp-mcp-server\\main.py"
],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "C:/Users/enes_/Desktop/mcp-repo-final/gcp-mcp/service-account.json",
"GCP_PROJECT_ID": "gcp-mcp-cloud-project",
"GCP_LOCATION": "us-east1"
}
}
}
Detalles de configuración
Esta configuración configura un servidor MCP para las herramientas de Google Cloud Platform con lo siguiente:
- Comando: Utiliza el administrador de paquetes
uvpara ejecutar el servidor - Dependencias: Incluye varias bibliotecas de Google Cloud (Artifact Registry, BigQuery, Cloud Build, etc.)
- Variables de entorno:
GOOGLE_APPLICATION_CREDENTIALS: Ruta a tus credenciales de cuenta de servicio de GCPGCP_PROJECT_ID: Tu ID de proyecto de Google CloudGCP_LOCATION: Región de GCP (us-east1)
Uso
Agrega esta configuración a tu archivo de configuración de MCP para habilitar la funcionalidad de las Herramientas de GCP Cloud.