Install
npx -y @modelcontextprotocol/server-postgres postgresql://localhost/mydbPara quem
Para fazer um modelo ver a estrutura de tabelas de um banco PostgreSQL e executar SQL somente leitura. A evidência afirma: este MCP oferece acesso somente leitura ao PostgreSQL, para inspecionar o schema e executar consultas somente leitura.
Você precisa fornecer uma URL postgresql:// conectável e aceitar que o modelo lerá estruturas de tabelas e resultados. Uma transação somente leitura não é «risco zero»: ainda conecta, ainda lê dados, e a URL pode carregar usuário e senha.
A evidência não lista clientes. A página oficial está na árvore servers-archived; a evidência não descreve à parte o estado de manutenção. Não presuma que ainda é a implementação principal recomendada.
Primeira tentativa em 3 minutos
Siga o caminho principal NPX; não trate Docker como instalação principal. Na configuração MCP do cliente use:
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-postgres",
"postgresql://localhost/mydb"
]
Troque a última URL por um banco ao qual você tem acesso somente leitura. Usuário e senha podem ser escritos como na evidência: postgresql://user:password@host:port/db-name. Não cole uma conta de escrita de produção nem uma senha completa na conversa.
Pré-requisitos: a máquina tem npx; o banco permite conexões desse processo; na primeira vez, só inspecione o schema ou execute uma consulta que não altere dados.
Onde configurar: command / args do servidor MCP do cliente. O terceiro argumento é a string de conexão.
Primeira chamada de baixo risco: primeiro leia o recurso postgres://<host>/<table>/schema para ver nomes e tipos de colunas de uma tabela; ou chame a ferramenta query com uma string sql — a evidência garante execução numa transação READ ONLY. Não tente INSERT/UPDATE/DELETE para «verificar o somente leitura».
Sinal de sucesso: após conectar, o cliente lista recursos de schema de tabela, ou query devolve um resultado somente leitura. Se a conexão falhar, mude primeiro a URL (banco local, porta, nome do banco); não troque para Docker e chute. Sobre Docker a evidência só acrescenta: no macOS, se o serviço estiver no host, use host.docker.internal.
Casos de uso
Caso 1: descobrir quais colunas uma tabela tem. Leia postgres://<host>/<table>/schema. A evidência afirma que é um JSON schema descoberto automaticamente dos metadados, com nomes de coluna e tipos. Não há API de enumeração de nomes de tabela; substitua <host> e <table> conforme a conexão real. Não invente tabelas que você não vê.
Caso 2: executar uma consulta somente leitura numa tabela cuja existência já foi confirmada. Chame query; o único parâmetro é sql. A evidência garante execução numa transação READ ONLY; não documenta paginação, tempo limite nem o alcance do dialeto SQL executável. O que se confirma: este SQL é enviado como consulta somente leitura ao banco já conectado. Não assuma poder escrever tabelas temporárias ou chamar funções que mudam estado.
Limites de uso
É acesso somente leitura, não uma escrita reversível: a evidência não dá undo. A string de conexão pode conter senha — exposição de credenciais e do plano de dados. A única ferramenta é query. Docker e NPX são caminhos diferentes; o principal permanece NPX. A evidência não documenta pool de conexões, SSL nem imposição de papel somente leitura, e não diz que uma transação READ ONLY bloqueia todos os efeitos colaterais (algumas funções SQL ainda podem ter efeitos externos, mas a página não desenvolve). A página está numa árvore de repositório arquivado; a evidência não oferece pacote alternativo nem nota de migração.