Skip to main content
Glama
PranaPragada7

Expense Tracker MCP Server

経費管理エージェント

CI Python Streamlit SQLite MCP

AI を活用した個人用経費管理ツールで、自然言語のリクエストを構造化されたデータベース操作に変換します。このプロジェクトは、応答性の高い Streamlit インターフェース、Claude のツール使用、MCP サーバー、およびローカルの SQLite ストレージを組み合わせたものです。

このプロジェクトで実証していること

  • 実際のデータベースワークフローのためのエージェント的でマルチステップのツール使用

  • 言語モデル、MCP トランスポート、データ層の明確な分離

  • オーケストレーションフレームワークを使用しない直接的な Claude ツール呼び出しループ

  • 入力検証、スコープ付きアシスタント動作、安全なローカルデータ処理

  • 自動化されたスモークテストと継続的インテグレーション

  • 入力、会話、支出の洞察のための応答性の高いユーザーインターフェース

Related MCP server: Expense Tracker MCP Server

製品の機能

  • フォームまたは自然言語のリクエストを通じて経費を追加

  • 各取引の日付、金額、カテゴリ、説明を保存

  • MCP ツールを通じて経費の検索、更新、削除、集計

  • 合計、最近の取引、カテゴリ別の支出を確認

  • 集中型の財務アシスタントにデータベースに基づく洞察を問い合わせ

  • 経費データを SQLite ファイルにローカルに保存

アーキテクチャ

flowchart LR
    U[User] --> UI[Streamlit or CLI]
    UI --> A[Claude agent]
    A -->|Tool request| C[MCP client]
    C -->|stdio| S[MCP server]
    S -->|DB-API 2.0| D[(SQLite)]
    D --> S
    S -->|Structured result| A
    A --> UI

Claude は SQLite に直接アクセスしません。Claude は MCP ツールスキーマから選択し、サーバーが検証済みのすべてのデータベース読み取りと書き込みを所有します。

エージェントワークフローの例

ユーザーの意図

ツールシーケンス

ランチの経費を追加

find_categoryadd_expense

昨日のガソリン代を変更

search_expensesupdate_expense

一致する購入を削除

search_expensesdelete_expense

月間支出を確認

monthly_summary

テクノロジー

テクノロジー

インターフェース

Streamlit, pandas

言語モデル

Anthropic Claude

エージェント統合

Direct Messages API tool-use loop

ツールプロトコル

Model Context Protocol over stdio

データ

SQLite through Python DB-API 2.0

品質

pytest, Black, GitHub Actions

クイックスタート

必要条件:

  • Python 3.11 以上

  • アシスタント用の Anthropic API キー

仮想環境を作成して有効化:

python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt

macOS または Linux の場合、次のコマンドで環境を有効化:

source .venv/bin/activate

ローカル環境ファイルを作成し、ANTHROPIC_API_KEY を追加:

Copy-Item .env.example .env

データベーススキーマとスターターカテゴリを作成し、アプリを起動:

python db_setup.py
streamlit run streamlit_app.py

MCP サーバーは stdio を使用し、クライアントが接続すると自動的に起動します。

品質チェック

開発依存関係をインストールし、CI で使用される同じチェックを実行:

python -m pip install -r requirements-dev.txt
python -m black --check .
python -m compileall -q agent.py client_test.py db_setup.py mcp_client.py server.py streamlit_app.py
python -m pytest -q
python client_test.py

client_test.py は 18 個すべての MCP ツールを実行し、スモークテスト終了時に一時レコードを削除します。

MCP ツール

サーバーは 18 個のツールを公開しています:

  • カテゴリ管理: list_categories, add_category, rename_category, delete_category, get_category_name

  • 経費管理: add_expense, update_expense, delete_expense, list_expenses, search_expenses, expenses_by_category, total_expense_by_category, total_expense, monthly_summary

  • サポートクエリ: current_date, find_category, get_expense, expenses_between

プロジェクト構成

パス

目的

streamlit_app.py

フォーム、アシスタント、洞察のインターフェース

agent.py

Claude ツール呼び出しループとコマンドラインインターフェース

server.py

MCP ツールとして公開される検証済み SQLite 操作

mcp_client.py

再利用可能な stdio MCP クライアント

db_setup.py

スキーマとスターターカテゴリの初期化

client_test.py

エンドツーエンドの MCP ツールスモークテスト

tests/

自動化されたデータベースと UI のチェック

.github/workflows/ci.yml

継続的インテグレーションパイプライン

設定

変数

必須

デフォルト

ANTHROPIC_API_KEY

はい

ANTHROPIC_MODEL

いいえ

claude-sonnet-5

AGENT_EFFORT

いいえ

medium

EXPENSE_DB

いいえ

expenses.db beside the source files

.env ファイルと expenses.db は Git から除外されています。API キーと個人の経費データはリポジトリの外部に保持されます。

空の経費テーブルでデータベースを再作成するには:

python db_setup.py --reset
F
license - not found
Not graded
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
    Not graded
    quality
    D
    maintenance
    Enables users to track personal expenses through natural language interactions with comprehensive category support and financial summaries. Provides both local and remote MCP server options with SQLite storage for fast expense management operations.
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to manage personal expenses through natural conversation, supporting expense tracking, categorization, filtering, and financial summaries. Uses SQLite database to store expense records with full CRUD operations for comprehensive personal finance management.
    1
  • F
    license
    C
    quality
    D
    maintenance
    Enables personal expense management with SQLite storage, allowing users to add, update, delete, list, and summarize expenses by category through natural language interactions.
    5
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables management of expenses via SQLite database, including adding, listing, updating, deleting, filtering, and summing expenses through natural language.

View all related MCP servers

Related MCP Connectors

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

  • GibsonAI MCP server: manage your databases with natural language

  • Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.

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/PranaPragada7/Expense_Tracker'

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