bank-of-sajo
Provides tools for sending PIX transfers between accounts, charging customers via PIX, paying bills with PIX, and searching PIX transactions.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@bank-of-sajoCheck the balance and recent transactions for account ACC-1001"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Bank of Sajo
Entidade banco da cidade GTA7 Lab. Guarda as contas e o histórico de transações da cidade — PIX, cartão, maquininha de comerciante, empréstimo, câmbio e ações — e expõe consulta de saldo, busca de transações, PIX e simulação de crédito como MCP tools.
Projeto Next.js independente, sem banco de dados. Repo proprio dentro da org GTA7-Lab; a cidade em GTA7-Lab/gta7-lab consome esta entidade pelo endpoint MCP publicado.
Rodar localmente
git clone https://github.com/GTA7-Lab/bank-of-sajo.git
cd bank-of-sajo
npm install
npm run devUI | http://localhost:3000 — página institucional, sem dados |
MCP |
|
Manifesto |
|
Related MCP server: Copiloto Financeiro MCP Server
MCP tools
As respostas são escritas para gente ler — conversa, sem jargão. Os dados vão junto em
structuredContent, que é o que o Core Orchestrator consome.
Clientes (CRUD completo)
tool | o que faz |
| cadastra pessoa ou empresa |
| dados do cliente e as contas dele |
| lista, com filtro por nome, bairro ou perfil |
| muda nome, bairro, perfil ou gerente |
| encerra o cadastro; recusa se houver saldo |
Contas e dinheiro
tool | o que faz |
| abre conta corrente, poupança, empresarial ou de investimento |
| saldo, titular e últimas movimentações |
| busca por conta, tipo, valor, período ou descrição |
| PIX entre contas, conferindo o saldo |
| paga contas e boletos — credita o destinatário se ele for da cidade |
| maquininha: o negócio cobra um cliente por PIX, débito ou crédito |
| emite cartão de débito ou crédito |
Catálogo — restrito pela palavra mágica
create_product, update_product, delete_product, create_service, update_service,
delete_service mexem no que o banco oferece, então só rodam com o parâmetro magicWord.
Sem ele — ou com a palavra errada — a tool recusa educadamente, sem erro técnico.
A palavra padrão é abre-te-sajo. Para trocar, defina a variável de ambiente
BANK_MAGIC_WORD no projeto da Vercel. Vale dizer o que isso é e o que não é: uma trava
contra alteração acidental do catálogo, não autenticação — o endpoint é público e a
palavra viaja como parâmetro comum.
Comércio da cidade
charge_customer é a maquininha do banco: o restaurante, o cinema ou o supermercado
cobram um morador e o dinheiro cai na conta na hora, já descontada a taxa do lojista —
PIX sem taxa, débito 1,5%, crédito 3,5% (em merchantFees, no JSON).
pay_bill fecha o outro lado: quando quem recebe também tem conta aqui, o valor entra
de verdade na conta dele; fornecedor de fora do banco fica só como saída.
Todas as tools que pedem uma conta aceitam número (ACC-1004), chave PIX ou o nome
do cliente — então "cobre a Carla pela Padaria Pão da Vila" funciona sem ninguém decorar
número de conta.
Produtos
tool | o que faz |
| os 21 serviços do banco, por categoria |
| linhas de crédito e opções de investimento |
| simula a parcela, sem contratar |
| contrata financiamento de imóvel, veículo, solar, pessoal ou empresarial |
| aplica em poupança, CDB, fundo de ações ou FIDC |
Testar todas contra um servidor rodando:
npm run test:mcp # localhost:3000
MCP_URL=https://<dominio>/api/mcp npm run test:mcp # deployConectar no Claude Code (a pasta já traz .mcp.json apontando para localhost):
claude mcp add --transport http bank-of-sajo http://localhost:3000/api/mcpOs dados só saem por MCP
Não existe endpoint HTTP que devolva conta, cliente, saldo ou transação, e a página não lista nada disso — é institucional. Quem quiser os dados usa as tools, onde as regras do banco valem: saldo conferido antes de um PIX, cadastro que não se encerra com dinheiro em conta, catálogo protegido por palavra mágica.
/api/accounts e /api/transactions existiram e foram removidos por essa razão.
Dados
Tudo em data/bank.json: clientes, contas, transações, cartões,
produtos de crédito e investimento, ações e parceiros da cidade.
O JSON não guarda saldo. Ele é derivado — openingBalance + créditos − débitos — em
getBalance(), então saldo e extrato nunca divergem, inclusive depois de um send_pix.
Transações escritas por send_pix ficam em memória: o disco é somente leitura em
serverless, então elas se perdem quando a instância recicla. Suficiente para a demo, e é o
primeiro ponto a trocar quando a cidade precisar de persistência real.
Integração com o Core
A entidade se descreve em manifest.json (id, nome, transporte, tools) e
serve o mesmo conteúdo em GET /api/manifest.
A entidade está registrada em core/data/entities.json
sob a tag finance, cujas palavras-chave vivem em
core/src/lexicon.ts — banco, saldo, extrato, pix, boleto,
empréstimo, câmbio, investimento e afins.
Só search_transactions entra como kind: "search", que é o único tipo que o Core chama
por conta própria. get_account_balance, simulate_loan e principalmente send_pix
ficam como other: movimentar dinheiro precisa de conta de origem, destino e valor
explícitos, não de uma frase solta interpretada pelo orquestrador.
Como o Core manda a frase inteira do pedido como termo de busca, searchTransactions
aceita tanto a expressão completa quanto qualquer palavra relevante dela — é o que faz
"ver o extrato de pix da cidade" devolver as transações de PIX em vez de nada.
Deploy
Projeto Next.js padrão, sem variáveis de ambiente. Na Vercel, o Root Directory é a raiz
do repo. Em produção: https://gta7-lab-bank-tbone3.vercel.app — o MCP fica em
/api/mcp, que é o endpoint registrado
no Core.
Arquivos
data/bank.json dados da entidade
lib/bank.ts consultas, saldo derivado, PIX e simulação de crédito
app/api/mcp/route.ts servidor MCP (mcp-handler)
app/api/*/route.ts REST: accounts, transactions, manifest
app/page.tsx UI: contas e extrato filtrável
scripts/test-mcp.mjs cliente de teste das toolsTool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Connect your Player's Bank account to AI via Brazil's Open Finance: balances, statements, cards, inv
Brazilian Open Finance MCP — 30+ banks (Itaú, Nubank, etc.) to Claude/Cursor. Read-only.
Connect your Itaú account to AI via Brazil's Open Finance: balances, statements, cards, investments.
The Mercado Pago MCP Server implements the Model Context Protocol to provide AI agents and LLMs with access to Mercado Pago's APIs and tools within compatible development environments. It acts as an intermediary that translates Mercado Pago resources into executable functions (tools) that AI applications can invoke to perform actions and automate flows. The server simplifies integration, enables using documentation to implement or improve code, and optimizes operations through natural language interactions without manual implementations.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to manage personal finances through MCP tools for transaction management, spending analytics, and goal tracking.1-
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to manage personal finances for Brazilian users through MCP tools, including categorizing transactions, reconciling debts, checking cash-flow projections, and adjusting budgets, with integration to Open Finance Brasil via Pluggy.-
- AlicenseNot gradedqualityDmaintenanceConnects InfinitePay accounts via Open Finance Brasil to query balances, statements, credit card bills, investments, and loans using natural language through any MCP client. Read-only and LGPD compliant.MIT
- AlicenseNot gradedqualityDmaintenanceConnects Player's Bank via Open Finance Brasil to AI assistants, enabling natural language queries about balances, statements, card bills, and investments, read-only.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/GTA7-Lab/bank-of-sajo'
If you have feedback or need assistance with the MCP directory API, please join our Discord server