Back to Browse

Banco Inter MCP Server

Developer ToolsLow Risk9.3MCP RegistryLocal
Free

Server data from the Official MCP Registry

Servidor MCP para integração com o Banco Inter (PJ). Consulte saldos e gerencie cobranças.

About

Servidor MCP para integração com o Banco Inter (PJ). Consulte saldos e gerencie cobranças.

Security Report

9.3
Low Risk9.3Low Risk

Valid MCP server (3 strong, 4 medium validity signals). 2 known CVEs in dependencies Package registry verified. Imported from the Official MCP Registry. Trust signals: trusted author (3/3 approved).

9 files analyzed · 3 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

file_system

Check that this permission is expected for this type of plugin.

env_vars

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

ID do cliente obtido no Portal do Desenvolvedor InterRequired

Environment variable: CLIENT_ID

Secret do cliente obtido no Portal do Desenvolvedor InterRequired

Environment variable: CLIENT_SECRET

Caminho absoluto para o arquivo de certificado (.crt)Optional

Environment variable: CERT_PATH

Caminho absoluto para o arquivo de chave privada (.key)Optional

Environment variable: KEY_PATH

Número da conta correnteOptional

Environment variable: X_CONTA_CORRENTE

Caminho para salvamento dos PDFsOptional

Environment variable: STORAGE_PATH

Habilitar modo sandboxOptional

Environment variable: INTER_IS_SANDBOX

Porta do servidor HTTPOptional

Environment variable: MCP_PORT

Host do servidor HTTPOptional

