MCP Tools & Capabilities

Reference for all 14 tools and 5 prompts KoKo exposes over MCP. Need help connecting a client? See MCP Clients. Prefer traditional HTTP? See the REST API.

MCP calls count against the same quota as REST API calls.

Available Tools

KoKo exposes 14 tools through MCP. Each tool returns structured JSON data that AI assistants can interpret and present to users.

search_credit_cards

Search for credit cards using natural language. Supports queries like "best travel card under $200 annual fee" or "cashback card for groceries."

ParameterTypeRequiredDescription
querystringYesNatural language search query
max_resultsintegerNoMax cards to return (1-10, default 5)
card_typestringNoFilter: travel, cashback, business, etc.
issuerstringNoFilter by issuer name
max_annual_feeintegerNoMaximum annual fee ($)
credit_tierstringNopoor, fair, good, or excellent

compare_cards

Compare 2-3 credit cards side by side with fees, rewards, net value, and break-even analysis (<100ms).

ParameterTypeRequiredDescription
card_nameslist[string]Yes2-3 card names to compare
monthly_spendingobjectNoMonthly spend by category, e.g. {"dining": 500, "travel": 300}
credit_tierstringNopoor, fair, good, or excellent
primary_goalstringNomaximize_rewards, minimize_fees, travel_perks, simplicity, or build_credit
issuer_preferenceslist[object]Noe.g. [{"issuer": "Chase", "weight": 0.8}]
benefit_selectionslist[string]NoBenefit keys the user uses (100%/0% model)

get_card_details

Get comprehensive details about a specific credit card including annual fee, rewards structure, benefits, welcome bonus, and application URL.

ParameterTypeRequiredDescription
card_namestringYesCard name (partial names work, e.g. "Sapphire Preferred")
issuerstringNoIssuer name to narrow results (e.g. "Chase")

calculate_card_value

Calculate the financial value and break-even point of a credit card based on your spending. Uses conservative calculation assumptions included in the response under the assumptions key.

ParameterTypeRequiredDescription
annual_spendingnumberYesTotal annual spending on this card ($)
annual_feenumberYesCard's annual fee ($)
sign_on_bonusnumberNoSign-on bonus amount (default 0)
sign_on_bonus_typestringNo"points", "cash", or "multiplier" (default "points")

create_mcp_session

Create a session for tracking your credit card analysis across multiple tool calls.

ParameterTypeRequiredDescription
No parameters required

optimize_portfolio

Analyze your credit card portfolio with health score, net value, and KEEP/OPTIMIZE/CANCEL verdicts for each card (<100ms).

ParameterTypeRequiredDescription
card_nameslist[string]YesList of credit card names you own
monthly_spendingobjectNoMonthly spending by category ($)
point_balanceslist[object]NoPoints/miles balances: [{"program": "chase_ur", "balance": 80000}]
benefit_selectionslist[string]NoBenefit keys you use: ["uber", "dining", "admirals_club"]
credit_tierstringNopoor, fair, good, or excellent
primary_goalstringNomaximize_rewards, minimize_fees, travel_perks, simplicity, or build_credit
issuer_preferenceslist[object]NoBoost/de-boost issuers
cancel_thresholdnumberNoNet value below this = CANCEL (default -50)
keep_thresholdnumberNoNet value above this = KEEP (default 50)
session_idstringNoSession ID from create_mcp_session

check_card_renewal

Check whether to renew a credit card when the annual fee comes due. Returns a RENEW, DOWNGRADE, or CANCEL_AND_REPLACE verdict with downgrade options and replacement suggestions.

ParameterTypeRequiredDescription
card_namestringYesThe card to evaluate (e.g. "Chase Sapphire Reserve")
monthly_spendingobjectNoMonthly spending by category ($)
other_cardslist[string]NoOther cards you own for portfolio context
benefit_selectionslist[string]NoBenefit keys you use
benefit_categories_usedlist[string]NoAlternative: category names instead of individual keys
credit_tierstringNopoor, fair, good, or excellent
primary_goalstringNomaximize_rewards, minimize_fees, travel_perks, simplicity, or build_credit
acquired_datestringNoDate card was acquired (YYYY-MM-DD) for anniversary-aware analysis
renewal_cancel_thresholdnumberNoNet value below this = CANCEL (default -100)
renewal_keep_thresholdnumberNoNet value above this = RENEW (default 50)
session_idstringNoSession ID from create_mcp_session

recommend_card_for_category

Recommend which card from your portfolio to use for a specific spending category, ranked by reward value (<100ms).

