Skip to main content
Glama
akshay0101

Expense Tracker MCP Server

by akshay0101

Expense Tracker MCP Server

An asynchronous Model Context Protocol (MCP) server built with Python and FastMCP to log and track personal expenses inside a local SQLite database with strict category/subcategory checks.

Features

  • SQLite Database Backend: Logs expenses locally in expenses.db using aiosqlite.

  • Asynchronous Execution: Fully utilizes asyncio and async database connections.

  • Categorization: Validates categories and subcategories against a custom JSON hierarchy (categories.json).

  • Exposed Tools:

    • add_expense: Add a new transaction (validates amount, category, and dates).

    • get_expenses: View matching logs with optional category, subcategory, start date, and end date filters.

    • get_expense_summary: View spent totals, item count, and percentages grouped by category.

    • delete_expense: Remove transaction logs by database ID.

  • Exposed Resources:

    • expense://categories: Returns the JSON representation of categories and their subcategories.

    • expense://categories/{category}/subcategories: Returns subcategories for a given category in JSON format.

Related MCP server: Expense Tracker MCP Server

Files Structure

  • main.py: Server entrypoint containing initialization, SQLite queries, MCP tools, and MCP resource declarations.

  • categories.json: Configuration file specifying categories and subcategories.

  • pyproject.toml: Package configuration with metadata and dependency requirements (fastmcp and aiosqlite).

  • .gitignore: Configured to ignore virtual environments, cache directories, and local database files.

Installation

Ensure you have uv installed.

To sync dependencies:

uv sync

Running the Server

To start the MCP server locally:

uv run python main.py

Development and Testing

A test suite is available under the artifacts directory. To run the async test suite:

uv run python C:\Users\User\.gemini\antigravity-ide\brain\7f833c64-f9e4-404b-a691-0d0df923616c\scratch\test_server.py
F
license - not found
-
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
    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
    A
    quality
    D
    maintenance
    Enables tracking and managing personal expenses through a local SQLite database. Supports adding, editing, deleting, listing, and summarizing expenses by category, as well as managing credit accounts.
    6
  • A
    license
    -
    quality
    C
    maintenance
    Enables AI assistants to manage personal expenses by adding, querying, and summarizing expense data through a SQLite database and configurable categories.
    1
    GPL 3.0
  • F
    license
    -
    quality
    D
    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.

  • Personal finance by conversation: expenses, receipts, statement import, budgets, net worth.

  • Receipt tracker with no friction: receipts arrive by email and file themselves

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/akshay0101/mcp-server'

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