{"name":"Salomão MCP Server","version":"1.0.0","protocolVersion":"2026-07-28","description":"Ferramentas estruturadas para agentes de IA integrarem com o Salomão.","baseUrl":"https://salomao.ia.br/api/v1/mcp","authentication":{"type":"Bearer Token","description":"Envie Authorization: Bearer <token>. Use JWT temporário do login ou token de API com prefixo slm_.","example":{"header":"Authorization","value":"Bearer slm_SEU_TOKEN"}},"transports":[{"name":"Streamable HTTP","endpoint":"POST /api/v1/mcp","description":"Protocolo MCP oficial (JSON-RPC 2.0). Use esta URL no cliente MCP com Authorization Bearer."},{"name":"REST (compatibilidade)","endpoint":"POST /api/v1/mcp","description":"Corpo: { \"tool\": \"<nome>\", \"arguments\": { ... } } — para n8n/WhatsApp sem cliente MCP."}],"publicOrigin":"https://salomao.ia.br","apiBaseUrl":"https://salomao.ia.br/api/v1","tools":[{"name":"listar_irmaos","description":"Lista irmãos de uma loja maçônica com filtros opcionais","whenToUse":"Localizar irmãos por loja, status ou texto antes de outra operação.","equivalentRest":["GET /api/v1/irmaos"],"inputSchema":{"type":"object","properties":{"lojaId":{"description":"ID da loja para filtrar","type":"string"},"search":{"description":"Busca por nome, CIM ou email","type":"string"},"ativo":{"description":"Filtrar por status (default: true — só ativos)","type":"boolean"},"page":{"description":"Página (default: 1)","type":"number"},"pageSize":{"description":"Itens por página (default: 20)","type":"number"}},"additionalProperties":false},"parameters":{"lojaId":{"type":"string","required":false,"description":"ID da loja para filtrar"},"search":{"type":"string","required":false,"description":"Busca por nome, CIM ou email"},"ativo":{"type":"boolean","required":false,"description":"Filtrar por status (default: true — só ativos)"},"page":{"type":"number","required":false,"description":"Página (default: 1)"},"pageSize":{"type":"number","required":false,"description":"Itens por página (default: 20)"}},"example":{"lojaId":"<uuid>","ativo":true,"page":1}},{"name":"buscar_irmao","description":"Busca detalhes completos de um irmão pelo ID, CIM ou telefone WhatsApp (aceita +, DDI e 9º dígito opcionais)","whenToUse":"Carregar o cadastro de um irmão conhecido por ID, CIM ou telefone.","equivalentRest":["GET /api/v1/irmaos/:id"],"inputSchema":{"type":"object","properties":{"id":{"description":"UUID do irmão","type":"string"},"cim":{"description":"CIM do irmão","type":"string"},"telefone":{"description":"Telefone WhatsApp (DDI + DDD + número, sem +). Aceita espaços e com/sem 9º dígito. Ex: 556788776655","type":"string"}},"additionalProperties":false},"parameters":{"id":{"type":"string","required":false,"description":"UUID do irmão"},"cim":{"type":"string","required":false,"description":"CIM do irmão"},"telefone":{"type":"string","required":false,"description":"Telefone WhatsApp (DDI + DDD + número, sem +). Aceita espaços e com/sem 9º dígito. Ex: 556788776655"}},"example":{"cim":"123456"}},{"name":"identificar_irmao","description":"Identifica se um telefone WhatsApp pertence a um irmão ativo cadastrado. Use no início da conversa para autenticar o irmão. Aceita DDI + DDD + número sem + e sem o 9º dígito (ex.: 556788776655), além de +, espaços e JID Baileys.","whenToUse":"Primeiro passo de uma conversa WhatsApp: validar o remetente ativo.","equivalentRest":["POST /api/v1/whatsapp/validar-telefone"],"inputSchema":{"type":"object","properties":{"telefone":{"type":"string","description":"Telefone do WhatsApp sem + (ex: 556788776655 = DDI + DDD + número sem 9º dígito, 5511999887766, 11999887766 ou JID Baileys)"}},"required":["telefone"],"additionalProperties":false},"parameters":{"telefone":{"type":"string","required":true,"description":"Telefone do WhatsApp sem + (ex: 556788776655 = DDI + DDD + número sem 9º dígito, 5511999887766, 11999887766 ou JID Baileys)"}},"example":{"telefone":"556788776655"}},{"name":"listar_lojas","description":"Lista lojas maçônicas com informações de potência","whenToUse":"Descobrir a loja correta para filtros e operações.","equivalentRest":["GET /api/v1/lojas"],"inputSchema":{"type":"object","properties":{"potenciaId":{"description":"ID da potência para filtrar","type":"string"},"search":{"description":"Busca por nome ou oriente","type":"string"}},"additionalProperties":false},"parameters":{"potenciaId":{"type":"string","required":false,"description":"ID da potência para filtrar"},"search":{"type":"string","required":false,"description":"Busca por nome ou oriente"}},"example":{"search":"Salomão"}},{"name":"buscar_loja","description":"Busca detalhes de uma loja pelo ID, incluindo lista de irmãos","whenToUse":"Consultar uma loja conhecida e seus irmãos.","equivalentRest":["GET /api/v1/lojas/:id"],"inputSchema":{"type":"object","properties":{"id":{"type":"string","description":"UUID da loja"}},"required":["id"],"additionalProperties":false},"parameters":{"id":{"type":"string","required":true,"description":"UUID da loja"}},"example":{"id":"<uuid>"}},{"name":"listar_potencias","description":"Lista todas as potências maçônicas cadastradas","whenToUse":"Descobrir potências para filtrar lojas.","equivalentRest":["GET /api/v1/potencias"],"inputSchema":{"type":"object","properties":{"search":{"description":"Busca por nome ou sigla","type":"string"}},"additionalProperties":false},"parameters":{"search":{"type":"string","required":false,"description":"Busca por nome ou sigla"}},"example":{}},{"name":"consultar_financeiro","description":"Consulta lançamentos do caixa da loja (receitas, despesas, doações). Não é o extrato pessoal do irmão — use consultar_extrato_irmao para isso.","whenToUse":"Consultar lançamentos do caixa; não usar como extrato pessoal.","equivalentRest":["GET /api/v1/financeiro"],"inputSchema":{"type":"object","properties":{"potenciaId":{"description":"ID da potência para filtrar","type":"string"},"lojaId":{"description":"ID da loja","type":"string"},"irmaoId":{"description":"ID do irmão","type":"string"},"tipo":{"description":"Tipo da transação","type":"string","enum":["RECEITA","DESPESA","DOACAO"]},"status":{"description":"Status da transação","type":"string","enum":["PENDENTE","PAGO","CANCELADO","ATRASADO"]},"search":{"description":"Filtra por descrição original ou título alternativo","type":"string"}},"additionalProperties":false},"parameters":{"potenciaId":{"type":"string","required":false,"description":"ID da potência para filtrar"},"lojaId":{"type":"string","required":false,"description":"ID da loja"},"irmaoId":{"type":"string","required":false,"description":"ID do irmão"},"tipo":{"type":"string","required":false,"description":"Tipo da transação","enum":["RECEITA","DESPESA","DOACAO"]},"status":{"type":"string","required":false,"description":"Status da transação","enum":["PENDENTE","PAGO","CANCELADO","ATRASADO"]},"search":{"type":"string","required":false,"description":"Filtra por descrição original ou título alternativo"}},"example":{"lojaId":"<uuid>","tipo":"RECEITA"}},{"name":"listar_contas_bancarias","description":"Lista contas bancárias cadastradas, opcionalmente filtradas por loja","whenToUse":"Descobrir contas disponíveis para operações financeiras.","equivalentRest":["GET /api/v1/contas-bancarias"],"inputSchema":{"type":"object","properties":{"lojaId":{"description":"ID da loja para filtrar","type":"string"},"ativa":{"description":"Filtrar por status ativa/inativa","type":"boolean"}},"additionalProperties":false},"parameters":{"lojaId":{"type":"string","required":false,"description":"ID da loja para filtrar"},"ativa":{"type":"boolean","required":false,"description":"Filtrar por status ativa/inativa"}},"example":{"lojaId":"<uuid>","ativa":true}},{"name":"estatisticas_dashboard","description":"Retorna estatísticas gerais do sistema","whenToUse":"Obter uma visão agregada rápida do sistema.","equivalentRest":["GET /api/v1/dashboard"],"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"parameters":{},"example":{}},{"name":"listar_mensalidades","description":"Lista mensalidades de uma loja com itens de composição e irmãos vinculados","whenToUse":"Listar cobranças e composição de uma loja.","equivalentRest":["GET /api/v1/mensalidades"],"inputSchema":{"type":"object","properties":{"lojaId":{"description":"ID da loja para filtrar","type":"string"},"search":{"description":"Busca por nome","type":"string"}},"additionalProperties":false},"parameters":{"lojaId":{"type":"string","required":false,"description":"ID da loja para filtrar"},"search":{"type":"string","required":false,"description":"Busca por nome"}},"example":{"lojaId":"<uuid>"}},{"name":"consultar_mensalidades_irmao","description":"Consulta o relatório de mensalidades de um irmão, mostrando o que foi cobrado, pago e saldo (crédito/débito)","whenToUse":"Comparar cobranças, pagamentos e saldo por irmão/período.","equivalentRest":["GET /api/v1/mensalidades/relatorio"],"inputSchema":{"type":"object","properties":{"lojaId":{"type":"string","description":"ID da loja (obrigatório)"},"irmaoId":{"description":"ID do irmão (opcional, se omitido retorna todos)","type":"string"},"dataInicio":{"description":"Data início do período (YYYY-MM-DD)","type":"string"},"dataFim":{"description":"Data fim do período (YYYY-MM-DD)","type":"string"}},"required":["lojaId"],"additionalProperties":false},"parameters":{"lojaId":{"type":"string","required":true,"description":"ID da loja (obrigatório)"},"irmaoId":{"type":"string","required":false,"description":"ID do irmão (opcional, se omitido retorna todos)"},"dataInicio":{"type":"string","required":false,"description":"Data início do período (YYYY-MM-DD)"},"dataFim":{"type":"string","required":false,"description":"Data fim do período (YYYY-MM-DD)"}},"example":{"lojaId":"<uuid>","irmaoId":"<uuid>"}},{"name":"consultar_extrato_irmao","description":"Consulta o extrato financeiro completo do irmão identificado pelo telefone WhatsApp (mensalidades, depósitos, créditos, débitos e saldo). Use após identificar_irmao.","whenToUse":"Responder perguntas financeiras pessoais após identificar o telefone.","equivalentRest":["GET /api/v1/irmaos/:id/extrato"],"inputSchema":{"type":"object","properties":{"telefone":{"type":"string","description":"Telefone WhatsApp do irmão (com ou sem +, com ou sem 9º dígito)"}},"required":["telefone"],"additionalProperties":false},"parameters":{"telefone":{"type":"string","required":true,"description":"Telefone WhatsApp do irmão (com ou sem +, com ou sem 9º dígito)"}},"example":{"telefone":"5511999887766"}},{"name":"gerar_link_extrato","description":"Gera um link público temporário (10 minutos) para o irmão visualizar seu extrato de cobranças. Use quando um irmão identificado pelo WhatsApp perguntar sobre seu extrato ou mensalidades. Identifica o irmão pelo telefone do WhatsApp. O link gerado é pessoal e mostra apenas os dados do irmão solicitante.","whenToUse":"Entregar ao irmão um link temporário do extrato; envie somente a mensagem retornada.","inputSchema":{"type":"object","properties":{"telefone":{"type":"string","description":"Telefone do irmão no formato WhatsApp (código do país + DDD + número, ex: 5567999887766)"}},"required":["telefone"],"additionalProperties":false},"parameters":{"telefone":{"type":"string","required":true,"description":"Telefone do irmão no formato WhatsApp (código do país + DDD + número, ex: 5567999887766)"}},"example":{"telefone":"5511999887766"}},{"name":"gerar_link_mensalidade","description":"Gera um link público permanente para o irmão visualizar sua última mensalidade com detalhamento de valores, descontos e dados bancários para pagamento. Diferente do extrato, este link não expira. Use quando o irmão perguntar sobre o valor da mensalidade atual, desconto, ou queira dados para pagar.","whenToUse":"Entregar a última mensalidade e dados para pagamento em link permanente.","inputSchema":{"type":"object","properties":{"telefone":{"type":"string","description":"Telefone do irmão no formato WhatsApp (código do país + DDD + número, ex: 5567999887766)"}},"required":["telefone"],"additionalProperties":false},"parameters":{"telefone":{"type":"string","required":true,"description":"Telefone do irmão no formato WhatsApp (código do país + DDD + número, ex: 5567999887766)"}},"example":{"telefone":"5511999887766"}},{"name":"criar_atendimento","description":"Registra um atendimento (somente texto, sem anexos) na inbox da loja, identificado pelo telefone WhatsApp do irmão. Também notifica a equipe pelos WhatsApps configurados em Configurações.","whenToUse":"Encaminhar para a equipe uma demanda textual do irmão.","equivalentRest":["POST /api/v1/atendimentos"],"inputSchema":{"type":"object","properties":{"telefone":{"type":"string","description":"Telefone WhatsApp do irmão (com ou sem +, com ou sem 9º dígito)"},"texto":{"type":"string","description":"Mensagem do atendimento (mínimo 10 caracteres)"},"tipo":{"description":"Tipo do atendimento (default: OUTROS)","type":"string","enum":["SUPORTE","DUVIDA","PAGAMENTOS","OUTROS","SOLICITAR_EXTRATO"]}},"required":["telefone","texto"],"additionalProperties":false},"parameters":{"telefone":{"type":"string","required":true,"description":"Telefone WhatsApp do irmão (com ou sem +, com ou sem 9º dígito)"},"texto":{"type":"string","required":true,"description":"Mensagem do atendimento (mínimo 10 caracteres)"},"tipo":{"type":"string","required":false,"description":"Tipo do atendimento (default: OUTROS)","enum":["SUPORTE","DUVIDA","PAGAMENTOS","OUTROS","SOLICITAR_EXTRATO"]}},"example":{"telefone":"5511999887766","texto":"Preciso de ajuda com meu pagamento."}},{"name":"listar_creditos_irmao","description":"Lista créditos concedidos aos irmãos (trabalhos ou gastos pela loja) e o valor ainda disponível para abater em cobranças","whenToUse":"Consultar créditos concedidos e saldo ainda disponível.","equivalentRest":["GET /api/v1/creditos"],"inputSchema":{"type":"object","properties":{"lojaId":{"type":"string","description":"ID da loja (obrigatório)"},"irmaoId":{"description":"Filtrar por irmão","type":"string"},"status":{"description":"Filtrar por situação do crédito","type":"string","enum":["DISPONIVEL","PARCIAL","UTILIZADO","CANCELADO"]}},"required":["lojaId"],"additionalProperties":false},"parameters":{"lojaId":{"type":"string","required":true,"description":"ID da loja (obrigatório)"},"irmaoId":{"type":"string","required":false,"description":"Filtrar por irmão"},"status":{"type":"string","required":false,"description":"Filtrar por situação do crédito","enum":["DISPONIVEL","PARCIAL","UTILIZADO","CANCELADO"]}},"example":{"lojaId":"<uuid>","irmaoId":"<uuid>"}},{"name":"criar_credito_irmao","description":"Concede um crédito ao irmão. O crédito fica disponível até ser aplicado manualmente em uma cobrança. Informe um motivo claro, pois o irmão verá esse texto no extrato.","whenToUse":"Conceder crédito com motivo visível no extrato.","equivalentRest":["POST /api/v1/creditos"],"inputSchema":{"type":"object","properties":{"irmaoId":{"type":"string","description":"ID do irmão"},"lojaId":{"type":"string","description":"ID da loja"},"valor":{"description":"Valor do crédito em reais (omitido se itens for informado)","type":"number"},"itens":{"description":"Composição opcional (nome, valor, desconto). Se omitido, gera um item com o valor e o motivo.","type":"array","items":{"type":"object","properties":{"nome":{"type":"string","description":"Nome do item"},"valor":{"type":"number","description":"Valor do item em reais"},"desconto":{"description":"Desconto opcional","type":"number"},"descricao":{"description":"Descrição opcional","type":"string"}},"required":["nome","valor"],"additionalProperties":false}},"data":{"description":"Data do crédito (YYYY-MM-DD)","type":"string"},"motivo":{"type":"string","description":"Motivo visível no extrato (ex.: Pagou material elétrico da sede)"}},"required":["irmaoId","lojaId","motivo"],"additionalProperties":false},"parameters":{"irmaoId":{"type":"string","required":true,"description":"ID do irmão"},"lojaId":{"type":"string","required":true,"description":"ID da loja"},"valor":{"type":"number","required":false,"description":"Valor do crédito em reais (omitido se itens for informado)"},"itens":{"type":"array","required":false,"description":"Composição opcional (nome, valor, desconto). Se omitido, gera um item com o valor e o motivo."},"data":{"type":"string","required":false,"description":"Data do crédito (YYYY-MM-DD)"},"motivo":{"type":"string","required":true,"description":"Motivo visível no extrato (ex.: Pagou material elétrico da sede)"}},"example":{"irmaoId":"<uuid>","lojaId":"<uuid>","valor":100,"data":"2026-09-19","motivo":"Reembolso de material"}},{"name":"listar_debitos_irmao","description":"Lista débitos lançados na conta do irmão (valores a mais a pagar). O título aparece no extrato.","whenToUse":"Consultar valores adicionais lançados na conta do irmão.","equivalentRest":["GET /api/v1/debitos"],"inputSchema":{"type":"object","properties":{"lojaId":{"type":"string","description":"ID da loja (obrigatório)"},"irmaoId":{"description":"Filtrar por irmão","type":"string"},"status":{"description":"Filtrar por situação do débito","type":"string","enum":["ABERTO","QUITADO","CANCELADO"]}},"required":["lojaId"],"additionalProperties":false},"parameters":{"lojaId":{"type":"string","required":true,"description":"ID da loja (obrigatório)"},"irmaoId":{"type":"string","required":false,"description":"Filtrar por irmão"},"status":{"type":"string","required":false,"description":"Filtrar por situação do débito","enum":["ABERTO","QUITADO","CANCELADO"]}},"example":{"lojaId":"<uuid>","status":"ABERTO"}},{"name":"criar_debito_irmao","description":"Lança um débito na conta do irmão (título, data, detalhes e valor). Aumenta o saldo devedor enquanto estiver em aberto.","whenToUse":"Lançar valor adicional devido por um irmão.","equivalentRest":["POST /api/v1/debitos"],"inputSchema":{"type":"object","properties":{"irmaoId":{"type":"string","description":"ID do irmão"},"lojaId":{"type":"string","description":"ID da loja"},"valor":{"description":"Valor do débito em reais (omitido se itens for informado)","type":"number"},"itens":{"description":"Composição opcional (nome, valor, desconto). Se omitido, gera um item com o título e o valor.","type":"array","items":{"type":"object","properties":{"nome":{"type":"string","description":"Nome do item"},"valor":{"type":"number","description":"Valor do item em reais"},"desconto":{"description":"Desconto opcional","type":"number"},"descricao":{"description":"Descrição opcional","type":"string"}},"required":["nome","valor"],"additionalProperties":false}},"data":{"description":"Data do débito (YYYY-MM-DD)","type":"string"},"titulo":{"type":"string","description":"Título visível no extrato"},"detalhes":{"description":"Explicação do motivo (opcional)","type":"string"}},"required":["irmaoId","lojaId","titulo"],"additionalProperties":false},"parameters":{"irmaoId":{"type":"string","required":true,"description":"ID do irmão"},"lojaId":{"type":"string","required":true,"description":"ID da loja"},"valor":{"type":"number","required":false,"description":"Valor do débito em reais (omitido se itens for informado)"},"itens":{"type":"array","required":false,"description":"Composição opcional (nome, valor, desconto). Se omitido, gera um item com o título e o valor."},"data":{"type":"string","required":false,"description":"Data do débito (YYYY-MM-DD)"},"titulo":{"type":"string","required":true,"description":"Título visível no extrato"},"detalhes":{"type":"string","required":false,"description":"Explicação do motivo (opcional)"}},"example":{"irmaoId":"<uuid>","lojaId":"<uuid>","valor":50,"data":"2026-09-19","titulo":"Evento"}},{"name":"aplicar_credito_irmao","description":"Aplica (abate) um crédito disponível em uma cobrança específica do irmão. Não aplica automaticamente em outras mensalidades.","whenToUse":"Abater manualmente crédito disponível em uma cobrança específica.","equivalentRest":["POST /api/v1/creditos/:id/aplicacoes"],"inputSchema":{"type":"object","properties":{"creditoId":{"type":"string","description":"ID do crédito"},"mensalidadeIrmaoId":{"type":"string","description":"ID do vínculo irmão-cobrança (rateio) que receberá o abatimento"},"valor":{"type":"number","description":"Valor a abater (pode ser parcial)"}},"required":["creditoId","mensalidadeIrmaoId","valor"],"additionalProperties":false},"parameters":{"creditoId":{"type":"string","required":true,"description":"ID do crédito"},"mensalidadeIrmaoId":{"type":"string","required":true,"description":"ID do vínculo irmão-cobrança (rateio) que receberá o abatimento"},"valor":{"type":"number","required":true,"description":"Valor a abater (pode ser parcial)"}},"example":{"creditoId":"<uuid>","mensalidadeIrmaoId":"<uuid>","valor":50}}]}