O servidor MCP
O cfourdev expõe a arquitetura publicada a agentes de IA através de um servidor MCP (Model Context Protocol) em:
https://api.cfourdev.com.br/mcpO que ele acrescenta
Seção intitulada “O que ele acrescenta”Um agente que ajuda a escrever código costuma ter acesso ao repositório em que está. O que ele não tem é o mapa: quais sistemas existem na organização, quem fala com quem, onde estão os riscos registrados, e o que quebra se um serviço sair.
O servidor MCP responde a isso. Com ele, perguntas assim passam a ter resposta:
- “o que depende da API de reservas?”
- “quais riscos estão registrados no domínio de pagamentos?”
- “que sistemas conversam com a agenda corporativa?”
- “me mostre o fluxo de reserva, com os caminhos de falha”
É somente leitura. Nada nele altera modelo nenhum — quem escreve é a linha de comando.
O que ele lê
Seção intitulada “O que ele lê”Ele lê o que foi publicado com cfour push, no escopo das organizações de
que você é membro, respeitando a visibilidade de cada repositório.
Um repositório privado não aparece para quem é reader, nem numa tela nem numa
busca — é a mesma regra, num lugar só.
Ele não lê os arquivos da sua máquina, e não enxerga uma modelagem que nunca foi publicada.
Conectar
Seção intitulada “Conectar”O servidor fala HTTP e autentica por OAuth 2.1 com PKCE. A descoberta é padrão: um cliente sem credencial recebe 401 com o endereço do metadado do recurso, e a partir dali encontra o servidor de autorização sozinho.
Falta uma peça, e é preciso saber disso: não há registro dinâmico de cliente.
O client_id tem de chegar ao agente por configuração.
client_id 5849jmr7iticd3fc2ikcfrtec8porta de retorno 33418O client_id é público por desenho — um cliente OAuth público não tem
segredo — e por isso pode ir para um arquivo versionado.
Claude Code
Seção intitulada “Claude Code”claude mcp add --transport http --client-id 5849jmr7iticd3fc2ikcfrtec8 \ --callback-port 33418 cfourdev https://api.cfourdev.com.br/mcpIsso grava a configuração no .mcp.json do projeto:
{ "mcpServers": { "cfourdev": { "type": "http", "url": "https://api.cfourdev.com.br/mcp", "oauth": { "clientId": "5849jmr7iticd3fc2ikcfrtec8", "callbackPort": 33418 } } }}Na primeira chamada, o agente abre a tela de login no navegador. A sessão vale uma hora e é renovada sozinha.
Outros clientes
Seção intitulada “Outros clientes”Qualquer cliente MCP com transporte HTTP e OAuth serve, desde que aceite um
client_id por configuração e permita fixar a porta do laço local de retorno.
A porta de retorno importa. A lista de endereços de retorno aceitos é mantida
à mão, e o servidor de autorização casa a URL exata — esquema, host, porta e
caminho. Hoje ela aceita http://localhost:33418/callback e
http://127.0.0.1:33418/callback, além das variantes com /oauth/callback, e os
endereços de retorno do Claude na web. Um cliente que abra o laço local numa
porta aleatória não conecta.
Duas coisas para saber antes de perguntar
Seção intitulada “Duas coisas para saber antes de perguntar”Comece pelo catálogo. cfour_catalog diz o que existe e o que você pode ler:
as organizações, os repositórios e as modelagens publicadas em cada um, com o
estado de indexação de cada uma.
Descubra o vocabulário antes de filtrar. cfour_facets lista as etiquetas,
as chaves e valores de metadado, e os tipos de nota que existem numa modelagem.
Quem modela escolhe as palavras, e elas não são as mesmas em duas modelagens —
filtrar por risco numa modelagem que usa risk devolve zero, e zero parece uma
resposta.
Toda resposta diz de quando ela é
Seção intitulada “Toda resposta diz de quando ela é”Cada resposta carrega a procedência: o repositório, a modelagem, a ref, quando o modelo foi compilado e quando a cópia consultada foi escrita.
Isso existe porque a consulta não lê o arquivo publicado diretamente — ela lê uma cópia preparada na publicação, para responder rápido sem abrir megabytes por pergunta. Nenhuma resposta pode se apresentar mais fresca do que é, e uma modelagem que ainda não foi indexada é dita como tal em vez de aparecer como “nenhum resultado”.
Os limites
Seção intitulada “Os limites”| resultados por chamada | 20 por padrão, 100 no máximo |
| tamanho de uma chamada | 32 KB |
| ritmo | 4 requisições por segundo, com rajada de 8 |
| tamanho indexável de uma modelagem | 1 MB comprimido, e 5.000 itens |
| leitura por consulta | 10.000 itens. Acima disso a consulta exige um recorte por repo ou modelagem |
Uma modelagem acima do teto de indexação publica normalmente — ela só não é respondida pelo MCP, e o catálogo diz isso.
O que não existe
Seção intitulada “O que não existe”- escrita. Nenhuma ferramenta altera modelo;
- registro dinâmico de cliente. O
client_idvai por configuração; - fluxo de eventos. O servidor atende
POST. UmGET /mcpautenticado responde 405 dizendo isso; sem credencial ele responde 401 antes disso, porque quem recusa é a borda e não a aplicação; - acesso a modelagem não publicada.
Próximo passo
Seção intitulada “Próximo passo”- As ferramentas do MCP — as dez, com exemplos
- Linha de comando ou MCP? — quando usar cada uma
- O plugin do Claude Code — para escrever o modelo conversando