Skip to main content
Glama
PranaPragada7

Expense Tracker MCP Server

Агент отслеживания расходов

CI Python Streamlit SQLite MCP

Персональный трекер расходов на базе ИИ, преобразующий запросы на естественном языке в структурированные операции с базой данных. Проект объединяет адаптивный интерфейс Streamlit, использование инструментов Claude, сервер MCP и локальное хранилище SQLite.

Что демонстрирует этот проект

  • Агентное, многошаговое использование инструментов для реальных рабочих процессов с базой данных

  • Чистое разделение между языковой моделью, транспортом MCP и уровнем данных

  • Прямой цикл вызова инструментов Claude без оркестровочного фреймворка

  • Валидация ввода, ограниченное поведение ассистента и безопасная обработка локальных данных

  • Автоматизированные дымовые тесты и непрерывная интеграция

  • Адаптивный пользовательский интерфейс для ввода данных, диалогов и анализа расходов

Related MCP server: Expense Tracker MCP Server

Возможности продукта

  • Добавление расходов через форму или запрос на естественном языке

  • Хранение даты, суммы, категории и описания для каждой транзакции

  • Поиск, обновление, удаление и сводка расходов через инструменты MCP

  • Просмотр итогов, последних транзакций и расходов по категориям

  • Возможность задать вопросы финансовому ассистенту для получения анализа на основе базы данных

  • Локальное хранение данных о расходах в файле SQLite

Архитектура

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 никогда не обращается к SQLite напрямую. Он выбирает из схем инструментов MCP, а сервер выполняет каждую проверенную операцию чтения и записи в базу данных.

Примеры агентных рабочих процессов

Намерение пользователя

Последовательность инструментов

Добавить расход на обед

find_categoryadd_expense

Изменить сумму вчерашней заправки

search_expensesupdate_expense

Удалить подходящую покупку

search_expensesdelete_expense

Просмотреть ежемесячные расходы

monthly_summary

Технологии

Уровень

Технология

Интерфейс

Streamlit, pandas

Языковая модель

Anthropic Claude

Агентная интеграция

Цикл использования инструментов через Direct Messages API

Протокол инструментов

Model Context Protocol через stdio

Данные

SQLite через Python DB-API 2.0

Качество

pytest, Black, GitHub Actions

Быстрый старт

Требования:

  • Python 3.11 или новее

  • Ключ API Anthropic для ассистента

Создайте и активируйте виртуальное окружение:

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

Для macOS или Linux активируйте окружение с помощью:

source .venv/bin/activate

Создайте локальный файл окружения и добавьте ANTHROPIC_API_KEY:

Copy-Item .env.example .env

Создайте схему базы данных и начальные категории, затем запустите приложение:

python db_setup.py
streamlit run streamlit_app.py

Сервер MCP использует stdio и запускается автоматически при подключении клиента.

Проверки качества

Установите зависимости для разработки и запустите те же проверки, что используются в CI:

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 выполняет все 18 инструментов MCP и удаляет свои временные записи после завершения дымового теста.

Инструменты MCP

Сервер предоставляет 18 инструментов:

  • Управление категориями: list_categories, add_category, rename_category, delete_category, get_category_name

  • Управление расходами: add_expense, update_expense, delete_expense, list_expenses, search_expenses, expenses_by_category, total_expense_by_category, total_expense, monthly_summary

  • Вспомогательные запросы: current_date, find_category, get_expense, expenses_between

Структура проекта

Путь

Назначение

streamlit_app.py

Интерфейс форм, ассистента и аналитики

agent.py

Цикл вызова инструментов Claude и интерфейс командной строки

server.py

Проверенные операции SQLite, представленные как инструменты MCP

mcp_client.py

Многоразовый клиент MCP через stdio

db_setup.py

Инициализация схемы и начальных категорий

client_test.py

Сквозной дымовой тест инструментов MCP

tests/

Автоматизированные проверки базы данных и интерфейса

.github/workflows/ci.yml

Конвейер непрерывной интеграции

Конфигурация

Переменная

Обязательна

Значение по умолчанию

ANTHROPIC_API_KEY

Да

ANTHROPIC_MODEL

Нет

claude-sonnet-5

AGENT_EFFORT

Нет

medium

EXPENSE_DB

Нет

expenses.db рядом с исходными файлами

Файл .env и expenses.db исключены из Git. Ключи API и личные данные о расходах остаются за пределами репозитория.

Чтобы пересоздать базу данных с пустой таблицей расходов:

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