Spending MCP

Spending MCP by ExpeFi — Analyze Your Expenses with AI

Authorize an approved AI client to read normalized expense and income records saved in ExpeFi. You control the client and remain responsible for its retention and analysis of returned data.

Pre-registered clientsRead-onlyOAuth 2.1 with PKCEUser-revocable

366 days

maximum date range

500

maximum bounded result set

100

transactions per page

Data contract

Transactions with explicit bounds and context

The transaction tool reports normalized records and makes incomplete result sets visible. It does not contact a provider, move money, recategorize records, or silently treat a truncated set as complete.

Amounts and currencies

Every record keeps its original amount and currency.

Merchant and description

Available normalized text helps a client group or explain activity.

Category context

A pseudonymous category reference is accompanied by the known ExpeFi category name.

Status and source

Pending state and normalized manual, bank, or import source remain visible.

Completeness

The response reports asOf, partial, missing, total, and nextCursor fields.

Bounded by design

  • A start-only filter ends on the current UTC date; an end-only filter and an omitted range begin 365 days earlier, covering at most 366 calendar dates.
  • The bounded source set contains at most 500 transactions and is exposed in pages of up to 100.
  • When more records exist, partial is true and missing explains the omitted history.
  • The server does not call Plaid or another provider to refresh data during a request.

Example response

Synthetic transaction response. It illustrates the response shape and is not customer data.

{
  "asOf": "2026-08-24T09:00:00.000Z",
  "partial": false,
  "missing": [],
  "data": {
    "items": [{
      "type": "expense",
      "amount": 84.2,
      "currency": "USD",
      "merchant": "Example Market",
      "categoryName": "Groceries",
      "date": "2026-08-18",
      "pending": false,
      "source": "manual"
    }],
    "nextCursor": null,
    "total": 1
  }
}

Authorize, use, revoke

An approved client starts OAuth authorization, you approve the requested read scopes, and ExpeFi binds every request to the authenticated token subject. D1 stores grant metadata and revocation state, never raw access or refresh tokens. Revoke access from Settings whenever you choose.

  1. 01Choose an approved MCP client and start its ExpeFi connection.
  2. 02Sign in through Clerk and review the requested read scopes.
  3. 03Use the granted tools within their pagination and response limits.
  4. 04Revoke the client from MCP / AI connections in ExpeFi Settings.

Frequently asked questions

How much transaction history can I request?

One request covers at most 366 calendar dates. Start-only uses the current UTC date as its end; end-only and omitted ranges begin 365 days before their end. The bounded result set contains up to 500 records, returned in pages of up to 100.

How will I know results are incomplete?

The response sets partial to true and lists the missing coverage instead of presenting an incomplete result as complete.

Can the client create or edit a transaction?

No. The Spending MCP exposes no write or recategorization tool.

Are bank account numbers included?

No. Results use pseudonymous references and exclude account numbers, routing numbers, tokens, credentials, and raw provider identifiers.

Related MCP pages