MCP-Finance-Reconciliation
Click on "Deploy 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., "@MCP-Finance-ReconciliationMatch bank statement against GL cash ledger for July 2024"
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.
auxilab-mcp-finance-recon
MCP Server for Month-End Close Reconciliation
Finance Shared Services · GBS/SSC · Auxiliobits
Automate the most manual, error-prone activities in a shared services team:
bank reconciliation, GL close, intercompany matching, and month-end close tracking.
What it does
MCP Tool | Description |
| Match bank CSV vs GL cash ledger — ±3 day date proximity, exact amount |
| Compare prior vs current GL extract — new entries, reversals, variances |
| Entity A vs Entity B — gross mismatch, FX component, risk flag |
| Rules-based break classification with recommended next actions |
| 12-task close tracker with overdue detection and risk rating |
Related MCP server: Carrier Accounting MCP
Quick Start
1. Install
git clone https://github.com/auxiliobits/auxilab-mcp-finance-recon
cd auxilab-mcp-finance-recon
pip install -e ".[dev]"2. Generate test data
python data/generate_test_data.pyThis creates data/sample_data/ with 7 synthetic CSV files — no real data required.
3. Run the standalone demo
python demo.pyExpected output: full 5-step reconciliation flow ending with a Month-End Readiness Report.
4. Start the MCP server (for Claude Desktop / agent use)
python src/server.pyMCP Server Config (claude_desktop_config.json)
{
"mcpServers": {
"finance-recon": {
"command": "python",
"args": ["/path/to/auxilab-mcp-finance-recon/src/server.py"]
}
}
}Tool Reference
match_bank_statement
{
"bank_csv": "<CSV string>",
"gl_csv": "<CSV string>",
"opening_balance": 500000.00
}Returns: reconciliation_summary, matched_pairs, unmatched_bank_items, unmatched_gl_items
Matching logic:
Amount match: exact within ±$0.01
Date proximity: ±3 calendar days
Tiebreaker: rapidfuzz
token_sort_ratioon description
reconcile_gl_accounts
{
"period_a_csv": "<prior period CSV>",
"period_b_csv": "<current period CSV>",
"account_name": "Accrued Liabilities — 2110"
}Returns: reconciliation_statement, new_entries, removed_entries, reversals, common_entries
check_intercompany_balances
{
"entity_a_csv": "<Entity A ledger CSV>",
"entity_b_csv": "<Entity B ledger CSV>",
"entity_a_name": "Auxiliobits India",
"entity_b_name": "Auxiliobits Singapore",
"base_currency": "USD"
}Returns: summary (with mismatch_risk: NONE/LOW/MEDIUM/HIGH/CRITICAL), matched_transactions, entity-only lists, mismatch_detail
Demo scenario: Entity A = $125,000 receivable · Entity B = $123,500 payable → $1,500 mismatch, flagged HIGH
classify_reconciliation_breaks
{
"breaks_csv": "<unreconciled items CSV>"
}CSV columns: reference, date, description, amount, source
Classification categories:
Category | Rule |
Timing Difference | Keywords: transit, outstanding, cut-off, clearing |
Missing Entry | Keywords: missing, not posted, unposted |
Duplicate Posting | Keywords: duplicate, double post, twice |
Currency Rounding | Amount ≤ $10, or FX/forex keywords |
Intercompany Mismatch | Keywords: interco, entity, subsidiary |
Unknown | No rule matched — escalate |
track_month_end_close
{
"tasks_csv": "<tasks CSV>",
"close_deadline": "2024-11-30",
"as_of_date": "2024-11-29"
}CSV columns: account_name, owner, status, due_date
Valid statuses: complete, in progress, not started, overdue, on hold
Risk logic:
CRITICAL: deadline ≤ 1 day with outstanding tasks, or deadline passedHIGH: deadline ≤ 2 days with >3 outstanding, or ≥3 overdue tasksMEDIUM: completion < 75% or any overdueLOW: on track
Project Structure
auxilab-mcp-finance-recon/
├── src/
│ ├── server.py # MCP server — tool registry + dispatch
│ └── tools/
│ ├── __init__.py
│ ├── bank_matcher.py # Bank ↔ GL matching (Pandas + rapidfuzz)
│ ├── gl_reconciler.py # Prior vs current GL extract diff
│ ├── intercompany_checker.py # Entity A vs Entity B
│ ├── break_classifier.py # Rules-based break classifier
│ └── close_tracker.py # Month-end task tracker
├── data/
│ ├── generate_test_data.py # Synthetic CSV generator
│ └── sample_data/ # Generated CSVs (gitignored)
├── tests/
│ └── test_tools.py
├── demo.py # Full 5-step demo runner
├── pyproject.toml
└── README.mdTech Stack
Component | Library |
MCP protocol |
|
Matching logic |
|
Fuzzy description matching |
|
CSV parsing |
|
Break classification | Rules-based (regex) — no LLM required |
Demo Data Summary
File | Rows | Notes |
| 50 | Unique amounts, full month |
| 48 | 45 match bank (±1-2 day drift), 3 GL-only timing items |
| 20 | October GL extract |
| 25 | 15 carry-forward + 8 new + 2 reversals |
| 3 | $125,000 receivable |
| 3 | $123,500 payable — $1,500 mismatch |
| 12 | 4 complete, 3 overdue, deadline in 1 day → HIGH risk |
| 8 | Covers all 6 break categories |
License
MIT · Built for the Auxiliobits Hackathon — Financial Reconciliation Pillar
This server cannot be deployed
Maintenance
Related MCP Connectors
AI agents for bookkeeping, reconciliation, and financial close for SMBs.
- FinStatOAuthai.finstat
Documents in, reconciled double-entry books out. Statements, invoices, receipts, matched and posted.
Startup books from live bank and billing feeds: P&L, balances, approvals, period close.
Crypto and fiat on one double-entry ledger: sync wallets, reconcile, cost basis, audit-ready close.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAutomates comprehensive accounting workflows including bookkeeping, tax planning, payroll processing, sales tax compliance, and client management. Integrates with QuickBooks and processes financial documents with AI-powered transaction categorization and compliance monitoring.1-
- AlicenseNot gradedqualityCmaintenanceAutomates ingestion, normalization, validation, review, and posting of insurance carrier statements to Applied Epic, with safety features like trial mode and human review queues.MIT
- AlicenseAqualityBmaintenanceAI agents that automate bookkeeping, bank reconciliation, and month-end financial close for SMBs and CA firms.261MIT
- AlicenseAqualityBmaintenanceAn intelligent bookkeeping MCP server for QuickBooks Online that enables natural language control over categorization, reconciliation, monthly close, and anomaly detection.146 npmMIT