MCP server for OpenAccountants tax skills
Project description
OpenAccountants MCP Server
A read-only Model Context Protocol server that gives Claude, Cursor, and any MCP client on-demand access to 134 countries of open-source tax skills — no manual file uploads.
Why this exists
Without MCP, using OpenAccountants means downloading a country folder and dragging .md files into your LLM by hand, every conversation. With MCP, your AI assistant discovers and fetches the right skills automatically:
You: "Help me with my Malta taxes. Here's my bank statement."
↓
Claude: calls list_jurisdictions → sees "malta"
Claude: calls list_files("malta") → foundation.md, malta-vat.md, …
Claude: calls get_file("malta", "foundation.md") → full skill in context
Claude: calls get_file("malta", "malta-vat.md") → VAT rules loaded
↓
Claude: now processes your bank statement with the right tax rules
Install once, configure once — skills are available in every conversation from that point on.
Tools
| Tool | Description |
|---|---|
list_jurisdictions |
Returns every country slug that has at least one .md skill file under packages/. |
list_files |
Given a jurisdiction slug (e.g. malta), returns the .md / .json filenames in that package. |
get_file |
Given a jurisdiction + filename, returns the full UTF-8 text of that skill file (capped at 2 MB). |
All access is read-only and path-sandboxed to the packages/ directory.
Quick start
1. Clone and install
Requires Python 3.10+.
git clone https://github.com/openaccountants/openaccountants.git
cd openaccountants
pip install ./mcp
Or with uv (recommended):
uv pip install ./mcp
2. Connect to your AI client
Pick one of the following.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"openaccountants": {
"command": "openaccountants-mcp"
}
}
}
If installed in a virtualenv or with uv:
{
"mcpServers": {
"openaccountants": {
"command": "uv",
"args": ["run", "--directory", "/path/to/openaccountants/mcp", "openaccountants-mcp"]
}
}
}
Cursor
Add to .cursor/mcp.json in the project (or via Cursor Settings > MCP):
{
"mcpServers": {
"openaccountants": {
"command": "openaccountants-mcp"
}
}
}
Any other MCP client
Run openaccountants-mcp (or python -m openaccountants_mcp) as a stdio transport server.
3. Start chatting
Help me with my 2025 taxes. Here's my bank statement.
The AI will call the MCP tools behind the scenes to load the right country skills, then classify transactions and produce a working paper — all without you uploading a single file.
Environment variables
| Variable | Default | Description |
|---|---|---|
OPENACCOUNTANTS_ROOT |
Auto-detected repo root (parent of mcp/) |
Path to your OpenAccountants checkout. The server reads $OPENACCOUNTANTS_ROOT/packages/. |
What changes vs manual upload
| Before (manual) | After (MCP) |
|---|---|
| Download folder, upload files by hand | One-time install, always available |
| Pick the right files yourself | Model discovers what's available |
| Repeat for every new conversation | Persistent — server always running |
| Can't easily switch countries mid-chat | Model calls list_jurisdictions and pivots |
Smoke test
Run from the repo root to verify everything works:
python mcp/smoke_test.py
All 14 checks should pass (path safety, tool outputs, jurisdiction count).
Disclaimer
All skills and outputs are for informational and computational purposes only. Not tax advice. Not a replacement for professional judgment. Content quality is tiered (Q1-Q5) — most skills are not practitioner battle-tested. Always have a qualified professional review before filing.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openaccountants_mcp-0.1.0.tar.gz.
File metadata
- Download URL: openaccountants_mcp-0.1.0.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1d1c2469687940c42ce9c4131941f72ea59d2d2d7ab4ffc80c15b7274e10e6e
|
|
| MD5 |
28fd20b3e9c26334555bdf60cdaeda5a
|
|
| BLAKE2b-256 |
7dbe6552d0f76741de3bcf7d90833a2ac55badec09c332da77e97157cb0f6823
|
File details
Details for the file openaccountants_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: openaccountants_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5507e97f72d10e688662e06142411feaa14359baf8e64c4728f205f723bea375
|
|
| MD5 |
b944757525cdfc5f7e1d63210d1d1248
|
|
| BLAKE2b-256 |
0e0821046ff1196856b88e1fb2da0380dc53bf6d2ed4bcc3a25dab753d593c87
|