Cyclops MCP

Gerencie aplicações Kubernetes com segurança criando e atualizando Módulos Cyclops para agentes de IA.

Documentação

Cyclops MCP (Model Context Protocol)

O Cyclops MCP permite que seu agente de IA favorito gerencie suas aplicações Kubernetes. Os servidores Cyclops MCP fornecem ferramentas para que agentes criem e atualizem aplicações existentes com segurança.

https://github.com/user-attachments/assets/0c675c33-1e36-4fdb-bf8c-2fd7fb491e6b

Isso significa que ele pode verificar todos os seus templates existentes e o schema desses templates para criar aplicações precisas e prontas para produção. Seu agente agora tem muito menos espaço para cometer erros de configuração, pois cria recursos de alto nível (Módulos Cyclops) em vez de modificar cada linha dos seus recursos Kubernetes (Deployments, Services e Ingresses).

Ele permite que você avance rapidamente e garanta que nenhuma configuração incorreta não detectada chegue à sua produção.

Com o Cyclops e nosso MCP, você agora pode abstrair a complexidade do Kubernetes de seus desenvolvedores E de seus agentes de IA

Instalar via UI

A maneira mais fácil de instalar o servidor Cyclops MCP é através da UI do Cyclops. Abaixo estão as instruções de como instalá-lo via binário e kubectl, mas a forma recomendada de instalação é através da UI.

⚠️ Para instalar o Cyclops MCP através da UI, você deve executar o Cyclops em uma versão v0.20.1 ou superior

  1. Instale o Cyclops MCP indo à barra lateral “Addon” > "MCP server". Agora você pode clicar em "Install Cyclops MCP server" e seu servidor Cyclops MCP estará funcionando em poucos segundos.
addon-install
  1. Agora que seu servidor MCP está em funcionamento, tudo o que falta é expô-lo fora do seu cluster e conectar seu agente de IA a ele.

    Para expor o servidor MCP em localhost, você pode simplesmente fazer um port-forward com o seguinte comando:

    kubectl port-forward -n cyclops svc/cyclops-mcp 8000:8000
    

    Seu servidor agora está disponível em localhost:8000.

  2. Para conectá-lo a um agente de IA, você só precisa fornecer o servidor Cyclops MCP na configuração dele. Por exemplo, para adicioná-lo ao Cursor, você pode simplesmente adicioná-lo com o seguinte JSON:

    {
      "mcpServers": {
        "cyclops-kubernetes": {
          "url": "http://localhost:8000/sse"
        }
      }
    }
    

Você agora pode iniciar uma nova conversa com seu companheiro de IA. Acima está um exemplo de como o usamos com o Cursor.

Instalar binário stdin

1. Certifique-se de que o Cyclops esteja instalado no seu cluster Kubernetes

Consulte nossa documentação sobre como instalá-lo com um único comando - https://cyclops-ui.com/docs/installation/install/manifest

2. Baixar o servidor MCP

Você pode baixar o binário do servidor Cyclops MCP com o seguinte comando:

GOBIN="$HOME/go/bin" go install github.com/cyclops-ui/mcp-cyclops/cmd/mcp-cyclops@latest

3. Adicionar configuração do servidor

⚠️ Por padrão, o Cyclops MCP usará o arquivo .kube/config para conectar-se ao seu cluster

Configure seu servidor MCP Cyclops:

{
  "mcpServers": {
    "mcp-cyclops": {
      "command": "mcp-cyclops"
    }
  }
}

Configuração

Você pode configurar o servidor Cyclops MCP via variáveis de ambiente. Abaixo está um exemplo de adição da configuração para especificar o arquivo kubeconfig que o servidor Cyclops MCP deve usar ao gerenciar suas aplicações Cyclops.

{
  "mcpServers": {
    "mcp-cyclops": {
      "command": "mcp-cyclops",
      "env": {
        "KUBECONFIG": "/path/to/your/kubeconfig"
      }
    }
  }
}

Variáveis de ambiente

Abaixo está a lista de variáveis de ambiente usadas para configurar seu servidor Cyclops MCP:

Env varDescription
KUBECONFIGCaminho para o arquivo kubeconfig (opcional, padrão: configuração in-cluster ou $HOME/.kube/config)
CYCLOPS_KUBE_CONTEXTContexto do Kubernetes a ser usado (opcional)
CYCLOPS_MODULE_NAMESPACENamespace onde os módulos são armazenados
CYCLOPS_HELM_RELEASE_NAMESPACENamespace para releases Helm
CYCLOPS_MODULE_TARGET_NAMESPACENamespace de destino para módulos

Instalar em um cluster Kubernetes manualmente

Em vez de cada desenvolvedor instalar o binário mcp-cyclops, você pode instalar o servidor Cyclops MCP com SSE como tipo de transporte no seu cluster Kubernetes e permitir que todos os seus desenvolvedores se conectem ao mesmo servidor.

  1. Antes de instalar, certifique-se de que o Cyclops e todos os seus CRDs estejam instalados no seu cluster:

    1. Verifique se os pods do Cyclops estão em execução:

      kubectl get pods -n cyclops
      

      Deve exibir:

      NAME                            READY   STATUS    RESTARTS   AGE
      cyclops-ctrl-676b5d9789-ntcls   1/1     Running   0          94s
      cyclops-ui-7798655f97-xdg29     1/1     Running   0          94s
      
    2. Verifique se os CRDs estão instalados

      kubectl get crds | grep cyclops-ui
      

      Deve exibir:

      modules.cyclops-ui.com             2025-04-26T15:28:18Z
      templateauthrules.cyclops-ui.com   2025-04-26T15:28:18Z
      templatestores.cyclops-ui.com      2025-04-26T15:28:18Z
      
  2. Instale o servidor Cyclops MCP com o seguinte comando:

    kubectl apply -f https://raw.githubusercontent.com/cyclops-ui/mcp-cyclops/refs/heads/main/install/mcp-server.yaml
    
  3. Você agora pode expor o serviço cyclops-mcp. Para testar seu servidor MCP, você pode fazer um port-forward:

    kubectl port-forward svc/cyclops-mcp -n cyclops 8000:8000
    
  4. Adicione o host do seu servidor Cyclops MCP, ou caso esteja testando, o endereço localhost onde você fez o port-forward do serviço MCP:

    {
      "mcpServers": {
        "mcp-cyclops": {
          "url": "http://localhost:8000/sse"
        }
      }
    }
    

Ferramentas

FerramentaDescrição
create_moduleCriar novo Módulo. Antes de chamar esta ferramenta, certifique-se de chamar get_template_schema para validar valores do template fornecido
get_moduleBuscar Módulo pelo nome
list_modulesListar todos os Módulos Cyclops
update_moduleAtualizar Módulo pelo nome. Antes de chamar esta ferramenta, certifique-se de chamar get_template_schema para validar valores do template fornecido
get_template_schemaRetorna o JSON schema para o template fornecido. Deve ser verificado antes de chamar a ferramenta create_module
get_template_storeBuscar Template Store pelo nome
list_template_storeListar Template Stores do cluster