Skip to main content

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:

uvx recite-mcp

Alternative (pipx):

pipx install recite-mcp

Alternative (pip):

python -m pip install recite-mcp

Contributors

python -m pip install -e .[dev]
pytest -q
python -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):

# Windows PowerShell
$env:RECITE_API_KEY="re_live_xxx"
# macOS/Linux
export RECITE_API_KEY="re_live_xxx"

Optional home override:

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

MCP Client Config

Copy-paste this config:

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

If installed via pipx or pip, use:

{
  "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

Metadata

Release files for recite-mcp 0.1.12

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for recite-mcp 0.1.12
File Size Uploaded
recite_mcp-0.1.12.tar.gz 41.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for recite-mcp 0.1.12
File Interpreter ABI Platform
recite_mcp-0.1.12-py3-none-any.whl Python 3 none any Details

Total release size: 66.7 kB

Release files / recite_mcp-0.1.12.tar.gz

Download URL recite_mcp-0.1.12.tar.gz
Size 41.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f694462337424fa31236fa7458c942af2b4ebde6deee191b3ceaa0c408bc14ab
BLAKE2b-256 checksum
How to use checksums
0e2aaa394f04f876e585b76a45bc005476795d437570ca1b655602ad7640f1c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 5, 2026.

Transparency log

Release files / recite_mcp-0.1.12-py3-none-any.whl

Download URL recite_mcp-0.1.12-py3-none-any.whl
Size 24.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
49a544851ffb6d57d262dcb0797d329068be0c2639625b0374d849f57080eba8
BLAKE2b-256 checksum
How to use checksums
d5385e3365f49d53ce30505f9d734297d8ea53dee4b4fe24466ef14893298683
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 5, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.12 This release

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page