mcp server ledger
A Model Context Protocol server that allows AI assistants to query and analyze financial data through Ledger CLI, enabling tasks like financial reporting, budget analysis, and accounting.
A Model Context Protocol server that allows AI assistants to query and analyze financial data through Ledger CLI, enabling tasks like financial reporting, budget analysis, and accounting.
A Model Context Protocol server for interacting with Ledger CLI, a powerful, double-entry accounting system accessible from the command line. This server allows Large Language Models to query and analyze your financial data through the Ledger CLI tool.
This MCP server exposes Ledger CLI's functionality through a standardized interface, making it easy for AI assistants to help you with financial reporting, budget analysis, and accounting tasks.
The server provides the following tools that map to Ledger CLI commands:
ledger_balance
Returns: Formatted balance report
ledger_register
Returns: Formatted register report
ledger_accounts
Returns: List of matching accounts
ledger_payees
Returns: List of matching payees
ledger_commodities
Returns: List of matching commodities
ledger_print
Returns: Formatted ledger entries
ledger_stats
Returns: Statistical summary of the ledger
ledger_budget
Returns: Budget report
ledger_raw_command
The easiest way to install and run this server is with uv:
uv sync
The server requires a path to your Ledger file. This can be provided through:
LEDGER_FILE
environment variableAdd this to your claude_desktop_config.json
:
"mcpServers": {
"ledger": {
"command": "uv",
"args": [
"run",
"--env-file",
"/path/to/your/.env", // Optional: to set LEDGER_FILE
"--with",
"mcp[cli]",
"mcp",
"run",
"<repo_path>/main.py" // Path to the main.py file in this repository
]
}
}
Once configured, you can ask your AI assistant questions about your financial data:
The AI will use the appropriate Ledger CLI commands through the server to get the information.
For more detailed local testing:
mcp dev main.py
This server is built using the Model Context Protocol Python SDK. For more information about MCP and how to develop MCP servers, see the official documentation.
To contribute to this project:
This server runs Ledger CLI commands on your financial data. While it includes basic validation to prevent command injection, you should:
This MCP server is licensed under the MIT License. Feel free to use, modify, and distribute it according to the license terms.