ViaCEP Brasil MCP Server

ViaCEP Brasil MCP Server

Connects AI tools to the ViaCEP API, allowing natural language queries for Brazilian addresses by CEP or address details.

Category
Visit Server

README

ViaCEP Brasil MCP Server

Node.js TypeScript MCP SDK License

O ViaCEP Brasil MCP Server conecta ferramentas de IA à API gratuita ViaCEP, permitindo consultar CEPs e endereços de todo o Brasil via linguagem natural.

Com ele, agentes de IA, assistentes e chatbots podem:

  • Recuperar o endereço completo a partir de um CEP
  • Descobrir o CEP de um endereço a partir de estado, cidade e logradouro
  • Validar e enriquecer dados de endereço brasileiro com informações do IBGE, DDD, SIAFI e GIA

Ferramentas disponíveis (Tools)

🔍 buscar_endereco_por_cep

Consulta informações completas de um endereço brasileiro a partir do CEP.

Parâmetro Tipo Obrigatório Descrição
cep string ✅ Sim CEP com 8 dígitos, com ou sem hífen (ex: 01001-000 ou 01001000)

Retorna: CEP formatado, logradouro, complemento, unidade, bairro, localidade, UF, estado, região, DDD, código IBGE, GIA e SIAFI.

Exemplo de resposta:

✅ Endereço encontrado para o CEP 01001000:

📮 CEP: 01001-000
📍 Logradouro: Praça da Sé, lado ímpar
🏘️  Bairro: Sé
🏙️  Cidade: São Paulo - SP
🗺️  Estado: São Paulo
🌎 Região: Sudeste
📞 DDD: 11
🏛️  Código IBGE: 3550308
💼 GIA: 1004
🔖 SIAFI: 7107

🗺️ buscar_cep_por_endereco

Pesquisa CEPs brasileiros a partir de informações de endereço. Retorna até 50 resultados, ordenados por proximidade do nome do logradouro.

Parâmetro Tipo Obrigatório Descrição
uf string ✅ Sim Sigla do estado com 2 letras (ex: SP, RJ, RS, MG)
cidade string ✅ Sim Nome da cidade — mínimo de 3 caracteres
logradouro string ✅ Sim Nome do logradouro/rua — mínimo de 3 caracteres

Retorna: lista de CEPs com logradouro, bairro e cidade correspondentes.

Exemplo de resposta:

Busca por: Paulista, São Paulo/SP

✅ 4 endereço(s) encontrado(s):
──────────────────────────────────────────────────
[1] CEP: 01311-300
    Logradouro: Avenida Paulista (de 1 a 610 - lado par)
    Bairro: Bela Vista
    Cidade: São Paulo - SP
...

Instalação

Pré-requisitos

  • Node.js 18 ou superior
  • npm 9 ou superior
  • (Opcional) Docker para execução containerizada

Opção 1: Build a partir do código-fonte

# Clone ou baixe o repositório
git clone <url-do-repositorio>
cd viacep-brasil-mcpserver

# Instale as dependências
npm install

# Compile o TypeScript
npm run build

O servidor compilado estará em build/index.js.

Opção 2: Docker

Build da imagem

docker build -t viacep-brasil-mcpserver .

Execução com Docker

O servidor usa transporte stdio, portanto a flag -i é obrigatória:

docker run -i --rm viacep-brasil-mcpserver

Configuração nos Clientes MCP

VS Code (GitHub Copilot)

Adicione ao arquivo .vscode/mcp.json no seu workspace:

{
  "servers": {
    "viacep-brasil": {
      "type": "stdio",
      "command": "node",
      "args": ["/caminho/absoluto/para/viacep-brasil-mcpserver/build/index.js"]
    }
  }
}

Ou com Docker:

{
  "servers": {
    "viacep-brasil": {
      "type": "stdio",
      "command": "docker",
      "args": ["run", "-i", "--rm", "viacep-brasil-mcpserver"]
    }
  }
}

Claude Desktop

Edite o arquivo de configuração:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "viacep-brasil": {
      "command": "node",
      "args": ["/caminho/absoluto/para/viacep-brasil-mcpserver/build/index.js"]
    }
  }
}

Com Docker:

