Skip to main content
Glama
Expense Tracker MCP Server

Expense Tracker MCP Server

Expense Tracker MCP Server

A simple Expense Tracker MCP server built with FastMCP and SQLite.

Features

  • Add expenses

  • List expenses by date range

  • Summarize expenses by category

  • Expose expense categories as an MCP resource

  • Compatible with Claude Desktop and MCP Inspector

Related MCP server: Expense Tracker MCP Server

Tech Stack

  • Python 3.14+

  • FastMCP 3.4.0

  • SQLite

Installation

Clone the repository and install dependencies:

uv sync

or

uv add fastmcp

Project Structure

.
├── main.py
├── expenses.db
├── categories.json
├── pyproject.toml
├── uv.lock
└── README.md

Available Tools

add_expense

Add a new expense record.

Parameters:

  • date

  • amount

  • category

  • subcategory (optional)

  • note (optional)

Example:

{
  "date": "2026-06-01",
  "amount": 600,
  "category": "transport",
  "subcategory": "cab_ride_hailing",
  "note": "Cab ride to Delhi"
}

list_expenses

List expenses within a date range.

Parameters:

  • start_date

  • end_date

summarize

Summarize expenses by category.

Parameters:

  • start_date

  • end_date

  • category (optional)

Available Resources

expense://categories

Returns the contents of categories.json.

Example categories:

  • food

  • transport

  • housing

  • utilities

  • health

  • education

  • entertainment

  • shopping

  • travel

  • investments

  • and more

Running the MCP Server

Start the server:

uv run fastmcp run main.py

MCP Inspector

Launch the MCP Inspector for local testing:

uv run fastmcp dev inspector main.py

Claude Desktop Integration

Install the server into Claude Desktop:

uv run fastmcp install claude-desktop main.py

Restart Claude Desktop after installation.

Example Prompts

Add an expense:

Add an expense of ₹600 for a cab ride to Delhi last Sunday.

List expenses:

Show all expenses between 2026-06-01 and 2026-06-30.

Summarize expenses:

Summarize my expenses for June 2026.

Available Tools

3 tools
add_expenseC

Add a new expense entry to the database.

Inputs: date (required), amount (required), category (required), subcategory, +1 more.

list_expensesA

List expense entries within an inclusive date range.

Inputs: start_date (required), end_date (required).

summarizeA

Summarize expenses by category within an inclusive date range.

Inputs: start_date (required), end_date (required), category.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.1/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: adding, listing, or summarizing expenses. No overlap or ambiguity.

    Naming Consistency4/5

    Mostly consistent verb_noun pattern (add_expense, list_expenses), though 'summarize' lacks a direct object, which is a minor deviation.

    Tool Count4/5

    Three tools is a reasonable scope for a basic expense tracker, covering core operations without being excessive.

    Completeness3/5

    Coverage is adequate for adding, listing, and summarizing expenses, but lacks update and delete functionality, leaving notable gaps in lifecycle management.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      A
      quality
      D
      maintenance
      Stores and manages expenses in SQLite. Enables adding, removing, and listing expenses with filtering, and exposes expense categories via a resource.
      3
      -
    • F
      license
      Not graded
      quality
      C
      maintenance
      Enables managing and analyzing personal expenses through MCP tools, including adding expense records, listing expenses within date ranges, and summarizing spending by category, with expense categories exposed as an MCP resource.
      -
    • F
      license
      B
      quality
      C
      maintenance
      Enables users to manage personal expenses by adding entries, listing them by date range, and summarizing spending by category through MCP tools, while exposing category data as a resource.
      3
      -