A community-driven registry for Claude, Cursor, Windsurf, Cline & more. Not affiliated with Anthropic.
Are you the author? Sign in to claim
AI-powered group finance assistant using MCP architecture, Gemini LLM and Streamlit.
Assistente inteligente de finanças para grupos utilizando IA generativa, arquitetura MCP (Model Context Protocol), integração com Gemini LLM, banco de dados MySQL e interface conversacional construída com Streamlit.
Projeto desenvolvido como portfólio técnico para demonstrar habilidades em AI Agents, LLM Engineering, Arquitetura Backend, Integração de Dados e Design de Software.
Grupos que compartilham despesas — como famílias, repúblicas ou times — frequentemente perdem o controle dos gastos por falta de uma forma simples de consultar e entender os dados financeiros. Planilhas são difíceis de navegar e dashboards exigem que o usuário saiba onde clicar.
Este assistente permite que qualquer pessoa do grupo faça perguntas em linguagem natural como "Quanto gastamos em janeiro?" ou "De quanto foram os nossos gastos com leite este mês?" e receba respostas claras e instantâneas — sem precisar abrir uma planilha ou montar um filtro.
Este projeto demonstra a construção de um Agente de IA completo, capaz de responder perguntas sobre gastos financeiros utilizando dados reais armazenados em banco de dados.
O sistema integra:



Fluxo de comunicação: Do input do usuário em linguagem natural à execução de Tools SQL via protocolo MCP.
.
├── app
├── assets
├── database
├── docs
├── llm
├── mcp_server
├── shared
├── tests
└── utils
O servidor MCP expõe ferramentas específicas que permitem ao LLM interagir com o banco de dados de forma segura. Abaixo estão as capacidades implementadas em mcp_server/tools/:
| Ferramenta (Tool) | Descrição | Tecnologia |
|---|---|---|
| Sumário de Despesas | Consolida gastos por item e/ou pelo período solicitado. | Python / MCP SDK |
| Listagem de Itens | Recupera detalhes de despesas com busca flexível (LIKE). | SQL (MySQL) |
| Camada de Dados | Interface de conexão e execução de queries parametrizadas. | MySQL Connector |
| Interpretação Natural | Traduza dados brutos em informações financeiras amigáveis. | Gemini Prompt Eng. |
Raciocínio do Agente: O sistema utiliza uma abordagem de Chain of Thought (Cadeia de Pensamento), onde o agente identifica a intenção do usuário, extrai entidades e decide qual Tool MCP é necessária para buscar os dados.
Engenharia de Prompt: Implementação de técnicas de Few-Shot Prompting e instruções de sistema (System Instructions) para garantir que o LLM mantenha o foco financeiro e formate as respostas com precisão.
Protocolo MCP: A escolha pelo Model Context Protocol garante que a lógica de acesso aos dados (SQL) esteja desacoplada da lógica do modelo, facilitando a troca de provedores de LLM no futuro.
st.cache_resourceVocê pode rodar o projeto de duas formas: com Docker (recomendado) ou com MySQL local.
Pré-requisitos: Docker instalado e uma chave da API do Gemini. Obtenha sua chave gratuitamente em: https://aistudio.google.com/app/apikey
git clone https://github.com/LuGodoy/finance-agent-mcp.git
cd finance-agent-mcp
docker compose up -d
Isso cria o banco, a tabela e insere dados de exemplo automaticamente.
cp .env.example .env
Abra o .env e preencha apenas:
GEMINI_API_KEY=sua_chave_aqui
As demais variáveis já estão configuradas para o Docker.
make install
make run
Acesse http://localhost:8501 — o agente já estará funcionando com dados. ✅
git clone https://github.com/LuGodoy/finance-agent-mcp.git
cd finance-agent-mcp
Entre no MySQL e execute:
CREATE DATABASE personal_finance;
USE personal_finance;
CREATE TABLE transactions (
id INT AUTO_INCREMENT PRIMARY KEY,
nome_item VARCHAR(255) NOT NULL,
preco_unitario DECIMAL(10,2) NOT NULL,
quantidade DECIMAL(10,3) NOT NULL,
data_compra DATE NOT NULL
);
cp .env.example .env
Edite o .env ajustando as credenciais do seu MySQL local:
GEMINI_API_KEY=sua_chave_aqui
DB_HOST=localhost
DB_USER=seu_usuario
DB_PASSWORD=sua_senha
make install
make run
A aplicação estará disponível em http://localhost:8501/. ✅
make mcp
make test
Este projeto está em desenvolvimento ativo. Próximas evoluções planejadas:
Este erro ocorre quando o serviço MySQL não está em execução. Utilize o comando de acordo com o seu sistema operacional:
macOS (via Homebrew)
brew services start mysql
# ou, para reiniciar:
brew services restart mysql
🐧 Linux
sudo systemctl start mysql
# ou, para reiniciar:
sudo systemctl restart mysql
⊞ Windows (PowerShell como Administrador)
net start mysql
.envLuciene Godoy
AI Agents | Data Science | Software Engineering | Matemática
Stack: Python • MCP • Google Gemini • MySQL • Streamlit
Este projeto foi desenvolvido para fins educacionais e demonstração de portfólio.
Desenvolvido com 💙 por Luciene Godoy
"Transformando dados em decisões através de conversação inteligente"
Pocket Flow: Codebase to Tutorial
A Comprehensive Benchmark to Evaluate LLMs as Agents (ICLR'24)
💻 A curated list of papers and resources for multi-modal Graphical User Interface (GUI) agents.
npx CLI installing 100+ agents, commands, hooks, and integrations in one command