ParameterTypeRequiredDescription
card_nameslist[string]YesList of credit card names you own
categorystringYesOne of: groceries, dining, travel, gas, online_shopping, everything_else
amountnumberNoPurchase amount in dollars (default $100)
credit_tierstringNopoor, fair, good, or excellent
primary_goalstringNomaximize_rewards, minimize_fees, travel_perks, simplicity, or build_credit
issuer_preferenceslist[object]NoBoost/de-boost issuers
session_idstringNoSession ID from create_mcp_session

which_card_at_merchant

Find the best card from your portfolio for a purchase at a specific merchant. Auto-detects the spending category from the merchant name (e.g. Starbucks → dining). Deterministic for 350+ known merchants; uses AI fallback for unknown merchants.

ParameterTypeRequiredDescription
merchantstringYesMerchant name (e.g. "Starbucks", "Saks Fifth Avenue")
amountnumberNoPurchase amount in dollars (default $100)
card_nameslist[string]YesCard names in your portfolio

check_merchant_benefits

Check if any cards in your portfolio have credits or benefits at a specific merchant. Returns matching credits with value, frequency, and schedule, plus an earning recommendation.

ParameterTypeRequiredDescription
merchantstringYesMerchant name (e.g. "Saks Fifth Avenue", "Uber")
card_nameslist[string]YesCard names in your portfolio

get_card_benefits

Get all credits, benefits, and rewards multipliers for a specific card. Returns structured data with value, frequency, schedule, and conditions for each credit.

ParameterTypeRequiredDescription
card_namestringYesCard name (e.g. "Amex Platinum", "Amex Gold")

get_card_terms

Get APR, penalty fees, and grace period (Schumer Box data) for a credit card. Supports fuzzy name matching.

ParameterTypeRequiredDescription
card_namestringYesCard name (e.g. "Chase Sapphire Reserve")
issuerstringNoIssuer name to narrow results

get_card_changes

Get recent changes to a card's data (fee increases, benefit additions/removals, rewards multiplier changes). Draws from the append-only audit log.

ParameterTypeRequiredDescription
card_namestringYesCard name (e.g. "Chase Sapphire Preferred")
issuerstringNoIssuer name to narrow results
since_daysintegerNoLook back N days (default 90)
fieldstringNoFilter by field name (e.g. "annual_fee")

get_program_trends

Get valuation trends for a points program — portal CPP changes, transfer partner ratio changes, and partner additions/removals over time.

ParameterTypeRequiredDescription
program_keystringYesProgram key (e.g. "chase_ur", "amex_mr")
since_daysintegerNoLook back N days (default 90)

MCP Prompts

5 pre-built workflow templates that guide your AI assistant through common credit card tasks.

portfolio-review

Analyze your credit card portfolio with health score, card-by-card verdicts (KEEP/OPTIMIZE/CANCEL), and optimization strategies.

ParameterTypeRequiredDescription
card_namesstringYesComma-separated list of card names you own
monthly_spendingstringNoMonthly spending by category, e.g. "dining: 500, groceries: 400"

which-card

Find out which card from your wallet to use for a specific purchase or spending category to maximize your rewards.

ParameterTypeRequiredDescription
card_namesstringYesComma-separated list of card names you own
categorystringYesOne of: groceries, dining, travel, gas, online_shopping, everything_else
amountstringNoPurchase amount in dollars (default $100)

new-card-finder

Find the best new credit card based on your spending habits, fee tolerance, and credit score.

ParameterTypeRequiredDescription
spending_focusstringYesYour primary spending category (e.g. "travel and dining")
annual_fee_limitstringNoMaximum annual fee you'd consider (default "no limit")
credit_scorestringNoYour credit score range (e.g. "good", "excellent")

renewal-check

Check whether to renew a credit card when the annual fee comes due. Get a RENEW, DOWNGRADE, or CANCEL_AND_REPLACE verdict with value analysis and retention tips.

ParameterTypeRequiredDescription
card_namestringYesThe card to evaluate (e.g. "Chase Sapphire Reserve")
monthly_spendingstringNoMonthly spending by category, e.g. "dining: 500, groceries: 400"
other_cardsstringNoComma-separated list of other cards you own

card-risk-assessment

Comprehensive risk assessment for a credit card. Chains card terms (APR, penalties), recent data changes, and program valuation trends into a single analysis. Ideal for debt optimization and credit health products.

ParameterTypeRequiredDescription
card_namestringYesCard name to assess (e.g. "Chase Sapphire Reserve")

Troubleshooting

Connection or authentication problems? See MCP Clients troubleshooting.

Tool Errors

SymptomSolution
"Card not found" for a card you know exists Try using the full card name with issuer, e.g. "Chase Sapphire Preferred" instead of just "Sapphire Preferred".
Tool call times out Some tools query external data sources and may take a few seconds. If the issue persists, the server may be cold-starting (~10 seconds).