Servidor MCP
Servidor Node.js implementando o Model Context Protocol (MCP) para operações das APIs do Efí Bank.
Demonstração do MCP
Características
- Gestão de cobranças Pix imediatas
- Pagamentos e transferências Pix
- Operações de devolução Pix
- Configuração de webhooks
- Saldo da conta e configurações
- Gerenciamento de EVP (Chaves Aleatórias)
- Tratamento de MED (Mecanismo Especial de Devolução)
Instalação
Para instalar o MCP, utilize uma das opções abaixo:
Instalação via NPX
$ npx mcp-server-efi
Instalação via Docker
docker run -i --rm mcp-server-efi \
--sandbox=false \
--client-id=seu_client_id \
--client-secret=seu_client_secret \
--certificate=seu_certificado_base64 \
--validate-mtls=true
Acesse nosso repositório no Github da Efí para consultar o código-fonte.
Configuração
O servidor requer as seguintes variáveis de ambiente:
sandbox:Defina como"false"para produção ou"true"para ambiente sandboxclient-id:Seu Client ID da aplicação do Efí Bankclient-secret:Seu Client Secret da aplicação do Efí Bankcertificate:Seu certificado do Efí Bank em formato Base64validate-mtls:Defina como"true"para validar mTLS nos webhooks (opcional, padrão é true)
API
Cobranças Pix Imediatas
- pix_create_immediate_charge
- Criar cobrança Pix imediata sem especificar txid
- Gera cobrança com tempo de expiração, valor, chave Pix e informações opcionais do devedor
- pix_create_charge
- Criar cobrança Pix imediata com txid específico
- Entrada: txid, detalhes da cobrança (valor, chave Pix, info do devedor, etc.)
- pix_update_charge
- Atualizar cobrança existente por txid
- Modificar expiração, info do devedor, valor ou informações adicionais
- pix_detail_charge
- Obter detalhes da cobrança por txid
- Retorna informações completas da cobrança incluindo status e detalhes do pagamento
- pix_list_charges
- Listar cobranças com opções de filtro
- Filtrar por intervalo de datas, CPF/CNPJ, status e paginação
Pagamentos e Transferências Pix
- pix_send
- Enviar pagamento Pix para uma chave Pix ou conta bancária
- Suporte para chave Pix ou detalhes de conta bancária como destino
- pix_send_detail
- Obter detalhes do Pix enviado por e2eId
- Retorna informações completas da transação
- pix_send_list
- Listar transações Pix enviadas com opções de filtro
- Filtrar por intervalo de datas, status e presença de devolução
- pix_qr_code_pay
- Pagar QR Code Pix via API
- Processar pagamentos de QR Code com informações do pagador
Gestão Pix
- pix_detail_received
- Obter detalhes do Pix recebido por e2eId
- Retorna informações da transação e devolução
- pix_received_list
- Listar transações Pix recebidas
- Filtrar por data, txid, CPF/CNPJ com suporte a paginação
- pix_devolution
- Criar devolução Pix (estorno)
- Entrada: e2eId, ID da devolução e valor
- pix_detail_devolution
- Obter detalhes da devolução por e2eId e ID da devolução
Webhooks
- pix_config_webhook
- Configurar URL do webhook para notificações Pix
- Definir endpoint do webhook para notificações de transação
- pix_detail_webhook
- Obter detalhes da configuração do webhook por chave Pix
- pix_list_webhook
- Listar todos os webhooks configurados
- pix_delete_webhook
- Excluir configuração de webhook por chave Pix
- pix_resend_webhook
- Reenviar notificações de webhook para transações específicas
Gestão de Conta
- get_account_balance
- Obter saldo atual da conta
- Retorna informações de saldo disponível
- update_account_config
- Atualizar configurações PIX da conta
- Configurar definições de chave PIX, restrições e preferências de webhook
- list_account_config
- Listar configurações atuais da conta
- Retorna todas as configurações PIX e da conta
Gestão de EVP (Chaves Aleatórias)
- pix_create_evp
- Criar nova chave PIX aleatória (EVP)
- Gera chave aleatória para transações PIX
- pix_list_evp
- Listar todas as chaves EVP registradas
- pix_delete_evp
- Excluir chave EVP específica
MED
- med_list
- Listar infrações MED abertas contra a conta
- Filtrar por intervalo de datas com paginação
Funcionalidades Adicionais
- pix_get_receipt
- Obter comprovante da transação (formato PDF)
- Gerar comprovante por e2eId, txid ou rtrId
Uso com Claude Desktop
Adicione a seguinte configuração ao arquivo claude_desktop_config.json:
{
"mcpServers": {
"mcp-server-efi": {
"command": "npx",
"args": [
"mcp-server-efi",
"--sandbox=false",
"--client-id=seu_client_id",
"--client-secret=seu_client_secret",
"--certificate=seu_certificado_base64",
"--validate-mtls=true"
]
}
}
}
Uso com Docker no Claude Desktop
{
"mcpServers": {
"mcp-server-efi": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mcp-server-efi",
"--sandbox=false",
"--client-id=seu_client_id",
"--client-secret=seu_client_secret",
"--certificate=seu_certificado_base64",
"--validate-mtls=true"
]
}
}
}
Uso com VS Code
Para instalação manual, adicione o seguinte às configurações do VS Code ou .vscode/mcp.json:
NPX
{
"mcp": {
"servers": {
"mcp-server-efi": {
"command": "npx",
"args": [
"mcp-server-efi",
"--sandbox=false",
"--client-id=seu_client_id",
"--client-secret=seu_client_secret",
"--certificate=seu_certificado_base64",
"--validate-mtls=true"
]
}
}
}
}
Docker
{
"mcp": {
"servers": {
"mcp-server-efi": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mcp-server-efi",
"--sandbox=false",
"--client-id=seu_client_id",
"--client-secret=seu_client_secret",
"--certificate=seu_certificado_base64",
"--validate-mtls=true"
]
}
}
}
}
Build
Desenvolvimento Local
npm install
npm run build
npm start
Build Docker
docker build -t mcp-server-efi .
Notas de Segurança
- Sempre use credenciais de produção (
sandbox=false) para transações reais - Mantenha seus certificados e credenciais seguros
- Habilite a validação mTLS (
validate-mtls=true) para segurança do webhook - Todas as chamadas da API são autenticadas usando a implementação OAuth 2.0 do Efí Pay