Skip to main content
Glama
talha963

Expense Tracker MCP Server

by talha963

šŸ’ø Expense Tracker MCP Server

Python FastMCP SQLite UV License

A blazing-fast, AI-native Expense Tracker built as an MCP (Model Context Protocol) Server using FastMCP and SQLite.

Plug it directly into Claude Desktop, Cursor, or any MCP-compatible AI client — let your AI manage your finances for you.


šŸ“– Table of Contents


Related MCP server: Expense Tracker MCP Server

šŸ¤– What is MCP?

The Model Context Protocol (MCP) is an open standard by Anthropic that allows AI models (like Claude) to securely interact with external tools, APIs, and data sources. This project exposes expense-tracking capabilities as MCP tools, meaning you can literally tell Claude:

"Add an expense: Coffee, $4.50, Food & Drink, Cash, 2026-08-02"

...and it will call this server and record it in your local SQLite database — no UI needed.


✨ Features

  • šŸ“ Add Expenses — Record expenses with title, amount, category, payment method, date, and optional description

  • šŸ“‹ List Expenses — Retrieve all stored expenses as structured data

  • šŸ—„ļø Persistent SQLite Storage — Auto-creates a local expenses.db database on first run

  • ⚔ FastMCP Powered — Minimal boilerplate, maximum capability

  • šŸ” Built-in Inspector — Visual tool inspector for debugging and testing

  • šŸ”Œ MCP-Compatible — Works with Claude Desktop, Cursor, and any MCP client


šŸ“ Project Structure

expense_tracker_mcp_server/
ā”œā”€ā”€ expense_mcp_server.py      # šŸŽÆ Main MCP server — all tools defined here
ā”œā”€ā”€ pyproject.toml             # Project metadata & dependencies
ā”œā”€ā”€ uv.lock                    # Locked dependency versions
ā”œā”€ā”€ .python-version            # Python version pin
ā”œā”€ā”€ .gitignore                 # Git ignore rules
ā”œā”€ā”€ src/
│   └── expense_tracker_mcp_server/
│       └── __init__.py        # Package entry point
└── README.md                  # You are here!

šŸ› ļø Prerequisites

Make sure you have the following installed:

  • Python 3.11+

  • pip (comes with Python)

  • uv — Fast Python package manager


šŸš€ Installation

Step 1 — Clone the Repository

git clone https://github.com/talha963/expense_mcp_server.git
cd expense_mcp_server

Step 2 — Install uv

pip install uv

Step 3 — Initialize the Project with uv

uv init .

Step 4 — Install FastMCP

# Via pip (global)
pip install fastmcp

# OR via uv (recommended — adds to project)
uv add fastmcp

Step 5 — Sync Dependencies

uv sync

ā–¶ļø Running the Server

Option 1 — Run directly with Python

python expense_mcp_server.py

Starts an HTTP server on http://0.0.0.0:8000

Option 2 — Run via uv

uv run expense_mcp_server.py
uv run --active fastmcp run expense_mcp_server.py

šŸ”§ Available Tools

The server exposes the following MCP tools that AI models can call:

add_expense

Adds a new expense entry to the database.

Parameter

Type

Required

Description

title

string

āœ…

Name/title of the expense

amount

float

āœ…

Amount spent (e.g. 12.50)

category

string

āœ…

Category (e.g. Food, Transport)

payment_method

string

āœ…

e.g. Cash, Card, Online

expense_date

string

āœ…

Date in YYYY-MM-DD format

description

string

āŒ

Optional notes about the expense

Example response:

{
  "success": true,
  "expense_id": 1,
  "message": "Expense added successfully."
}

list_expenses

Returns all recorded expenses from the database.

No parameters required.

Example response:

[
  {
    "id": 1,
    "title": "Coffee",
    "amount": 4.5,
    "category": "Food & Drink",
    "payment_method": "Cash",
    "expense_date": "2026-08-02",
    "description": "Morning coffee at the office"
  }
]

šŸ–„ļø Connecting to Claude Desktop

To use this server with Claude Desktop, add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "expense-tracker": {
      "command": "uv",
      "args": [
        "run",
        "--active",
        "fastmcp",
        "run",
        "/absolute/path/to/expense_mcp_server.py"
      ]
    }
  }
}

Config file location:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

After saving, restart Claude Desktop and the Expense Tracker tools will appear automatically.


šŸ” Development & Inspection

Use the FastMCP Inspector to visually test and explore your tools in the browser:

uv run --active fastmcp dev expense_mcp_server.py

This opens an interactive web UI where you can:

  • See all registered tools

  • Call tools manually with test inputs

  • Inspect request/response payloads


🧰 Tech Stack

Technology

Purpose

FastMCP

MCP server framework

SQLite3

Lightweight persistent storage

uv

Ultra-fast Python package manager

Python 3.11+

Runtime


šŸ‘¤ Author

Talha — @talha963


šŸ“„ License

This project is licensed under the MIT License — feel free to use, modify, and distribute.


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
    B
    quality
    D
    maintenance
    MCP server for tracking personal expenses using FastMCP and SQLite, enabling adding, listing, updating, deleting expenses and summarizing by category via natural language tools.
    Last updated
    5
    1
  • F
    license
    -
    quality
    D
    maintenance
    A powerful SQLite-backed expense tracking server built with the Model Context Protocol (MCP). This server allows AI agents (like Claude) to manage your personal finances by adding, deleting, and listing expenses directly from your chat interface.
    Last updated
  • F
    license
    -
    quality
    D
    maintenance
    A local MCP server for tracking personal expenses using SQLite, enabling users to add, list, and summarize expenses via natural language.
    Last updated
  • F
    license
    -
    quality
    C
    maintenance
    An MCP server that enables any MCP-compatible client to add, list, and summarize expenses through natural conversation, using FastMCP and aiosqlite for async database operations.
    Last updated

View all related MCP servers

Related MCP Connectors

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

  • MCP server for Gainium — manage trading bots, deals, and balances via AI assistants

  • GibsonAI MCP server: manage your databases with natural language

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/talha963/expense_mcp_server'

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