Remote MCP Expense Tracker
Enables LangChain agents to interact with an expense tracker, supporting operations like adding expenses, querying history, and generating category-wise summaries.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Remote MCP Expense TrackerAdd a $50 expense for food today"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐ Remote MCP Expense Tracker Server
An autonomous, production-ready Model Context Protocol (MCP) server built with FastMCP and SQLite3. This server exposes local financial ledger capabilitiesโadding, listing, and summarizing expensesโto any LLM client (like Claude or LangChain agents) over a remote network connection via Server-Sent Events (SSE).
๐ Features
Persistent Ledger
Automatically initializes and manages a local expenses.db SQLite instance.
Intelligent Tool Suite
add_expense: Records transactions with dates, categories, subcategories, and metadata.
list_expense: Queries transactional history between specific date boundaries.
summarize: Generates category-wise financial summaries.
Static Resource Routing
Exposes a dedicated expense://categories URI providing JSON schemas of valid budgeting categories.
Remote-Ready Architecture
Switches from traditional Standard I/O (stdio) to a distributed network layer (sse), listening globally on port 8000.
Related MCP server: expense-mcp
๐ ๏ธ Tech Stack
Component | Technology |
Language | Python 3.11+ |
Core Framework | FastMCP (Model Context Protocol SDK) |
Database | SQLite3 (Embedded) |
Transport Layer | SSE (Server-Sent Events) over HTTP |
๐ฆ Installation & Setup
This repository uses uv for lightning-fast Python package and environment management.
1. Clone the Repository
git clone https://github.com/DebarghaNath/remote-mcp-server.git
cd remote-mcp-server2. Install Dependencies
uv syncAlternatively:
uv add fastmcp3. Initialize Configuration Files
Ensure you have a categories.json file in the root folder, or let the server automatically generate a default configuration on its first run.
[
"Food",
"Utilities",
"Entertainment",
"Housing",
"Transportation"
]๐โโ๏ธ Running the Server
To launch the remote server and open it up to network traffic, run:
uv run main.pyUpon startup, the terminal will indicate that the SSE server is actively listening:
๐ Launching Remote Expense Tracker Server on port 8000...
INFO: Started server process [PID]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)๐ Connecting Your Client
To wire this server into an LLM Agent framework (such as LangChain's MultiServerMCPClient or an Anthropic Claude Desktop setup), configure your client transport block using the network endpoint.
LangChain Client Example (client.py)
SERVERS = {
"expense_tracker": {
"transport": "sse",
"url": "http://<SERVER_IP_ADDRESS>:8000/sse"
}
}Claude Desktop Configuration (mcp.json)
{
"mcpServers": {
"expense-tracker": {
"command": "uv",
"args": [
"run",
"python",
"-m",
"mcp.client.sse",
"http://localhost:8000/sse"
]
}
}
}๐ Security Note
Becausehost="0.0.0.0" binds the server to all network interfaces, anyone who can reach your machine's IP address on port 8000 can read or write to your expense database.
If exposing this outside a home Wi-Fi network, consider placing it behind a reverse proxy (such as Nginx) or a secure VPN tunnel (such as Tailscale).
๐ License
This project is open-source and available under the MIT License.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/DebarghaNath/remote-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server