Credit Karma MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CK_COOKIES | No | Full Cookie header from a signed-in creditkarma.com request | |
| CK_DB_PATH | No | Path to SQLite database file | ~/.creditkarma-mcp/transactions.db |
| CK_DISABLE_FETCHPROXY | No | Set to '1' to skip the fetchproxy fallback (headless / CI) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ck_healthcheckA | Resolves the credential the way real tools do, then makes one authenticated request to creditkarma.com. Reports which source supplied the credential, whether creditkarma.com accepted it, the round-trip time, and a plain-English hint distinguishing 'no credential' from 'credential rejected' from 'a creditkarma.com-side problem'. Read-only; never returns the credential itself. Call this when a real tool fails and you want to know which hop broke — |
| ck_set_sessionA | Store a Credit Karma session to enable automatic token refresh. Pass the full Cookie header from a signed-in creditkarma.com request (Chrome DevTools → Network → any creditkarma.com request → Request Headers → right-click the |
| ck_forget_sessionA | Forget the Credit Karma session on this machine: delete the saved-session file (~/.creditkarma-mcp/session, or CK_SESSION_PATH) that ck_set_session and token refreshes write, and clear the credentials held in memory. Use when the user stops using this server or wants their stored login removed. Local only — Credit Karma is not contacted, synced transactions are kept, and a CK_COOKIES value set in the host config is not changed. |
| ck_sync_transactionsA | Sync Credit Karma transactions into the local SQLite database, then refresh account balances once (see ck_get_account_balances; a balance failure is reported in |
| ck_list_transactionsB | List transactions with optional filters. Paginated. |
| ck_get_recent_transactionsB | Return the N most recent transactions. Convenience shortcut for ck_list_transactions. |
| ck_get_spending_by_categoryB | Group debit transactions by category and return totals. |
| ck_get_spending_by_merchantB | Return top merchants by total debit spend. |
| ck_get_account_summaryB | Return per-account debit, credit, and net totals. |
| ck_get_account_balancesA | Current balance of every account: institution, type, last 4, current balance, available credit and credit limit (cards), and the as-of time. Reads the local database (filled by ck_sync_transactions); pass refresh:true to fetch live first. |
| ck_query_sqlA | Execute a raw SQL SELECT query (CTEs via WITH ... SELECT are supported) against the transactions database. Non-SELECT statements (INSERT, UPDATE, DELETE, DROP, etc.) are rejected. Returns at most max_rows rows (default 500, max 5000); a larger result comes back with truncated: true, so prefer aggregates or LIMIT/OFFSET paging. A query running longer than 10 s is stopped. Only the first statement runs. Tables: transactions, accounts, categories, merchants, sync_state. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Most tools target distinct resources or aggregations (spending-by-category vs by-merchant vs account-summary vs balances are clearly separated). The one real overlap is ck_get_recent_transactions, which is explicitly a convenience shortcut for ck_list_transactions, and ck_query_sql is a generic escape hatch that can duplicate the analytics tools, but the descriptions make the intended boundaries clear.
Every tool follows the same ck_ prefix and snake_case verb_noun pattern (ck_list_transactions, ck_get_account_balances, ck_sync_transactions, ck_set_session). No mixed conventions or stray camelCase.
11 tools is well within the ideal range and each earns its place: data retrieval, aggregation, sync, session lifecycle, and diagnostics. Nothing feels padded or redundant enough to trim.
The surface covers the full read/analytics lifecycle: credential setup and teardown, sync, raw and filtered queries, categorical/merchant spending, account summaries and balances, plus a healthcheck for failure diagnosis. Minor gaps remain (no per-category or per-merchant detail drill-down, no budget/goal coverage), but core workflows have no dead ends.