- Home
- MCP servers
- Expense Tracker
Expense Tracker
- python
1
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"khushi-c-sharma-expense-tracker-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/expense-tracker-mcp",
"run",
"expense-tracker"
]
}
}
}This MCP Server lets you manage your personal expenses through natural conversations with Claude. It stores expenses locally, supports adding, listing, filtering, summarizing, updating, and deleting entries, and provides an intuitive way to track spending without leaving your chat.
How to use
You interact with your expense data through Claude by giving natural language commands. Use simple statements to perform common actions: add, list, summarize, update, and delete expenses. Claude will translate your requests into database operations and present concise results.
Common tasks you can perform include adding a new expense with amount, category, date, and an optional description; listing expenses filtered by category or date ranges; getting a total or category breakdown for a period; updating an existing expense; and removing entries you no longer need.
How to install
Prerequisites you need before installing the server are Python 3.10 or higher and the uv package manager.
Step 1: Clone the MCP server repository
git clone https://github.com/Khushi-c-sharma/expense-tracker-mcp-server.git
cd expense-tracker-mcp-server
Step 2: Install uv if you haven’t already
curl -LsSf https://astral.sh/uv/install.sh | sh
Step 3: Synchronize and install dependencies
uv sync
Configuration
Add the MCP server to Claude Desktop so you can run it locally from your chat interface.
On macOS, place the file at
~/Library/Application Support/Claude/claude_desktop_config.json
On Windows, place the file at
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"expense-tracker": {
"command": "uv",
"args": [
"--directory",
"/path/to/expense-tracker-mcp",
"run",
"expense-tracker"
]
}
}
}
Usage examples
After configuration, converse with Claude to manage your expenses. Examples of natural interactions include adding a new expense, listing this month’s entries, or getting a category breakdown for a date range.
You: "Add expense 2632 spent yesterday for shopping dress for my convocation"
Claude: *Adds the expense with proper categorization*
You: "Show me all my expenses this month"
Claude: *Lists and summarizes your monthly expenses*
You: "How much did I spend on food in September?"
Claude: *Provides category-specific spending summary*
Available tools and endpoints
The MCP server exposes core actions to manage your expenses. These tools are designed to be used via natural language through Claude.
Database and data model
Expenses are stored in a local SQLite database named expenses.db. The schema includes fields for id, amount, category, subcategory, date, and description.
Development and run commands
Run the server directly in place or start in development mode with auto-reload.
uv run expense-tracker
To run with development auto-reload, you can execute the Python entry directly during development.
uv run python src/expense_tracker/server.py
Project structure and notes
The local project typically contains the main server code, configuration, a SQLite database, and related files. The structure helps you locate the entry points, dependencies, and the database that stores your expenses.
Troubleshooting
If the server does not appear in Claude Desktop, ensure the MCP path is absolute and correct, then restart Claude Desktop and check for any error messages in the Claude logs.
For database issues, ensure the directory is writable and you can delete expenses.db to recreate the database on next run.
Notes
This server is built with Python using fastmcp and uv and uses a local SQLite database for expense storage. It is designed for conversational interaction with AI assistants to streamline personal finance tracking.
Available tools
add_expense
Add a new expense to the database with amount, category, date, and optional description and subcategory.
list_expenses
List expenses filtered by category and optional date range.
summarize
Get total expenses by category within a date range.
update_expense
Update an existing expense identified by its ID with new values for amount, category, date, description, or subcategory.
delete_expense
Delete an expense by its ID.