v0.1.0-rc.4 · MCP auto-hospedado · política aplicada · auditável

Conecte o ChatGPT Web diretamente à sua VPS Linux.

O Portico MCP cria um caminho seguro para o ChatGPT inspecionar e operar sua VPS dentro da autoridade que você definir. O OAuth autentica o cliente. Um Broker local privilegiado reautoriza cada operação no host e registra evidências de auditoria.

Problema → Solução

Pare de copiar comandos entre o ChatGPT e o terminal.

O ChatGPT consegue raciocinar sobre um servidor, mas sem um caminho confiável de execução ele não enxerga o estado real, não executa a ação autorizada, não inspeciona o resultado e não continua a partir da mesma conversa. O Portico MCP fecha esse ciclo.

A fricção

O trabalho manual no servidor quebra a conversa em pedaços.

  • O ChatGPT sugere um comando, mas não consegue ver o que aconteceu depois.
  • Você troca de janela, copia comandos, cola logs de volta e reconstrói o contexto.
  • O diagnóstico vira um revezamento entre chat, terminal e painéis.
  • Dar à IA um acesso amplo no estilo SSH cria um problema de confiança muito maior.

A ponte

Deixe o ChatGPT trabalhar na VPS dentro das regras que você definiu.

Pela própria conversa, o ChatGPT pode inspecionar arquivos, diagnosticar serviços, analisar logs, trabalhar com Docker e executar outras operações que você habilitar explicitamente.

Standard, Project ou Whole Host define o perímetro físico. Filesystem, shell, systemd, Docker, rede e capacidades administrativas continuam sendo decisões separadas de política.

ChatGPT Web→OAuth→MCP Gateway→Policy Broker→Sua VPS

O papel do GitHub

Distribuição e código-fonte, sem ficar no caminho da operação.

O GitHub hospeda o projeto open source, a documentação, as releases e a fonte de atualização. Depois da instalação, o GitHub fica fora do caminho operacional entre o ChatGPT Web e sua VPS.

  • Nenhuma senha da VPS é entregue ao ChatGPT.
  • Nenhuma chave SSH privada é entregue ao ChatGPT.
  • O Docker socket não é exposto ao modelo.
  • Operações privilegiadas são reautorizadas pelo Broker e ficam auditáveis.

Conecte. Pergunte. Inspecione. Opere. Audite.

Autoridade

Você escolhe o perímetro delegado.

Standard, Project e Whole Host definem o teto físico do filesystem. Filesystem, shell, systemd, Docker, rede e capacidades administrativas permanecem decisões separadas de política.

Privilégio

O root permanece atrás do Broker.

O Gateway roda sem root e não recebe /host nem o Docker socket. O Broker é local, privilegiado e responsável por aplicar a política.

Conclusão

Prova antes de declarar “instalado”.

Containers saudáveis são um checkpoint. A instalação só termina depois que uma chamada MCP real e autenticada do ChatGPT atravessa política, execução e auditoria do Broker.

Arquitetura

Superfície pública pequena, fronteiras de confiança explícitas.

ChatGPT WebOAuth + MCP por HTTPS
→
Gatewaysem root
→
Brokerfronteira local privilegiada
→
VPSLinux · systemd · Docker · arquivos

Segurança

O modelo de linguagem não é o motor de autorização.

Política deny-by-default, resolução segura de caminhos, shell/jobs isolados, limites de requisição, validação exata de subject, journals de operação, locks/fencing e uma cadeia de auditoria sob controle do Broker mantêm a autoridade no código do servidor.

Identidade

OAuth integrado e auto-hospedado.

O caminho público suportado executa ZITADEL + PostgreSQL junto do serviço, com operador dedicado, audience MCP, introspecção privada RFC 7662, DCR e PKCE. A telemetria do ZITADEL fica desabilitada.

Requisitos

O que você precisa antes da instalação.

VPS

  • VPS Linux. Ubuntu 24.04 LTS é o alvo validado no release candidate.
  • Docker Engine 24+ e Docker Compose v2.
  • Pelo menos 2 GB de RAM para o caminho OAuth integrado com ZITADEL.
  • Git, OpenSSL, Python 3 e curl.
  • Um domínio/DNS público apontando para a VPS, portas TCP 80/443 disponíveis e HTTPS válido.

ChatGPT

  • Uma conta/workspace do ChatGPT Web em que o Modo de Desenvolvedor e a criação de app MCP personalizado estejam realmente disponíveis.
  • A OpenAI controla disponibilidade por plano/workspace e rollout; o rótulo da assinatura, sozinho, não garante compatibilidade.
  • A documentação oficial atual lista MCP completo com escrita/alteração para Business, Enterprise e Edu; usuários Pro podem conectar MCPs personalizados com leitura/busca no modo de desenvolvedor.

Começo rápido

Três comandos para entrar no fluxo guiado.

git clone https://github.com/josemirmoura/mcp-vps-agent-gateway.git
cd mcp-vps-agent-gateway
bash scripts/install.sh

O terminal executa um preflight de pré-requisitos, pergunta por Standard / Project / Whole Host, mostra a autoridade efetiva, inicia o runtime, valida o funcionamento, configura o OAuth público e orienta a chamada real de conclusão feita pelo ChatGPT.

Standard é o padrão recomendado. Usa /opt como teto físico e começa sem raiz de projeto autorizada. Whole Host define / como teto do filesystem, mas não habilita Full nem rede irrestrita.

Componentes transparentes

O fluxo guiado não esconde a maquinaria.

Operadores avançados podem executar os mesmos componentes individualmente:

bash scripts/init.sh --scope /opt --dynamic-baseline
docker compose up -d --build
bash scripts/verify.sh
bash scripts/setup-integrated-auth.sh
bash scripts/connect-chatgpt.sh

Nenhuma credencial de VPS ou SSH é entregue ao ChatGPT. A credencial dedicada do operador OAuth pertence ao serviço de identidade integrado e é informada localmente pelo fluxo de autenticação suportado.

connect-chatgpt.sh registra uma linha de base da auditoria, deixa você concluir o app/OAuth no ChatGPT sem pressa e verifica a chamada real autenticada de system.info quando você volta ao terminal e pressiona Enter. Só então pode imprimir INSTALAÇÃO CONCLUÍDA.

Operação

Diagnostique.

bash scripts/diagnose.sh status
bash scripts/diagnose.sh health
bash scripts/diagnose.sh bundle

Ciclo de vida

Atualize ou remova.

bash scripts/update.sh
bash scripts/remove.sh safe

Tags SemVer estáveis são o canal padrão de atualização. Backup, validação de migração e rollback permanecem no atualizador existente.

Maturidade

Scoped primeiro.

O caminho Scoped tem evidências automatizadas e E2E real com ChatGPT. Full/R5 continua sendo um caminho avançado e ainda não é apresentado como pronto para produção.

Privacidade

Auto-hospedado, sem telemetria de marketing.

Estado, política, auditoria e dados de identidade permanecem na VPS, salvo quando o operador decide exportá-los. Bundles de diagnóstico ocultam segredos configurados. Consulte o documento de privacidade do repositório para detalhes.

Integridade da release

SemVer, checksums, SBOM e provenance.

As tags de release precisam corresponder ao arquivo VERSION. Imagens no GHCR são construídas para amd64/arm64 com SBOM/provenance; pacotes de código-fonte recebem checksums SHA-256. Assinatura criptográfica dedicada do projeto ainda não é reivindicada.