GCP MCP Server
Acesse e gerencie serviços e recursos do Google Cloud Platform (GCP).
Documentação
Este não é um servidor MCP pronto
GCP MCP Server
Uma implementação abrangente de servidor Model Context Protocol (MCP) para serviços do Google Cloud Platform (GCP), permitindo que assistentes de IA interajam e gerenciem recursos do GCP por meio de uma interface padronizada.
Visão Geral
O GCP MCP Server fornece aos assistentes de IA capacidades para:
- Consultar Recursos do GCP: Obter informações sobre sua infraestrutura em nuvem
- Gerenciar Recursos em Nuvem: Criar, configurar e gerenciar serviços do GCP
- Receber Assistência: Obter ajuda guiada por IA com configurações do GCP e melhores práticas
A implementação segue a especificação MCP para permitir que sistemas de IA interajam com os serviços do GCP de maneira segura e controlada.
Serviços GCP Suportados
Esta implementação inclui suporte para os seguintes serviços do GCP:
- Artifact Registry: Gerenciamento de contêineres e pacotes
- BigQuery: Data warehouse e análises
- Cloud Audit Logs: Registros e análise de trilha de auditoria
- Cloud Build: Gerenciamento de pipelines de CI/CD
- Cloud Compute Engine: Instâncias de máquinas virtuais
- Cloud Monitoring: Métricas, alertas e painéis
- Cloud Run: Implantações de contêineres sem servidor
- Cloud Storage: Gerenciamento de armazenamento de objetos
Arquitetura
O projeto está estruturado da seguinte forma:
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 principais:
- Módulos de Serviço: Cada serviço do GCP possui seu próprio módulo com recursos, ferramentas e prompts
- Instâncias de Cliente: Gerenciamento centralizado de clientes para autenticação e acesso a recursos
- Componentes Principais: Funcionalidade base para a implementação do servidor MCP
Começando
Pré-requisitos
- Python 3.10+
- Projeto GCP com APIs habilitadas para os serviços que você deseja usar
- Credenciais GCP autenticadas (Application Default Credentials recomendado)
Instalação
-
Clone o repositório:
git clone https://github.com/yourusername/gcp-mcp-server.git cd gcp-mcp-server -
Configure um ambiente virtual:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate -
Instale as dependências:
pip install -r requirements.txt -
Configure suas credenciais do GCP:
# Using gcloud gcloud auth application-default login # Or set GOOGLE_APPLICATION_CREDENTIALS export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account-key.json" -
Configure as variáveis de ambiente:
cp .env.example .env # Edit .env with your configuration
Executando o Servidor
Inicie o servidor MCP:
python main.py
Para desenvolvimento e testes:
# Development mode with auto-reload
python main.py --dev
# Run with specific configuration
python main.py --config config.yaml
Implantação com Docker
Compile e execute com 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
Configuração
O servidor pode ser configurado por meio de variáveis de ambiente ou de um arquivo de configuração:
| Variável de Ambiente | Descrição | Padrão |
|---|---|---|
GCP_PROJECT_ID | ID do projeto GCP padrão | Nenhum (obrigatório) |
GCP_DEFAULT_LOCATION | Região/zona padrão | us-central1 |
MCP_SERVER_PORT | Porta do servidor | 8080 |
LOG_LEVEL | Nível de registro | INFO |
Consulte .env.example para obter uma lista completa de opções de configuração.
Desenvolvimento
Adicionando um Novo Serviço GCP
- Crie um novo arquivo no diretório
services/ - Implemente o serviço seguindo o padrão dos serviços existentes
- Registre o serviço em
main.py
Consulte o README dos serviços para obter orientações detalhadas de implementação.
Considerações de Segurança
- O servidor usa Application Default Credentials para autenticação
- A autorização é determinada pelas permissões da identidade autenticada
- Nenhuma credencial é codificada nas implementações de serviço
- Considere executar com uma conta de serviço com permissões apropriadas
Contribuindo
Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.
- Faça um fork do repositório
- Crie sua branch de funcionalidade (
git checkout -b feature/amazing-feature) - Faça commit das suas alterações (
git commit -m 'Add some amazing feature') - Envie para a branch (
git push origin feature/amazing-feature) - Abra um Pull Request
Licença
Este projeto está licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.
Agradecimentos
- Equipe do Google Cloud Platform por suas APIs abrangentes
- Model Context Protocol por fornecer uma maneira padronizada para a IA interagir com serviços
Usando o Servidor
Para usar este servidor:
- Coloque seu arquivo de chave da conta de serviço do GCP como
service-account.jsonno mesmo diretório - Instale o pacote MCP:
pip install "mcp[cli]" - Instale o pacote GCP necessário:
pip install google-cloud-run - Execute:
mcp dev gcp_cloudrun_server.py
Ou instale-o no Claude Desktop:
mcp install gcp_cloudrun_server.py --name "GCP Cloud Run Manager"
Configuração do Servidor MCP
A seguinte configuração pode ser adicionada ao seu arquivo de configuração para o GCP Cloud Tools:
"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"
}
}
}
Detalhes da Configuração
Esta configuração configura um servidor MCP para ferramentas do Google Cloud Platform com o seguinte:
- Comando: Usa o gerenciador de pacotes
uvpara executar o servidor - Dependências: Inclui várias bibliotecas do Google Cloud (Artifact Registry, BigQuery, Cloud Build, etc.)
- Variáveis de Ambiente:
GOOGLE_APPLICATION_CREDENTIALS: Caminho para suas credenciais da conta de serviço do GCPGCP_PROJECT_ID: ID do seu projeto do Google CloudGCP_LOCATION: Região do GCP (us-east1)
Uso
Adicione esta configuração ao seu arquivo de configuração MCP para habilitar a funcionalidade do GCP Cloud Tools.