prism-wallet MCP v0.1.0

Model Context Protocol server for Prism Wallet. Read your accounts, transactions, budgets, holdings, and net worth — and ask the Prism financial AI — from any MCP-compatible client.

Base URL: https://prism-mcp-677461572521.us-central1.run.app

/docs.json · /health


1. Get an API key

Provision API keys from the Prism Wallet mobile app:

  1. Open the Prism Wallet mobile app.
  2. Open the drawer menu (top-left).
  3. Tap "API Keys".
  4. Create a new key, give it a name (e.g. "Claude Desktop"), and pick scopes.
  5. Copy the token immediately — it is only shown once.

Tokens look like mcp_<64 hex chars> and are shown exactly once. Pick scopes when you create the key (see below).

2. Available scopes

3. Connect with curl

Sanity-check the connection with a JSON-RPC initialize call:

curl -X POST https://prism-mcp-677461572521.us-central1.run.app/mcp \
  -H "Authorization: Bearer mcp_YOUR_TOKEN_HERE" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'

4. Connect from an MCP client

Pick your client below. All snippets use a placeholder token — replace mcp_YOUR_TOKEN_HERE with the token you minted in step 1.

Jump to: Claude Code (CLI) · Claude Desktop · Cursor · VS Code · Windsurf · Any other MCP client

Claude Code (CLI)

Run from any terminal

claude mcp add --transport http prism-wallet https://prism-mcp-677461572521.us-central1.run.app/mcp \
  --header "Authorization: Bearer mcp_YOUR_TOKEN_HERE"

Adds the server for the current user. Use --scope project to commit a .mcp.json to a repo instead. Verify with `claude mcp list`.

Claude Desktop

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "prism-wallet": {
      "url": "https://prism-mcp-677461572521.us-central1.run.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_YOUR_TOKEN_HERE"
      }
    }
  }
}

Quit and relaunch Claude Desktop after editing. Prism tools show up in the MCP tool picker once the connection is healthy.

Cursor

Global: ~/.cursor/mcp.json
Per-project: <repo>/.cursor/mcp.json

{
  "mcpServers": {
    "prism-wallet": {
      "url": "https://prism-mcp-677461572521.us-central1.run.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_YOUR_TOKEN_HERE"
      }
    }
  }
}

Or use Cursor → Settings → MCP → "Add new MCP server" and paste the same JSON.

VS Code

Workspace: .vscode/mcp.json
User settings: settings.json under "mcp"

{
  "servers": {
    "prism-wallet": {
      "type": "http",
      "url": "https://prism-mcp-677461572521.us-central1.run.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_YOUR_TOKEN_HERE"
      }
    }
  }
}

VS Code requires an MCP-capable extension (e.g. GitHub Copilot Chat with MCP enabled). Reload the window after saving.

Windsurf

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "prism-wallet": {
      "url": "https://prism-mcp-677461572521.us-central1.run.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_YOUR_TOKEN_HERE"
      }
    }
  }
}

Open Windsurf → Cascade → MCP settings → Refresh after editing the file.

Any other MCP client

Streamable HTTP, JSON-RPC 2.0

{
  "mcpServers": {
    "prism-wallet": {
      "url": "https://prism-mcp-677461572521.us-central1.run.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_YOUR_TOKEN_HERE"
      }
    }
  }
}

POST JSON-RPC to /mcp with the Authorization: Bearer header. Most clients accept the mcpServers shape above; otherwise consult that client's MCP docs.

5. claude.ai (web)

On claude.ai, go to Settings → Connectors → "Add custom connector" and paste these three values:

URL https://prism-mcp-677461572521.us-central1.run.app/mcp
Client ID mcp_client_8eb5a7c61c714677
Client Secret mcp_secret_06b0d375469143e64621bba3f738f5a8bf4772c2cc7cbbf6ec96c6061c5be2dc

Claude opens a Prism sign-in page in your browser; sign in with your normal Prism email + password and approve. That's it — no further setup. You'll authorize once and Claude refreshes its access automatically.

6. Tools