{
  "mcpServers": {
    "viacep-brasil": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "viacep-brasil-mcpserver"]
    }
  }
}

Cursor

Adicione ao arquivo de configuração MCP do Cursor (~/.cursor/mcp.json):

{
  "mcpServers": {
    "viacep-brasil": {
      "command": "node",
      "args": ["/caminho/absoluto/para/viacep-brasil-mcpserver/build/index.js"]
    }
  }
}

Outros clientes MCP (genérico)

Qualquer cliente MCP com suporte a transporte stdio pode usar este servidor:

{
  "mcpServers": {
    "viacep-brasil": {
      "command": "node",
      "args": ["/caminho/para/build/index.js"]
    }
  }
}

Exemplos de Uso

Via MCP Inspector (UI)

# Inicia o Inspector com interface web em http://localhost:6274
npx @modelcontextprotocol/inspector node build/index.js

Configure no Inspector:

  • Transport: stdio
  • Command: node
  • Args: build/index.js

Via MCP Inspector (CLI)

# Listar todas as ferramentas disponíveis
mcp-inspector --cli node build/index.js --method tools/list

# Buscar endereço pelo CEP da Praça da Sé (SP)
mcp-inspector --cli node build/index.js \
  --method tools/call \
  --tool-name buscar_endereco_por_cep \
  --tool-arg 'cep="01001000"'

# Buscar endereço com hífen
mcp-inspector --cli node build/index.js \
  --method tools/call \
  --tool-name buscar_endereco_por_cep \
  --tool-arg 'cep="01001-000"'

# Buscar CEP por endereço — Avenida Paulista em São Paulo/SP
mcp-inspector --cli node build/index.js \
  --method tools/call \
  --tool-name buscar_cep_por_endereco \
  --tool-arg uf=SP \
  --tool-arg cidade="São Paulo" \
  --tool-arg logradouro=Paulista

# Buscar CEP por endereço — Porto Alegre/RS
mcp-inspector --cli node build/index.js \
  --method tools/call \
  --tool-name buscar_cep_por_endereco \
  --tool-arg uf=RS \
  --tool-arg cidade="Porto Alegre" \
  --tool-arg logradouro=Domingos

# Listar recursos disponíveis (resources)
mcp-inspector --cli node build/index.js --method resources/list

# Ler a documentação do servidor como recurso MCP
mcp-inspector --cli node build/index.js \
  --method resources/read \
  --uri viacep://docs/readme

Docker + MCP Inspector

npx @modelcontextprotocol/inspector --cli docker run -i --rm viacep-brasil-mcpserver \
  --method tools/list

Recursos disponíveis (Resources)

📄 viacep://docs/readme

Documentação completa do servidor em formato Markdown. Disponível a qualquer cliente MCP para consulta.

URI:       viacep://docs/readme
MIME type: text/markdown

Desenvolvimento

Compilar em modo watch

npm run dev

Build para produção

npm run build

Build da imagem Docker

# Build padrão
docker build -t viacep-brasil-mcpserver .

# Build com tag de versão
docker build -t viacep-brasil-mcpserver:1.0.0 .

API ViaCEP

Este servidor consome a API pública e gratuita ViaCEP.

Endpoint Descrição
GET https://viacep.com.br/ws/{cep}/json/ Retorna endereço completo a partir do CEP
GET https://viacep.com.br/ws/{UF}/{cidade}/{logradouro}/json/ Retorna lista de CEPs por endereço (até 50)

Tratamento de erros:

  • CEP com formato inválido → HTTP 400 Bad Request
  • CEP válido mas inexistente → { "erro": "true" }
  • Cidade ou logradouro com menos de 3 caracteres → HTTP 400 Bad Request

⚠️ Atenção: O uso massivo da API para validação de bases de dados pode resultar no bloqueio automático do acesso por tempo indeterminado, conforme informado pelo ViaCEP.


Tecnologias

Tecnologia Versão Uso
MCP TypeScript SDK 1.x Framework do servidor MCP
Zod 3.x Validação de esquemas dos parâmetros
TypeScript 5.7+ Linguagem de desenvolvimento
Node.js 22+ Runtime (recomendado) / 18+ (mínimo)
Docker Containerização (opcional)

Licença

Este projeto está licenciado sob a MIT License.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured