
Recite MCP
io.github.rivradevPublished by GitHub account rivradevv0.1.4Updated Oct 25, 2026
Local MCP server for Recite receipt processing with ledger and memory tools.
Overview
A local MCP server for the Recite receipt API that lets an assistant scan receipts, manage transactions and projects, and keep a local ledger and memory.
- What you can do
- Scan receipts from files, URLs, base64 or raw text, and run batch scans with status and results lookup. Create, list, update, delete and import transactions, projects, categories, vendors, rules and webhooks. Produce summaries, usage reports, exports and reconciliation links with auto-matching and recommendations. Process receipts into a local CSV ledger, summarize and export it, and record corrections. Store persistent agent instructions in local memory and inspect configuration and health.
- When to use it
- Useful when you want an assistant to turn receipt images or PDFs into structured bookkeeping data, reconcile and export transactions, or keep a local-first ledger alongside the Recite cloud service.
- Requirements
- A local Python runtime; install via uvx, pipx or pip. A Recite API key in the RECITE_API_KEY environment variable is required to process receipts. Network access to PyPI for installation and to the Recite API for requests. RECITE_HOME optionally sets the local data directory.
Installation
In SourceWeft
- Open Recite MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
recite-mcp
mcp-name: io.github.rivradev/recite-mcp
recite-mcp is an MCP server for the Recite API. It provides the full documented Recite MCP surface for scans, transactions, imports, batch jobs, projects, summaries, webhooks, rules, usage, and exports, while preserving the local ledger/memory workflow for agents that want local-first bookkeeping.
Install
End users
Recommended:
Alternative (pipx):
Alternative (pip):
Contributors
Required Environment
Get an API key at https://recite.rivra.dev/settings/api (includes 30 free scans per month), then set RECITE_API_KEY (required to process receipts; server can still start without it so validate_setup() can report what's missing):
Optional home override:
MCP Client Config
Copy-paste this config:
If installed via pipx or pip, use:
Troubleshooting
MCP Registry ownership validation failed
- Symptom: Registry publish returns a PyPI ownership/README validation error.
- Fix: keep this exact line in packaged README:
mcp-name: io.github.rivradev/recite-mcp, then bump version and upload new PyPI release before publishing to Registry.
RECITE_API_KEY missing or invalid
- Symptom:
validate_setup()reportsmissing_api_keyor API requests are rejected. - Fix: set
RECITE_API_KEYin MCP clientenvconfig (preferred) or shell environment.
uvx command not found
- Symptom: terminal says
uvxis not recognized. - Fix: install
uvfirst, or use one of the alternatives:pipx install recite-mcppython -m pip install recite-mcp
recite-mcp command not found after install
- Symptom: command not recognized after
pipx/pipinstall. - Fix:
- For
pipx: runpipx ensurepath, then reopen terminal. - For
pip: run with module entrypoint:python -m recite_mcp.server
- For
MCP client starts but tools are unavailable
- Symptom: server appears configured but no tools/resources are listed.
- Fix:
- Confirm MCP config JSON is valid.
- Confirm command and args match your install method (
uvxvsrecite-mcp). - Restart MCP client after config changes.
Can't download from PyPI (uvx/pip)
- Symptom: install/run fails with network/proxy errors.
- Fix: ensure your environment can reach PyPI (or configure your proxy / custom index). If you're on a locked-down network, you may need to allowlist PyPI or use an internal mirror.
Quick local validation (no MCP client)
- Run
recite-mcp --validate(oruvx recite-mcp --validate) to print local config/health JSON. Exit code is0if an API key is present, otherwise1.
Main Features
API tools (41 total):
- Scans —
scan_receipt(file, URL, base64, or raw text; ephemeral mode),get_scan - Transactions — create, list (with filters), get, update, delete,
import_transactions(JSON list, CSV text, or CSV file) - Batch scans —
submit_batch_scans(1–20 items, async, webhook notification),get_batch_scan_status,get_batch_scan_results - Projects — list, create, update, delete
- Summaries —
get_summary(period, date range, group-by) - Webhooks — create, list, delete (
transaction.created/updated/deleted,batch.completed) - Reconciliation —
create_reconciliation_link,list_reconciliation_links,update_reconciliation_link,delete_reconciliation_link,run_auto_match,get_reconciliation_summary,get_reconciliation_recommendations,export_reconciliation - Rules — create, list, update, delete (vendor_category, default_project, processing_preference)
- Categories —
get_categories(17 built-in + custom),create_category,delete_category - Vendors —
get_vendors,create_vendor,delete_vendor - Usage —
get_usage(period, breakdown) - Exports —
export_transactions(CSV/JSON, optional file save)
Local tools:
process_receipt— scan + ledger append in one step (optional rename, dry-run, category hint)process_receipts_batch— scan a directory of images/PDFs (recursive, dry-run preview)summarize_ledger,export_ledger,add_ledger_correction— local CSV ledger managementupdate_memory,list_memory— persistent agent instruction storageget_config,validate_setup— configuration inspection and health check
Resources: recite://ledger, recite://memory, recite://health
Documentation
- User guide:
docs/user_guide.md
Source: README.md at commit 92436d3
Tools
0Version history
1- v0.1.4LatestSep 16, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.