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

AI-generated 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.
Before you install
The server requires a Recite API key (RECITE_API_KEY) that is sent to the Recite service; keep it out of shared configs. Many tools create, update, delete or import transactions, projects, categories, vendors, rules and webhooks, and exports can write files locally. Receipt contents and transaction data are sent to the third-party Recite API, and usage may be limited by plan.

Installation

In SourceWeft

  1. Open Recite MCP in the dashboard and add it to a workspace.
  2. 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:

bash
uvx recite-mcp

Alternative (pipx):

bash
pipx install recite-mcp

Alternative (pip):

bash
python -m pip install recite-mcp

Contributors

bash
python -m pip install -e .[dev]pytest -qpython -m recite_mcp.server

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):

bash
# Windows PowerShell$env:RECITE_API_KEY="re_live_xxx"
bash
# macOS/Linuxexport RECITE_API_KEY="re_live_xxx"

Optional home override:

bash
# Windows PowerShell$env:RECITE_HOME="C:\path\to\recite-home"
bash
# macOS/Linuxexport RECITE_HOME="$HOME/.config/recite"

MCP Client Config

Copy-paste this config:

json
{  "mcpServers": {    "recite": {      "command": "uvx",      "args": ["recite-mcp"],      "env": {        "RECITE_API_KEY": "re_live_xxx"      }    }  }}

If installed via pipx or pip, use:

json
{  "mcpServers": {    "recite": {      "command": "recite-mcp",      "args": [],      "env": {        "RECITE_API_KEY": "re_live_xxx"      }    }  }}

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() reports missing_api_key or API requests are rejected.
  • Fix: set RECITE_API_KEY in MCP client env config (preferred) or shell environment.

uvx command not found

  • Symptom: terminal says uvx is not recognized.
  • Fix: install uv first, or use one of the alternatives:
    • pipx install recite-mcp
    • python -m pip install recite-mcp

recite-mcp command not found after install

  • Symptom: command not recognized after pipx/pip install.
  • Fix:
    • For pipx: run pipx ensurepath, then reopen terminal.
    • For pip: run with module entrypoint: python -m recite_mcp.server

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 (uvx vs recite-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 (or uvx recite-mcp --validate) to print local config/health JSON. Exit code is 0 if an API key is present, otherwise 1.

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 management
  • update_memory, list_memory — persistent agent instruction storage
  • get_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

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  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.