Pular para o conteúdo principal
O vsql_mcp serve o banco de dados a agentes de IA pelo Model Context Protocol, a partir de um listener dentro do processo do servidor. Um agente pode listar schemas, descrever tabelas e executar consultas somente leitura. As gravações ficam desativadas até que você as ative, e o caminho das consultas passa por uma conta do banco de dados que você indica, então o agente recebe exatamente o acesso que você concedeu a essa conta.
Esta extensão usa capabilities Preview, quatro delas, então o servidor precisa ser iniciado com --vsql_allow_preview_extensions=ON. Caso contrário, o INSTALL EXTENSION é recusado.

Instalar

O vsql_mcp não vem incluído com o servidor, então compile-o primeiro a partir do repositório e copie o vsql_mcp.veb resultante para o diretório indicado pela variável de sistema veb_dir. Em seguida, instale-o:
Confirme que ele está lá:
As instruções de compilação estão no repositório.

O que ela adiciona

Ela adiciona uma função SQL, info(), que informa o que o listener está fazendo. Todo o resto é configuração e tráfego MCP.
starting é true a partir do momento em que vsql_mcp.vsql_mcp_enabled é definido como ON até o próximo despertar do worker em segundo plano, que ocorre a cada 25 ms. Uma chamada nessa janela também pode informar "enabled":false, já que o listener ainda não se vinculou.

Exemplo

Aponte o listener para um banco de dados e inicie-o:
Os agentes então se conectam a http://127.0.0.1:3100 por MCP Streamable HTTP. O repositório traz a configuração de cliente para cada agente.
A conta em db_url define o teto do que um agente pode fazer, e toda conta do banco de dados pode ler db_url, senha incluída, com SHOW VARIABLES, então conceda a ela o mínimo necessário e deixe allow_write desativado até que você realmente queira ativá-lo. Ative require_auth com um bearer token antes que a porta fique acessível de qualquer lugar além do localhost; o SHOW VARIABLES também mostra esse token a todas as contas.
Uma configuração gravada com SET PERSIST sobrevive a uma reinicialização, mas UNINSTALL EXTENSION a apaga. Após desinstalar e reinstalar, toda configuração volta ao seu padrão, e nenhuma reinicialização traz o valor antigo de volta.

Veja também