In-depth architectural comparison of the Expense tracker and Tradememory Protocol MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
Expense tracker
Finance & Fintech · Local stdio
Quality: 53/100 (Good) | Auth: No auth required
Tradememory Protocol
Finance & Fintech · Local stdio
Quality: 68/100 (Great) | Auth: No auth required
Verdict Summary: Choose Expense tracker if you need specialized Finance & Fintech tools running via a local process. Choose Tradememory Protocol if your workspace requires Finance & Fintech integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
E
Choose Expense tracker when:
You need dedicated capabilities in the Finance & Fintech domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
Local expenses, receipts and mileage ledger for freelancers: categorise, split VAT, summarise, export to CSV or xlsx and rebill straight into an invoice.
Glama 🐍 🏠 - Structured 3-layer memory system (trades → patterns → strategy) for AI trading agents. Supports MT5, Binance, and Alpaca.
Log one expense: amount, currency, category, merchant, date, project, note, receipt path, billable flag, VAT rate. An empty category is filled in from the merchant rules. `billable` defaults to **true when a `project` is given** and false otherwise, and the response always states which value was us…
expense_settings
Read or set the defaults `expense_add` uses when a call names none: `default_vat_rate`, `default_currency
expense_list
List expenses in a date range, filtered by project, category or billable, with totals per currency
expense_update
Change any field of a stored expense by id. `rebilled: false` clears both the rebilled marker and the invoice number. Amount, currency and `vat_rate` are refused on an expense already rebilled unless you pass `unlink_rebill: true`, which clears the rebill link, because the invoice charged something…
expense_delete
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
Expense tracker is categorized under Finance & Fintech and uses a local stdio subprocess. In contrast, Tradememory Protocol belongs to Finance & Fintech using local stdio subprocess. Select Expense tracker when you need capabilities focused on finance & fintech and Tradememory Protocol when you require tools for finance & fintech.
Delete one expense by id. The receipt file itself is left alone
receipt_attach
Attach a receipt file to an expense. The file must exist; its path and sha256 are stored
category_rules
Set or list the merchant-to-category rules. A match with no regex metacharacters is a plain substring; one with them is compiled only if it cannot backtrack exponentially, and a pattern like `(a+)+` is refused
expense_summary
Totals for a range grouped by category, project, month or merchant, with the gross, net and VAT per currency
mileage_add
Log a trip in km or miles and price it from the rate table (or your own rate)
expense_export
Write the range to csv, xlsx or json and return the path. Never writes a partial file
expense_to_invoice
Preview a project's unbilled billable expenses as `invoice_create` line items, per currency, with an optional markup and an optional `assume_vat_rate`. Pass `target_currency` + `fx_rates` to fold every currency into one group. When nothing matches it returns `count: 0`, no `fx_note`, and the plain…
expense_mark_rebilled
Mark expenses rebilled once the invoice exists, by ids or by project, date range and `currency`. `invoice_number` is required
+2 more tools listed on main page
Tradememory Protocol Tools (20)
get_strategy_performance
Get aggregate performance stats per strategy.
Use this to evaluate which strategies are working and which need adjustment.
get_trade_reflection
Get the full context and reflection for a specific trade.
Use this to deep-dive into a particular trade's reasoning and lessons.
remember_trade
Store a trade into OWM multi-layer memory with automatic updates.
Writes to episodic memory and automatically updates semantic (Bayesian),
procedural (running averages + hold time + Kelly), and affective
(EWMA confidence/streaks). Also writes to trade_records for backward
compatibility.
recall_memories
Recall memories using OWM outcome-weighted scoring.
Queries episodic and semantic memories, scores them by outcome quality,
context similarity, recency, confidence, and affective modulation.
Returns ranked memories with score breakdown.
get_behavioral_analysis
Get behavioral analysis from procedural memory.
Returns aggregate trading behavior stats: hold times, disposition ratio,
lot sizing variance, and Kelly criterion comparison.
get_agent_state
Get the current agent affective state (confidence, risk, drawdown).
Returns confidence level, risk appetite, drawdown percentage,
win/loss streaks, equity tracking, and a recommended action
based on current drawdown severity.
create_trading_plan
Create a prospective trading plan that activates when conditions are met.
Stores a rule-based plan in prospective memory. The plan stays active
until triggered, expired, or manually cancelled.
check_active_plans
Check active trading plans against current market context.
Queries all active prospective plans, expires any past their expiry date,
and matches remaining plans against the provided context.
evolution_fetch_market_data
Fetch OHLCV market data from Binance for evolution analysis.
Downloads historical price bars for backtesting and pattern discovery.
Use this before discover_patterns or run_backtest to get data.
evolution_discover_patterns
Discover trading patterns from market data using LLM analysis.
Uses Claude to analyze OHLCV data and generate candidate trading patterns
with entry/exit conditions. Each pattern can be backtested afterward.
evolution_run_backtest
Backtest a candidate pattern against historical OHLCV data.
Takes a pattern dict (from discover_patterns) and runs a vectorized
backtest. Returns fitness metrics: Sharpe ratio, win rate, trade count,
max drawdown, total PnL.
evolution_evolve_strategy
Run full evolution loop — generate, backtest, select, eliminate.
Multi-generation strategy evolution: generates candidate patterns via LLM,
backtests on in-sample data, validates survivors on out-of-sample data,
eliminates weak hypotheses. Returns graduated strategies and graveyard.