NameDescriptionScopes
prism_list_accounts List all of the user's connected financial accounts (checking, savings, credit, investments, loans), excluding hidden ones, with current balance and metadata. mcp:read
prism_account_balances Get a summary of all account balances and the user's total balance across them. mcp:read
prism_list_transactions List the user's transactions, optionally filtered by date range, account, category, or merchant. Excludes deleted transactions. Pass dates as ISO strings. mcp:read
prism_recent_transactions Get the most recent N transactions (default 20). mcp:read
prism_search_transactions Semantic search over the user's transactions using vector embeddings. Use natural language ("coffee in november", "subscriptions over $20").
Only registered when Pinecone is enabled (config.pineconeEnabled).
mcp:read
prism_spending_by_category Get total spending broken down by category over a period. Returns the breakdown sorted by amount descending. mcp:read
prism_get_budget_summary Get the current month's budget status for every active budget — budgeted, spent, remaining, and percent used per category. mcp:read
prism_recurring_transactions List active recurring/subscription charges with cadence and the next expected date, plus an estimated monthly total. mcp:read
prism_merchant_spending Total spending at a specific merchant (case-insensitive substring match) over the last N months. mcp:read
prism_net_worth Get the user's most recent net worth snapshot and the last N daily snapshots for trend. mcp:read
prism_list_holdings List investment holdings (stocks, ETFs, crypto) across all the user's investment accounts. mcp:read
prism_list_categories List the category tree the user can assign to transactions and budgets. mcp:read
prism_dashboard Financial overview: 10 most recent transactions, net worth summary with month/year deltas, monthly spend/income, and review/onboarding progress. mcp:read
prism_cash_flow Current-month cash flow: money in, money out, net cash flow, savings rate, expense ratio, and percentage change vs. previous month. mcp:read
prism_cash_flow_forecast Forecast daily balance over the next N days using scheduled recurring charges plus a historical daily average of non-recurring transactions. mcp:read
prism_monthly_cash_flow Historical income, expenses, and net cash flow per month for the last N months. mcp:read
prism_financial_health_score Composite financial health score (0-100) with per-pillar breakdown (budget adherence, savings rate, debt-to-income, emergency fund, spending consistency, net worth trend) and recommendations. mcp:read
prism_compare_spending_periods Compare spending between two periods (named periods or custom date ranges). Returns per-category amounts for each period and the delta. mcp:read
prism_categorize_transaction Set a single category on a transaction (replaces any existing splits). Both transaction and category must belong to the authenticated user. mcp:write
prism_split_transaction Split a transaction across multiple categories by percentage. Percentages must sum to 100. Replaces any existing splits. mcp:write
prism_create_budget Create or upsert a budget for a category. If a budget already exists for that category, it is updated. mcp:write
prism_update_budget Update an existing budget by id. mcp:write
prism_delete_budget Soft-delete a budget by id. mcp:write
prism_mark_digest_read Mark an AI digest as read for the authenticated user. mcp:write
prism_update_transaction Update a single transaction's name, merchant, amount, date, category, notes, isTransfer, isExcluded, or reviewed flag. mcp:write
prism_bulk_update_transactions Apply the same field updates to many transactions in one call. All transactions must belong to the authenticated user. mcp:write
prism_set_account_visibility Show or hide an account from the user's dashboards and aggregates (toggles Account.isHidden). mcp:write
prism_disconnect_institution Disconnect a linked institution (Item) — revokes the provider access token where possible and deletes the item along with its accounts, transactions, holdings, and related data. mcp:write
prism_refresh_institution Trigger a manual sync for a linked institution. Rate-limited to two refreshes per item per day. Returns the refresh count remaining. mcp:write
prism_create_category Create a custom spending or income category scoped to the user. mcp:write
prism_update_category Update a user-owned category's name, color, icon, or type. System categories cannot be edited. mcp:write
prism_delete_category Soft-delete a user-owned category. System categories cannot be deleted. mcp:write
prism_create_recurring_transaction Create a manual recurring transaction (subscription, bill, paycheck, etc.) on a user-owned account and category. mcp:write
prism_update_recurring_transaction Update a manual or detected recurring transaction. Marks the record as user-changed so later detection cycles do not overwrite it. mcp:write
prism_archive_recurring_transaction Archive a recurring transaction (marks it inactive). Optionally record a reason and note. mcp:write

7. Resources

Read-only data sources addressable via MCP resource URIs.

URIDescription
prismwallet://accounts Accounts
All visible financial accounts and current balances.
prismwallet://budgets/current Current budgets
Status of every active budget for the current month.
prismwallet://net-worth Net worth
Latest net worth snapshot and 30-day history.
prismwallet://transactions/recent Recent transactions
The 30 most recent non-excluded transactions.
prismwallet://recurring Recurring transactions
Active subscriptions and recurring charges.
prismwallet://categories Categories
The user's category list (system + custom).

All data is automatically scoped to the API key owner. Tokens are stored hashed (SHA-256); revoke a key any time from the same "API Keys" screen in the mobile app.