Skip to main content
Glama
PranaPragada7

Expense Tracker MCP Server

Expense Tracker Agent

CI Python Streamlit SQLite MCP

Ein KI-gestützter persönlicher Ausgaben-Tracker, der natürlichsprachliche Anfragen in strukturierte Datenbankoperationen umwandelt. Das Projekt kombiniert eine responsive Streamlit-Oberfläche, Claude-Toolnutzung, einen MCP-Server und lokale SQLite-Speicherung.

Was dieses Projekt demonstriert

  • Agentischer, mehrstufiger Tool-Einsatz für reale Datenbank-Workflows

  • Eine saubere Trennung zwischen Sprachmodell, MCP-Transport und Datenebene

  • Eine direkte Claude-Toolaufruf-Schleife ohne Orchestrierungsframework

  • Eingabevalidierung, eingeschränktes Assistentenverhalten und sichere lokale Datenverarbeitung

  • Automatisierte Smoke-Tests und kontinuierliche Integration

  • Eine responsive Benutzeroberfläche für Eingabe, Konversation und Ausgaben-Einblicke

Related MCP server: Expense Tracker MCP Server

Produktfunktionen

  • Ausgaben über ein Formular oder eine natürlichsprachliche Anfrage hinzufügen

  • Datum, Betrag, Kategorie und Beschreibung für jede Transaktion speichern

  • Ausgaben über MCP-Tools suchen, aktualisieren, löschen und zusammenfassen

  • Gesamtbeträge, aktuelle Transaktionen und Ausgaben auf Kategorieebene anzeigen

  • Den fokussierten Finanzassistenten nach datenbankgestützten Erkenntnissen fragen

  • Ausgabendaten lokal in einer SQLite-Datei speichern

Architektur

flowchart LR
    U[User] --> UI[Streamlit or CLI]
    UI --> A[Claude agent]
    A -->|Tool request| C[MCP client]
    C -->|stdio| S[MCP server]
    S -->|DB-API 2.0| D[(SQLite)]
    D --> S
    S -->|Structured result| A
    A --> UI

Claude greift nie direkt auf SQLite zu. Es wählt aus den MCP-Tool-Schemata aus, und der Server führt jede validierte Datenbank-Lese- und Schreiboperation durch.

Beispielhafte Agent-Workflows

Benutzerabsicht

Tool-Sequenz

Ausgabe für Mittagessen hinzufügen

find_categoryadd_expense

Gestern getankten Betrag ändern

search_expensesupdate_expense

Übereinstimmenden Kauf löschen

search_expensesdelete_expense

Monatliche Ausgaben überprüfen

monthly_summary

Technologie

Schicht

Technologie

Schnittstelle

Streamlit, pandas

Sprachmodell

Anthropic Claude

Agentenintegration

Direct Messages API Tool-Use-Loop

Tool-Protokoll

Model Context Protocol über stdio

Daten

SQLite über Python DB-API 2.0

Qualität

pytest, Black, GitHub Actions

Schnellstart

Voraussetzungen:

  • Python 3.11 oder neuer

  • Ein Anthropic-API-Schlüssel für den Assistenten

Virtuelle Umgebung erstellen und aktivieren:

python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt

Für macOS oder Linux die Umgebung aktivieren mit:

source .venv/bin/activate

Lokale Umgebungsdatei erstellen und ANTHROPIC_API_KEY hinzufügen:

Copy-Item .env.example .env

Datenbankschema und Startkategorien erstellen, dann die App starten:

python db_setup.py
streamlit run streamlit_app.py

Der MCP-Server verwendet stdio und startet automatisch, wenn ein Client verbindet.

Qualitätsprüfungen

Entwicklungsabhängigkeiten installieren und die gleichen Prüfungen wie in der CI ausführen:

python -m pip install -r requirements-dev.txt
python -m black --check .
python -m compileall -q agent.py client_test.py db_setup.py mcp_client.py server.py streamlit_app.py
python -m pytest -q
python client_test.py

client_test.py führt alle 18 MCP-Tools aus und entfernt seine temporären Datensätze, wenn der Smoke-Test beendet ist.

MCP-Tools

Der Server stellt 18 Tools bereit:

  • Kategorienverwaltung: list_categories, add_category, rename_category, delete_category, get_category_name

  • Ausgabenverwaltung: add_expense, update_expense, delete_expense, list_expenses, search_expenses, expenses_by_category, total_expense_by_category, total_expense, monthly_summary

  • Unterstützende Abfragen: current_date, find_category, get_expense, expenses_between

Projektstruktur

Pfad

Zweck

streamlit_app.py

Formular-, Assistenten- und Einblicke-Schnittstelle

agent.py

Claude-Toolaufruf-Schleife und Befehlszeilenschnittstelle

server.py

Validierte SQLite-Operationen, die als MCP-Tools bereitgestellt werden

mcp_client.py

Wiederverwendbarer stdio-MCP-Client

db_setup.py

Schema- und Startkategorie-Initialisierung

client_test.py

End-to-End-MCP-Tool-Smoke-Test

tests/

Automatisierte Datenbank- und UI-Prüfungen

.github/workflows/ci.yml

Continuous-Integration-Pipeline

Konfiguration

Variable

Erforderlich

Standard

ANTHROPIC_API_KEY

Ja

ANTHROPIC_MODEL

Nein

claude-sonnet-5

AGENT_EFFORT

Nein

medium

EXPENSE_DB

Nein

expenses.db neben den Quelldateien

Die .env-Datei und expenses.db sind von Git ausgeschlossen. API-Schlüssel und persönliche Ausgabendaten bleiben außerhalb des Repositorys.

Um die Datenbank mit einer leeren Ausgabentabelle neu zu erstellen:

python db_setup.py --reset
F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables users to track personal expenses through natural language interactions with comprehensive category support and financial summaries. Provides both local and remote MCP server options with SQLite storage for fast expense management operations.
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to manage personal expenses through natural conversation, supporting expense tracking, categorization, filtering, and financial summaries. Uses SQLite database to store expense records with full CRUD operations for comprehensive personal finance management.
    1
  • F
    license
    C
    quality
    D
    maintenance
    Enables personal expense management with SQLite storage, allowing users to add, update, delete, list, and summarize expenses by category through natural language interactions.
    5
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables management of expenses via SQLite database, including adding, listing, updating, deleting, filtering, and summing expenses through natural language.

View all related MCP servers

Related MCP Connectors

  • Log, query, and edit expenses, budgets, and accounts in Ledgy from any MCP-compatible AI assistant.

  • GibsonAI MCP server: manage your databases with natural language

  • Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.

View all MCP Connectors

Latest Blog Posts

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/PranaPragada7/Expense_Tracker'

If you have feedback or need assistance with the MCP directory API, please join our Discord server