Expense Tracker MCP Server

Expense Tracker MCP Server

MCP server for managing personal expenses, enabling users to add, list, and summarize expenses by category, with data stored in a local SQLite database.

Category
Visit Server

README

Expense Tracker MCP Server

This project is a Model Context Protocol (MCP) server for managing personal expenses. It exposes tools and a resource that can be used by MCP-compatible clients such as Claude Desktop or the FastMCP inspector.

What it does

The server provides:

  • add_expense(date, amount, category, subcategory="", note="") to store a new expense
  • list_expenses(start_date, end_date) to retrieve expenses in a date range
  • summarize(start_date, end_date, category=None) to group totals by category
  • expense://categories as a JSON resource for category definitions

Expenses are stored in a local SQLite database created automatically when the server starts.

Requirements

  • Python 3.13 or newer
  • uv for dependency and script management

Installation

From the project root:

uv sync

This installs the project and its dependencies from the pyproject.toml file.

Run locally with the MCP inspector

Start the server and inspect it in the FastMCP inspector:

uv run fastmcp dev inspector src/expense_tracker_mcp_server/main.py

This opens the inspector UI and lets you test the tools and resources.

Connect to Claude Desktop

To install the server into Claude Desktop, run:

uv run fastmcp install claude-desktop src/expense_tracker_mcp_server/main.py

On Windows, Claude Desktop may store its config under a packaged-app path. If the default location is not detected, provide it explicitly:

uv run fastmcp install claude-desktop --config-path "C:\Users\<your-user>\AppData\Local\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude" src/expense_tracker_mcp_server/main.py

Replace <your-user> with your Windows username.

Project structure

src/
  expense_tracker_mcp_server/
    __init__.py
    main.py
  • main.py contains the MCP server implementation and tool definitions.
  • expenses.db is created automatically at runtime in the package directory.
  • categories.json is loaded as the expense://categories resource.

Example usage

Once the server is running, you can call the tools with payloads such as:

{
  "date": "2026-07-31",
  "amount": 42.5,
  "category": "Food",
  "subcategory": "Lunch",
  "note": "Team lunch"
}

Notes

  • The SQLite database is local to the project and will be created on first run.
  • The categories resource is read from the JSON file each time it is requested, so edits are picked up without restarting the server.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured