Agentes de IA (MCP)
O goship expõe tudo o que ele faz como ferramentas MCP,
o protocolo que o Claude Code, o Claude Desktop, o Cursor e outros agentes usam
para operar serviços. Você pede “sobe isso no GoShip” e o agente cria o app,
configura as variáveis, faz o deploy, lê os logs e devolve a URL. No claude.ai,
o conector do Claude traz as mesmas
ferramentas sem instalar nada.
Claude Code
Com o CLI instalado e logado, um comando instala o servidor MCP, uma skill de
deploy e o comando /goship:deploy:
/plugin install goship --marketplace coffeece/goshipDepois, no projeto:
/goship:deployO agente lê o projeto, relata o que encontrou (plataforma, porta, health
check, segredos), faz só as mudanças que o GoShip precisa, escreve o
goship.yaml e deploya, no ambiente que você pedir (sem pedido, valem as regras
de Ambientes e clusters).
Outros clientes MCP
Qualquer cliente que fale MCP roda goship mcp como servidor stdio:
{
"mcpServers": {
"goship": { "command": "goship", "args": ["mcp"] }
}
}O servidor usa o login desta máquina (goship login) ou a variável
GOSHIP_TOKEN.
Conector do Claude (sem instalar nada)
Para usar o GoShip no claude.ai, no Claude Desktop ou no app do celular, que não rodam um processo local, o GoShip hospeda as mesmas ferramentas em:
https://mcp.goship.sh/mcpNão há token para copiar: você entra com a sua conta do GoShip.
- No Claude, abra Customize › Connectors › Add custom connector e cole o endereço acima.
- Clique em Connect, entre com a sua conta do GoShip e autorize o acesso na tela de consentimento.
- Numa conversa com o conector ligado, peça o que quiser: “lista meus apps no GoShip”, “quais ambientes eu tenho?”.
No Claude Code, sem instalar a CLI:
claude mcp add --transport http goship https://mcp.goship.sh/mcpDepois rode /mcp para entrar.
O conector age com as suas permissões, como a CLI: o que você não pode fazer no GoShip, ele também não pode.
Como não há máquina de onde ler configuração, não existe organização, projeto
ou ambiente selecionado: as ferramentas usam a única organização e o único
projeto que você tem, ou pedem org e project. O ambiente é o que vier em
environment; sem ele, vale o ambiente padrão da organização. O
goship_deploy publica um diretório da sua máquina, então só funciona com o
goship mcp local; todo o resto funciona igual.
Ferramentas
Os nomes seguem os comandos: goship_list_apps, goship_get_app,
goship_deploy, goship_logs, goship_set_env, goship_create_database,
goship_bind_database, goship_rollback, goship_list_plans,
goship_list_projects, goship_list_environments,
goship_create_database_server…
- Leituras são marcadas como somente-leitura.
- Remoções (
goship_delete_*,goship_revoke_api_token) egoship_resize_cluster(derruba os apps do cluster por alguns minutos) são marcadas como destrutivas e pedem ao agente que confirme com você antes. goship login,goship cloud connectegoship shellficam no terminal: precisam de navegador ou de um TTY.goship_logsnunca segue o log; traz até 1000 linhas por chamada.goship_runroda um comando no app e devolve a saída, com limite de 10 minutos.
Cada ferramenta aceita org para escolher a organização; sem ele, vale a
selecionada com goship org use (ou a única a que você pertence). Do mesmo
jeito, project escolhe o projeto; sem
ele, valem as mesmas regras da CLI (project: do goship.yaml,
GOSHIP_PROJECT, goship project use, o único projeto que você alcança).
goship_list_projects lista os projetos da organização com o seu papel em
cada um. A partir da versão 0.5.0.
Ambientes e clusters
Desde a versão 0.14.0 o agente enxerga os ambientes e os
clusters da organização: goship_list_environments,
goship_create_environment e goship_delete_environment, e
goship_list_clusters, goship_get_cluster, goship_list_cluster_sizes,
goship_create_cluster, goship_resize_cluster e goship_delete_cluster.
A partir da 0.16.0, goship_enable_environment e goship_disable_environment
ativam e desativam um ambiente.
Criar, redimensionar e remover clusters e ambientes, e ativar ou desativar um
ambiente, é do dono e dos administradores da organização, como na CLI. O
desenvolvimento é o ambiente padrão e a homologação nasce desativada: pedir ao
agente pra criar algo em homologação só funciona depois que um administrador a
ativar (ler o que está lá funciona sempre).
Toda ferramenta que age dentro de um projeto (apps, deploy, logs, bancos,
volumes, planos…) aceita environment. O agente escolhe o ambiente, nunca
“onde rodar”: “sobe em homologação” vira environment: staging, e qual cluster
atende o ambiente já está decidido nele. As ferramentas que escolhiam a máquina
de um app e a que movia uma conta de nuvem entre projetos deixaram de existir: o
cluster é do ambiente, e as contas de nuvem são da organização.
Sem environment, o servidor local goship mcp usa o ambiente que ele mesmo
tem selecionado, nesta ordem:
- a flag
--environmentdo servidor; - o
environment:dogoship.yamldo diretório onde o servidor roda; - a variável
GOSHIP_ENVIRONMENT; - o ambiente guardado por
goship environment usepara aquela organização e projeto.
Só quando nenhum deles está definido vale o ambiente padrão da organização. Quem
rodou goship environment use production, sem nada acima definido, tem produção
como o ambiente das ferramentas.
Em goship_deploy (e em /goship:deploy) a ordem é: o argumento environment;
o environment: do goship.yaml do diretório que está sendo publicado; a
seleção do servidor, na ordem acima; e, por fim, o ambiente padrão da
organização. Se nenhum projeto for informado, valem o projeto e o ambiente em que
o app já existe.
Antes de qualquer ação destrutiva (apagar, remover, redimensionar), peça ao
agente que passe environment explicitamente, em vez de deixar a seleção
decidir.
Banco no seu Google Cloud
Desde a versão 0.9.0 o agente também cria servidores de banco no seu Google
Cloud: goship_list_database_servers,
goship_list_database_server_tiers, goship_create_database_server,
goship_retry_database_server e goship_delete_database_server (com
force para esquecer um servidor inacessível), e goship_create_database
aceita server para colocar o banco nele — sem cobrança do GoShip e sem plano
(size_limit_mb define um limite de tamanho opcional). Sem
server, o banco vai para o servidor padrão do ambiente. Os servidores de banco
são da organização, não de um projeto.
goship_set_database_size_limit muda ou tira esse limite e
goship_set_database_server_disk_limit muda o teto do disco do servidor (0 tira
o teto); goship_create_database_server aceita disk_limit_gb. Se um banco
ficar somente-leitura por espaço, o agente sobe o limite ou o teto, nunca troca
de plano. A skill
de deploy sabe o caminho: reaproveita um servidor pronto, cria um se não
houver e deixa o banco na fila enquanto o servidor sobe.
Extensões ligam e desligam por
goship_list_database_extensions, goship_enable_database_extension e
goship_disable_database_extension.
Apps privados
Desde a versão 0.12.0 o agente cuida do login na frente de um app:
goship_set_app_visibility liga e desliga, goship_list_app_access,
goship_add_app_access, goship_reset_app_access e
goship_remove_app_access gerenciam as pessoas, e
goship_get_app_access_token e goship_rotate_app_access_token cuidam do
token de automação. goship_create_app aceita private para o app já nascer
privado. As senhas geradas aparecem uma única vez, então o agente as repassa
a você na hora; remover alguém encerra a sessão da pessoa.