Environment variable: MCP_HOST

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-samuelmoraesf-mcp-banco-inter": {
      "env": {
        "KEY_PATH": "your-key-path-here",
        "MCP_HOST": "your-mcp-host-here",
        "MCP_PORT": "your-mcp-port-here",
        "CERT_PATH": "your-cert-path-here",
        "CLIENT_ID": "your-client-id-here",
        "STORAGE_PATH": "your-storage-path-here",
        "CLIENT_SECRET": "your-client-secret-here",
        "INTER_IS_SANDBOX": "your-inter-is-sandbox-here",
        "X_CONTA_CORRENTE": "your-x-conta-corrente-here"
      },
      "args": [
        "-y",
        "mcp-banco-inter"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

🏦 MCP Banco Inter

NPM Version Docker Image License: ISC

Um servidor MCP (Model Context Protocol) para integração com a API do Banco Inter Empresas (PJ).

Permite que assistentes de IA (como Claude, ChatGPT, Gemini, etc.) consultem saldos, extratos, emitam e gerenciem boletos de cobrança — tudo via linguagem natural.


✨ Funcionalidades

Banking

  • 💰 Consulta de saldo da conta corrente
  • 📊 Consulta de extrato por período
  • 📄 Download de extrato em PDF

Cobranças (Boletos)

  • 📋 Listar cobranças emitidas com filtros (situação, período)
  • 🆕 Emitir novos boletos de cobrança
  • Cancelar cobranças
  • 📊 Sumário de cobranças por período
  • 📥 Baixar PDF de boletos

📋 Pré-requisitos

  • Node.js 18+ ou Docker
  • Credenciais de API do Banco Inter (obtidas no Portal do Desenvolvedor Inter):
    • CLIENT_ID e CLIENT_SECRET
    • Certificado digital (.crt) e Chave Privada (.key)
    • Número da Conta Corrente

⚙️ Configuração

1. Obtenha suas credenciais no Portal do Desenvolvedor do Banco Inter

2. Coloque os arquivos de certificado em um diretório seguro (ex.: ./certs/)

3. Crie um arquivo .env baseado no .env.example:

# Credenciais obrigatórias
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret
CERT_PATH=./certs/inter.crt
KEY_PATH=./certs/inter.key

# Conta
X_CONTA_CORRENTE=123456789

# Armazenamento local (PDFs gerados)
STORAGE_PATH=./storage

# Transporte MCP: "stdio" | "streamable-http"
MCP_TRANSPORT=stdio

# Configurações de rede (apenas para transporte streamable-http)
MCP_HOST=0.0.0.0
MCP_PORT=3000

# Sandbox (para testes)
INTER_IS_SANDBOX=true

⚠️ Importante: Nunca comite os arquivos .env, .crt e .key no repositório. Eles já estão no .gitignore.


🚀 Instalação e Uso

O servidor suporta dois modos de transporte:

TransporteUsoIdeal para
stdioComunicação via stdin/stdoutClientes locais (Claude Desktop, Cursor, etc.)
streamable-httpServidor HTTP com Streamable HTTPClientes remotos, Docker, múltiplos clientes

1️⃣ Via npx — Modo stdio (recomendado para clientes locais)

O modo padrão. O cliente MCP inicia o processo e se comunica via stdin/stdout:

CLIENT_ID=seu_client_id \
CLIENT_SECRET=seu_client_secret \
CERT_PATH=/caminho/absoluto/inter.crt \
KEY_PATH=/caminho/absoluto/inter.key \
X_CONTA_CORRENTE=sua_conta \
INTER_IS_SANDBOX=true \
npx -y samuelmoraesf/mcp-banco-inter

💡 Na prática, você não roda manualmente — o cliente MCP (Claude Desktop, Cursor, etc.) executará o comando automaticamente. Veja os exemplos de configuração abaixo.


2️⃣ Via npx — Modo streamable-http (servidor HTTP)

Para rodar como servidor HTTP acessível por múltiplos clientes:

CLIENT_ID=seu_client_id \
CLIENT_SECRET=seu_client_secret \
CERT_PATH=/caminho/absoluto/inter.crt \
KEY_PATH=/caminho/absoluto/inter.key \
X_CONTA_CORRENTE=sua_conta \
INTER_IS_SANDBOX=true \
MCP_TRANSPORT=streamable-http \
MCP_HOST=0.0.0.0 \
MCP_PORT=3000 \
npx -y samuelmoraesf/mcp-banco-inter

O servidor estará disponível em:

http://localhost:3000/mcp

3️⃣ Via Docker — Modo streamable-http

O container Docker já vem configurado para rodar em modo streamable-http por padrão.

Build local:

docker build -t mcp-banco-inter .

docker run -d \
  --name mcp-banco-inter \
  -p 3000:3000 \
  -e CLIENT_ID=seu_client_id \
  -e CLIENT_SECRET=seu_client_secret \
  -e X_CONTA_CORRENTE=sua_conta \
  -e INTER_IS_SANDBOX=true \
  -v /caminho/absoluto/certs:/app/certs \
  -e CERT_PATH=/app/certs/inter.crt \
  -e KEY_PATH=/app/certs/inter.key \
  mcp-banco-inter

Ou diretamente do Docker Hub:

docker run -d \
  --name mcp-banco-inter \
  -p 3000:3000 \
  --env-file .env \
  -v ./certs:/app/certs \
  samuelmoraesf/mcp-banco-inter:latest

O container expõe o endpoint Streamable HTTP em http://localhost:3000/mcp.


4️⃣ Instalação local (desenvolvimento)

git clone https://github.com/samuelmoraesf/mcp-banco-inter.git
cd mcp-banco-inter
npm install
npm run build
npm start

🔌 Integração com Clientes MCP

Claude Desktop (stdio)

Adicione ao seu claude_desktop_config.json:

{
  "mcpServers": {
    "banco-inter": {
      "command": "npx",
      "args": ["-y", "mcp-banco-inter"],
      "env": {
        "CLIENT_ID": "seu_client_id",
        "CLIENT_SECRET": "seu_client_secret",
        "CERT_PATH": "/caminho/absoluto/inter.crt",
        "KEY_PATH": "/caminho/absoluto/inter.key",
        "X_CONTA_CORRENTE": "sua_conta",
        "INTER_IS_SANDBOX": "true"
      }
    }
  }
}

Cursor / Windsurf / VS Code (stdio)

Na configuração MCP do seu editor, adicione:

{
  "mcp": {
    "servers": {
      "banco-inter": {
        "command": "npx",
        "args": ["-y", "mcp-banco-inter"],
        "env": {
          "CLIENT_ID": "seu_client_id",
          "CLIENT_SECRET": "seu_client_secret",
          "CERT_PATH": "/caminho/absoluto/inter.crt",
          "KEY_PATH": "/caminho/absoluto/inter.key",
          "X_CONTA_CORRENTE": "sua_conta",
          "INTER_IS_SANDBOX": "true"
        }
      }
    }
  }
}

Clientes remotos (streamable-http)

Para clientes que se conectam via HTTP (incluindo Docker), primeiro inicie o servidor em modo streamable-http (veja seções 2️⃣ ou 3️⃣ acima) e configure o cliente para conectar ao endpoint:

http://localhost:3000/mcp

🛠️ Ferramentas Disponíveis

FerramentaDescriçãoParâmetros
consultar_saldoRetorna o saldo disponível da conta.
consultar_extratoRetorna as movimentações em um período.dataInicial, dataFinal
baixar_pdf_extratoGera e salva o PDF do extrato.dataInicial, dataFinal
listar_boletosLista cobranças por período e situação.dataInicial, dataFinal, situacao?
emitir_boletoCria um novo boleto de cobrança.seuNumero, valorNominal, dataVencimento, pagador
baixar_pdf_boletoGera e salva o PDF de um boleto.codigoSolicitacao
cancelar_boletoCancela uma cobrança existente.codigoSolicitacao, motivo
sumario_boletosResumo quantitativo de cobranças por período.dataInicial, dataFinal

🏗️ Arquitetura

src/
├── index.ts          # Entrypoint — configura transporte (stdio/HTTP)
├── server.ts         # Definição do servidor MCP e registro das tools
├── inter-client.ts   # Cliente HTTP para a API do Banco Inter
└── types.ts          # Interfaces TypeScript das requisições/respostas
MóduloResponsabilidade
index.tsCarrega variáveis de ambiente, inicializa o InterClient e o InterMcpServer, e configura o transporte (stdio ou Streamable HTTP).
server.tsRegistra as ferramentas MCP e delega chamadas ao InterClient.
inter-client.tsAutenticação OAuth2 com mTLS, cache de token, e todas as chamadas REST à API Inter (Banking v2 e Cobrança v3).
types.tsTipagem completa de todas as interfaces usadas nas requisições e respostas da API.

🧪 Testes

# Testes unitários
npm run test:unit

# Testes de integração (requer .env configurado)
npm run test:integration

# Todos os testes
npm test

📦 CI/CD

O projeto possui pipelines automatizados via GitHub Actions:

  • NPM Publish — Publica automaticamente no NPM ao criar tags v*.
  • Docker Build & Push — Builda e publica imagem multi-arch (amd64/arm64) no Docker Hub ao fazer push em master ou ao criar tags.

🔒 Segurança

  • A comunicação com a API do Banco Inter é feita via mTLS (certificado digital do cliente).
  • O token de autenticação OAuth2 é armazenado apenas em memória e renovado automaticamente.
  • Os arquivos sensíveis (.env, certificados, chaves) estão incluídos no .gitignore.

Reviews

No reviews yet

Be the first to review this server!