sh.agentcard/agentcard

MCPcommunitylive
v1.0.0sh.agentcardUnknownUpdated 2mo ago

Prepaid virtual cards for AI agents: one-time cards, spend caps, human approvals.

Endpoint healthlive
checked 4h ago · 618ms
100% of the last 4 checks reached this endpoint
Works in
ClaudeCursorCopilotChatGPTGemini

Inferred from the transports this listing declares (streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.

Automatically indexed from public sources. Not yet verified by the developer on Forge.Claim this listing →
2mo agoLast update
Package
Authorsh.agentcard
LicenseUnknown
Version1.0.0
Sourcemcp-registry
Trust Status
B
60/100Good
Listed in Forge index+10/10
Publisher identity verified+0/30
Publisher: this listing has no repository on file, so `forge publish` cannot verify ownership automatically. Use "Claim this listing" above — Forge reviews these by hand.
Domain verification+0/10
Not currently available for this listing type — the domain-verification check only runs for npm-backed packages today, so this row cannot be earned here yet regardless of what's hosted at the domain.
Prompt-injection scan · clean+30/30
Obfuscation / exfil scan · clean+20/20
StatusCommunity-indexed
PublisherUnverified
SignatureUnsigned
Domain
Provenance
DependenciesNot audited
Tool surface58 tools · 2 privileged
Security scan✓ Cleanvlive · todayHow well does this scan work?
PROMPTtool:recommend_card#merchant_urlLinks to undeclared domain: doordash.com
EvalsNone
IndexedJul 15, 2026

Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.

Tools

58 tools · 2 privileged
Observed live from the vendor's endpoint4h ago

Read from a real MCP initialize → tools/list handshake against the declared endpoint. No tool was ever invoked — tools/list is the read-only introspection call the protocol defines for this. It reflects what the server advertised at that moment; a hosted endpoint is not pinned to any version and can change without notice.

  • https://mcp.agentcard.sh/mcp58 tools · 618ms
buyShop and check out, in natural language, across the merchants the user has linked (DoorDash, etc.). Pass the whole ask as `request` — e.g. "order a caesar salad from Zuni on DoorDash" — and this tool runs the shopping flow for you. It is CONVERSATIONAL: this tool RETURNS a `conversation_id`; pass t…

Shop and check out, in natural language, across the merchants the user has linked (DoorDash, etc.). Pass the whole ask as `request` — e.g. "order a caesar salad from Zuni on DoorDash" — and this tool runs the shopping flow for you. It is CONVERSATIONAL: this tool RETURNS a `conversation_id`; pass t…

ParameterTypeDescription
request*stringThe natural-language ask or follow-up, e.g. "order a caesar salad from Zuni on DoorDash", "deliver to 123 Main St", or "yes, place the order".
conversation_idstringThe conversation_id returned by a previous buy call. Pass it to continue the SAME order (keeps the cart + confirmation). Omit to start a new order.
new_orderbooleanStart a fresh shopping conversation instead of continuing the current one. Use when beginning an unrelated order (ignores any conversation_id).
surprise_meBuy the user something totally unexpected and very silly/stupid-fun under a small dollar cap (default $10, hard max $25). Great when the user cannot decide what to order (from DoorDash etc.) or just wants a fun surprise. It kicks off a shopping conversation that FIRST brainstorms deliberately stupi…

Buy the user something totally unexpected and very silly/stupid-fun under a small dollar cap (default $10, hard max $25). Great when the user cannot decide what to order (from DoorDash etc.) or just wants a fun surprise. It kicks off a shopping conversation that FIRST brainstorms deliberately stupi…

ParameterTypeDescription
max_dollarsnumberHard spend cap in dollars, total including fees. Optional; default 10, values above 25 are clamped to 25.
merchantstringOptional merchant hint the surprise should come from, e.g. 'doordash'. Omit to let the agent pick.
vibestringOptional notes/vibe from the user, e.g. "make it food", "something for my desk", "they love ducks".
get_instructionsCall this FIRST; returns the latest usage guide for shopping with `buy` AND for operating the Agentcard account tools (cards, funding, your own card, KYC, support).

Call this FIRST; returns the latest usage guide for shopping with `buy` AND for operating the Agentcard account tools (cards, funding, your own card, KYC, support).

No input schema was published for this tool.

whoamiShow who you are operating as: the authenticated AgentCard account's email, user id, name, plan, KYC + account status, member-since date, and how this session is connected (personal login vs a third-party OAuth app connection, with the app name). Call this when the user asks "who am I" / "which acc…

Show who you are operating as: the authenticated AgentCard account's email, user id, name, plan, KYC + account status, member-since date, and how this session is connected (personal login vs a third-party OAuth app connection, with the app name). Call this when the user asks "who am I" / "which acc…

No input schema was published for this tool.

list_cardsThe user's wallet: every live card they hold, with IDs, last four digits, expiry, balance, and status, plus `vaultCards`: the user's OWN cards stored in their Agentcard vault (display fields only; a vaulted card pays through buy with a Face ID approval and never exposes a number). Start here to fin…

The user's wallet: every live card they hold, with IDs, last four digits, expiry, balance, and status, plus `vaultCards`: the user's OWN cards stored in their Agentcard vault (display fields only; a vaulted card pays through buy with a Face ID approval and never exposes a number). Start here to fin…

No input schema was published for this tool.

get_card_detailsGet decrypted PAN, CVV, expiry, and current balance for a specific card. Use this only when you need to fill in a payment form — prefer get_card_balance if you only need the balance. May require human approval before returning credentials. If approval is required, prompt the user and then call appr…

Get decrypted PAN, CVV, expiry, and current balance for a specific card. Use this only when you need to fill in a payment form — prefer get_card_balance if you only need the balance. May require human approval before returning credentials. If approval is required, prompt the user and then call appr…

ParameterTypeDescription
card_id*stringThe card ID
approval_idstringApproval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is…
get_card_balanceThe live balance of ONE virtual card (the user's overall cash balance is get_balance). Prefer this over get_card_details when you only need to verify available funds: it is faster and does not expose sensitive card credentials.

The live balance of ONE virtual card (the user's overall cash balance is get_balance). Prefer this over get_card_details when you only need to verify available funds: it is faster and does not expose sensitive card credentials.

ParameterTypeDescription
card_id*stringThe card ID
close_cardPermanently close a virtual card. This is irreversible — the card cannot be reopened. Safe to call on an already-closed card (idempotent). The user's rewards card (the card their tokenback redeems onto) is close-protected: closing it returns its balance to the wallet but retires the card number the…

Permanently close a virtual card. This is irreversible — the card cannot be reopened. Safe to call on an already-closed card (idempotent). The user's rewards card (the card their tokenback redeems onto) is close-protected: closing it returns its balance to the wallet but retires the card number the…

ParameterTypeDescription
card_id*stringThe card ID to close
confirm_rewards_cardbooleanRequired to close the rewards card. Only set after the user explicitly confirms; never set it preemptively.
approval_idstringApproval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is…
create_cardThe one card tool: get the user a virtual debit card for a purchase. Cards are live and charged for real when used. For a FIRST-TIME user it starts by putting the user's OWN card in their Agentcard vault (any Visa, Mastercard, Amex, or Discover from any country, no identity verification (KYC), no b…

The one card tool: get the user a virtual debit card for a purchase. Cards are live and charged for real when used. For a FIRST-TIME user it starts by putting the user's OWN card in their Agentcard vault (any Visa, Mastercard, Amex, or Discover from any country, no identity verification (KYC), no b…

ParameterTypeDescription
amount_cents*numberCard funding amount in CENTS, not dollars (minimum 100). 100 = $1.00 and 2500 = $25.00 — a value like 25 would be $0.25. Company-governed connections have no m…
connected_card_idstringMulti-card: issue against a SPECIFIC added card (an id from the user's added cards, see list_added_cards) instead of the newest active one. Omit for the defaul…
pending_card_idstringOnly when retrying an approval_pending purchase whose preset has since changed: the cardId from that earlier answer, together with purchase_key. The older appr…
purchase_keystringThe purchaseKey from the same approval_pending answer as pending_card_id; the pair proves the retry is for that purchase.
sourcestringForce the card to be funded from the user's cash balance (the issued path: KYC + wallet funding) even when they have an added or vaulted card or would otherwis…
restart_setupbooleanSet true ONLY when the user lost or never received a vault link, it expired (about 15 minutes), or they want to add ANOTHER card. Never needed on the first cal…
funds_sourcestringWhere the card funds come from. OMIT unless instructed: the server applies the right default (company-connected accounts use the company wallet automatically w…
typestringCard behavior. 'single_use' (default) closes after its first approved charge — right for one-off purchases. 'multi_use' stays open across charges until its tot…
expires_atstringOptional hard expiry for a multi-use card (ISO-8601 with timezone, e.g. "2027-01-01T00:00:00Z"). Must be in the future, at most 365 days out. The card closes a…
presetPreset for this card: a template name (ai_labs, weekday_meals, cli_only, daily), comma-separated templates, a saved preset name/id, inline JSON privileges, or…
scope_presetstringSilent alias for preset 'ai_labs': a multi-use card restricted to AI-lab merchants (OpenAI, Anthropic, Gemini); charges anywhere else are declined at authoriza…
get_card_presetRead a card's preset (spend limits, rate limits, allowed categories/merchants, time windows, and surfaces) as a plain-English summary. Omit card_id to read the account default preset, or pass for_app to read a specific app's standing preset instead. Cards (apps, and accounts) without a preset are u…

Read a card's preset (spend limits, rate limits, allowed categories/merchants, time windows, and surfaces) as a plain-English summary. Omit card_id to read the account default preset, or pass for_app to read a specific app's standing preset instead. Cards (apps, and accounts) without a preset are u…

ParameterTypeDescription
card_idstringThe card id (from list_cards). Omit to read the account default preset (or for_app's, if set).
for_appstringRead a specific app's standing preset instead of the account default: "cli" for the CLI, a connected app's name, or its client id. Ignored when card_id is set.
set_card_presetUpdate a card's preset, the account default (card_id and for_app both omitted), or a specific app's standing preset (for_app). Pass a template name (ai_labs, weekday_meals, cli_only, daily), a saved preset name (from list_presets), a comma-separated template list, or inline JSON / { name, privilege…

Update a card's preset, the account default (card_id and for_app both omitted), or a specific app's standing preset (for_app). Pass a template name (ai_labs, weekday_meals, cli_only, daily), a saved preset name (from list_presets), a comma-separated template list, or inline JSON / { name, privilege…

ParameterTypeDescription
card_idstringThe card id. Omit to set the account default preset (or for_app's, if set).
for_appstringSet a specific app's standing preset instead of the account default: "cli" for the CLI, a connected app's name, or its client id. Ignored when card_id is set.
preset*Template name (ai_labs, weekday_meals, cli_only, daily), comma-separated templates, inline JSON privileges, or { name?, privileges }. Pass null or "" with card…
allow_card_merchantRemember a merchant so the next matching charge is allowed even when the card's category or merchant rules would otherwise deny it. Pass card_id for that card (default), or scope "account" to update the account standing preset (new cards inherit it). One tool call — does not replace the rest of the…

Remember a merchant so the next matching charge is allowed even when the card's category or merchant rules would otherwise deny it. Pass card_id for that card (default), or scope "account" to update the account standing preset (new cards inherit it). One tool call — does not replace the rest of the…

ParameterTypeDescription
pattern*stringMerchant name pattern to remember, e.g. "STARBUCKS" or "ODD CAFE".
card_idstringCard id (from list_cards). Required when scope is "card" (default).
scopestringWhere to remember the merchant. Default "card". Use "account" for the standing preset (omit card_id).
list_presetsList every preset you can use by name: the built-in templates (ai_labs, weekday_meals, cli_only, daily) plus any you've saved yourself, each with a plain-English summary of its rules.

List every preset you can use by name: the built-in templates (ai_labs, weekday_meals, cli_only, daily) plus any you've saved yourself, each with a plain-English summary of its rules.

No input schema was published for this tool.

save_presetSave your own preset — a named set of rules (spend caps, category/merchant/place/currency/day/hour/program restrictions) you can reuse by name in set_card_preset or create_card. Saving under a name you already used adds a new version: cards already using the old one keep it, new ones get the update…

Save your own preset — a named set of rules (spend caps, category/merchant/place/currency/day/hour/program restrictions) you can reuse by name in set_card_preset or create_card. Saving under a name you already used adds a new version: cards already using the old one keep it, new ones get the update…

ParameterTypeDescription
name*stringA name for this preset, e.g. "meals-only".
totalnumberLifetime spend cap, in US dollars.
per_daynumberSpend cap per rolling 24 hours, in US dollars.
per_weeknumberSpend cap per rolling 7 days, in US dollars.
per_monthnumberSpend cap per rolling 30 days, in US dollars.
only_categoriesstringComma-separated spend categories to allow (strict), e.g. "meals,groceries" (meals, groceries, travel, software, ai, wellness, retail).
watch_categoriesstringCategories in Watch mode (allow + notify on mismatch instead of refuse/pause): meals, groceries, travel, software, ai, wellness, retail. Spend caps, places, ti…
only_merchantsstringComma-separated merchant name patterns to allow, e.g. "openai,anthropic".
only_instringComma-separated places to allow charges from: a country ("US", "Canada"), a region ("europe", "eu", "north-america", "latin-america", "apac"), or a US state ("…
only_currenciesstringComma-separated purchase currencies to allow (strict): ISO 4217 codes or common names, e.g. "usd,eur" or "dollars,euros,pounds,yen". A purchase in another curr…
watch_currenciesstringPurchase currencies in Watch mode (allow + notify on mismatch instead of refuse/pause), e.g. "usd,eur". Checked by Agentcard, not by the card network. Use only…
only_daysstringComma-separated days to allow, e.g. "mon,tue,wed" or "weekdays"/"weekends".
only_hoursstringAn hour range to allow, e.g. "9-17" (24-hour clock; defaults to UTC without timezone).
timezonestringIANA timezone for only_days/only_hours (default UTC), e.g. "America/Los_Angeles". Always shown in summaries.
only_fromstringComma-separated callers to allow, e.g. "cli,mcp" (cli, mcp, api, browser).
privilegesarrayAdvanced: raw privilege objects instead of the rule fields above.
delete_presetprivilegedDelete a preset you saved (from save_preset). Refuses built-in template names — there's nothing to delete there. Cards already issued keep whatever rules they have; this only retires the name for future use. Refused while the name is still the account default or an app's standing preset — clear tha…

Delete a preset you saved (from save_preset). Refuses built-in template names — there's nothing to delete there. Cards already issued keep whatever rules they have; this only retires the name for future use. Refused while the name is still the account default or an app's standing preset — clear tha…

ParameterTypeDescription
name*stringThe saved preset name to delete.
get_wallet_linkThe user's hosted wallet, as one shareable URL. Opens their Agentcard wallet in the browser: every card in one place, apply for an Agentcard card (identity verification runs right in the page). Mint it whenever the user needs a browser step (seeing cards, finishing verification when in-chat photos…

The user's hosted wallet, as one shareable URL. Opens their Agentcard wallet in the browser: every card in one place, apply for an Agentcard card (identity verification runs right in the page). Mint it whenever the user needs a browser step (seeing cards, finishing verification when in-chat photos…

ParameterTypeDescription
purposestring"wallet" (default) opens the hosted wallet. "add_card" opens the vault card form so the user can put their own card on file; single-use, about 15 minutes.
merchantstringMerchant name shown on the payment-approval sheet (with amount_cents).
amount_centsintegerAmount in cents. When present, the link opens on the payment-approval sheet for this charge.
list_added_cardsList the user's ADDED cards (their own Visa/Mastercard cards enrolled via create_card's add-card flow — the funding source that charges their own card), with ids, brand, last4, expiry, and status. The row marked isDefault is what create_card charges when no connected_card_id is given — the user's c…

List the user's ADDED cards (their own Visa/Mastercard cards enrolled via create_card's add-card flow — the funding source that charges their own card), with ids, brand, last4, expiry, and status. The row marked isDefault is what create_card charges when no connected_card_id is given — the user's c…

No input schema was published for this tool.

remove_added_cardprivilegedRemove (unenroll) one of the user's added cards. Irreversible for that enrollment: any virtual cards created against it are closed first, then the card is unenrolled at the network. ALWAYS confirm with the user before calling. Get ids from list_added_cards. The user can add the same card again late…

Remove (unenroll) one of the user's added cards. Irreversible for that enrollment: any virtual cards created against it are closed first, then the card is unenrolled at the network. ALWAYS confirm with the user before calling. Get ids from list_added_cards. The user can add the same card again late…

ParameterTypeDescription
attached_card_id*stringThe id of the added card to remove (from list_added_cards).
pause_cardPause a multi-use card: temporarily blocks ALL new charges (reversible — use resume_card to unblock). Right for "stop this subscription for now" or a card the user suspects is compromised but is not sure. Only multi-use cards can be paused; single-use cards close after one charge and cannot be paus…

Pause a multi-use card: temporarily blocks ALL new charges (reversible — use resume_card to unblock). Right for "stop this subscription for now" or a card the user suspects is compromised but is not sure. Only multi-use cards can be paused; single-use cards close after one charge and cannot be paus…

ParameterTypeDescription
card_id*stringThe card ID to pause (from list_cards or create_card).
approval_idstringApproval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is…
resume_cardResume a paused multi-use card so it accepts charges again. The inverse of pause_card.

Resume a paused multi-use card so it accepts charges again. The inverse of pause_card.

ParameterTypeDescription
card_id*stringThe paused card ID to resume.
approval_idstringApproval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is…
update_card_limitChange a multi-use card's total spending limit. Raising it reserves the extra amount from the user's cash balance (top up with add_funds if short); lowering it frees the difference, but the new limit can never go below what the card has already spent. Single-use cards cannot be resized.

Change a multi-use card's total spending limit. Raising it reserves the extra amount from the user's cash balance (top up with add_funds if short); lowering it frees the difference, but the new limit can never go below what the card has already spent. Single-use cards cannot be resized.

ParameterTypeDescription
card_id*stringThe multi-use card ID to resize.
approval_idstringApproval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is…
spend_limit_centsnumberThe new TOTAL spending limit in cents (minimum 100). This is the lifetime cap, not a delta: a card that spent $20 of a $50 limit, resized to 8000, can spend $6…
new_limit_centsnumberDeprecated alias for spend_limit_cents. Prefer spend_limit_cents (matches the docs and the REST API).
get_rewardsShow the user's tokenback: balance, lifetime earned, and recent activity. Tokenback pays tokens (1 token = 1¢ of credit value) on settled card spend. AI cards (create_card scope_preset: 'ai_labs') earn a boosted rate on AI-lab purchases, and companies can route a share of their earnings to their us…

Show the user's tokenback: balance, lifetime earned, and recent activity. Tokenback pays tokens (1 token = 1¢ of credit value) on settled card spend. AI cards (create_card scope_preset: 'ai_labs') earn a boosted rate on AI-lab purchases, and companies can route a share of their earnings to their us…

No input schema was published for this tool.

redeem_rewardsRedeem tokenback: the tokens' cash value (1 token = 1¢) lands on the user's rewards card as spending power. The rewards card is permanent and locked to AI-lab merchants (OpenAI, Anthropic, Gemini) — created on first redemption, topped up after. Check get_rewards first for the balance and the minimu…

Redeem tokenback: the tokens' cash value (1 token = 1¢) lands on the user's rewards card as spending power. The rewards card is permanent and locked to AI-lab merchants (OpenAI, Anthropic, Gemini) — created on first redemption, topped up after. Check get_rewards first for the balance and the minimu…

ParameterTypeDescription
tokens*numberHow many tokens to redeem (1 token = 1 cent, so 500 tokens = $5.00 of wallet credit).
recommend_cardAsk the vault which of the user's own stored cards earns the most for a purchase (smart purchases). Pass the merchant name, its website when you know it, and the amount. Returns the card id to use as card_id at checkout, the reason in plain words, and the runners-up. null when smart purchases is of…

Ask the vault which of the user's own stored cards earns the most for a purchase (smart purchases). Pass the merchant name, its website when you know it, and the amount. Returns the card id to use as card_id at checkout, the reason in plain words, and the runners-up. null when smart purchases is of…

NOTEIn parameter merchant_url: Links to undeclared domain: doordash.com
ParameterTypeDescription
merchant*stringThe merchant as the user would see it, e.g. "DoorDash".
merchant_urlstringThe merchant's website or checkout origin, e.g. https://www.doordash.com. Improves the category match.
amount_centsnumberOrder total in cents, when known.
currencystringISO currency code, default usd. Non-USD purchases account for foreign transaction fees.
name_cardTell the vault which card product one of the user's own stored cards is (e.g. "Chase Sapphire Preferred", "Amex Gold"), so smart purchases can rank it. Takes a vault card id (a `vaultCards` row from list_cards) and the product name as the user says it; the closest match is saved and echoed back. Co…

Tell the vault which card product one of the user's own stored cards is (e.g. "Chase Sapphire Preferred", "Amex Gold"), so smart purchases can rank it. Takes a vault card id (a `vaultCards` row from list_cards) and the product name as the user says it; the closest match is saved and echoed back. Co…

ParameterTypeDescription
card_id*stringThe vault card id (from list_cards → vaultCards).
productstringThe card product as the user says it, e.g. "Chase Sapphire Preferred" or "Amex Gold". Four characters minimum.
clear_productbooleantrue = forget the product name. Do not combine with product.
smart_excludedbooleantrue = leave this card out of smart purchases; false = include it again.
start_support_chatStart a new support conversation and send the first message

Start a new support conversation and send the first message

ParameterTypeDescription
message*stringYour initial support message
send_support_messageSend a message in an existing support conversation

Send a message in an existing support conversation

ParameterTypeDescription
conversation_id*stringThe conversation ID
message*stringYour message
read_support_chatRead the message history of a support conversation

Read the message history of a support conversation

ParameterTypeDescription
conversation_id*stringThe conversation ID
list_pending_approvalsList the user's PENDING approval requests: asks from connected apps (create a card, view full card details, close/pause/resume a card, change a limit) waiting on the user's decision. Surface each one to the user and let THEM decide; after the user answers, resolve with approve_request. NEVER approv…

List the user's PENDING approval requests: asks from connected apps (create a card, view full card details, close/pause/resume a card, change a limit) waiting on the user's decision. Surface each one to the user and let THEM decide; after the user answers, resolve with approve_request. NEVER approv…

No input schema was published for this tool.

approve_requestResolve a pending approval request (approve or deny) once the USER has decided. Use this after get_card_details or create_card returns a 202 requiring approval, or for a row from list_pending_approvals. For card_details and transaction, approval automatically completes the follow-up action and retu…

Resolve a pending approval request (approve or deny) once the USER has decided. Use this after get_card_details or create_card returns a 202 requiring approval, or for a row from list_pending_approvals. For card_details and transaction, approval automatically completes the follow-up action and retu…

ParameterTypeDescription
approval_id*stringThe approval request ID
decision*stringWhether to approve or deny the request
action*stringThe original action type from the approval prompt (list_pending_approvals rows carry it as action).
resource_id*stringCard ID (for card_details and cross_app actions) or approval ID (for transaction)
submit_user_infoSubmit the user's phone number and terms acceptance for a virtual card. Call this after create_card returns user_info_required. Do NOT ask the user for occupation, income, or account purpose — those are never asked. Identity fields (name, date of birth, SSN / national ID, address) belong to the KYC…

Submit the user's phone number and terms acceptance for a virtual card. Call this after create_card returns user_info_required. Do NOT ask the user for occupation, income, or account purpose — those are never asked. Identity fields (name, date of birth, SSN / national ID, address) belong to the KYC…

ParameterTypeDescription
phone_number*stringUser's phone number in international E.164 format with a country code (e.g. +1 555 123 4567, +44 7911 123456)
terms_accepted*booleanMust be true — the user accepted the AgentCard cardholder terms of service
start_kycBegin (or resume) identity verification. Verification is CONVERSATIONAL: it starts with a photo of the user's government ID — the backend reads the printed details automatically and the user confirms every value. Only fields the ID does not carry are asked (like the SSN for US documents, or the nat…

Begin (or resume) identity verification. Verification is CONVERSATIONAL: it starts with a photo of the user's government ID — the backend reads the printed details automatically and the user confirms every value. Only fields the ID does not carry are asked (like the SSN for US documents, or the nat…

ParameterTypeDescription
terms_acceptedbooleanDEPRECATED — use agreements_accepted. Pass true once the user has explicitly agreed to the card issuer's cardholder terms in the conversation.
agreements_acceptedarrayKeys of the User Agreements the user explicitly accepted, one by one (the full required set from the agreements list — e.g. e_sign, account_opening_privacy, ca…
get_kyc_statusCheck the user's identity verification (KYC) status. Returns whether they are verified and, if not, the current state plus the conversational next step. Use this to poll after the user does the face scan, or any time create_card reports kyc_required.

Check the user's identity verification (KYC) status. Returns whether they are verified and, if not, the current state plus the conversational next step. Use this to poll after the user does the face scan, or any time create_card reports kyc_required.

No input schema was published for this tool.

submit_kyc_documentSubmit the user's ID photo for identity verification. Ways in: (a) image data you hold programmatically (e.g. the user sent the photo in this chat and your platform exposes its bytes) — pass front_base64 (and back_base64 for a license back; its barcode reads most accurately); (b) local (stdio) mode…

Submit the user's ID photo for identity verification. Ways in: (a) image data you hold programmatically (e.g. the user sent the photo in this chat and your platform exposes its bytes) — pass front_base64 (and back_base64 for a license back; its barcode reads most accurately); (b) local (stdio) mode…

ParameterTypeDescription
front_base64stringBase64 image bytes of the ID front (or passport photo page). ONLY pass base64 you received programmatically from your platform (e.g. an injected chat attachmen…
back_base64stringBase64 image bytes of the license back (optional, recommended — the barcode reads most accurately). Same rule: programmatically sourced only.
front_mime_typestringMIME type of front_base64 (image/jpeg, image/png, image/webp). Defaults to image/jpeg.
back_mime_typestringMIME type of back_base64. Defaults to image/jpeg.
file_pathstringLocal path to the ID photo (front of license, or passport photo page). Local/stdio connections only — remote connections without image data receive an upload l…
back_file_pathstringLocal path to the back of the license (optional, recommended). Local/stdio connections only.
document_typestringONLY pass this when the user themselves said what the document is ("here's my license") — otherwise omit it; the type is detected from the photo. Never ask up…
issuing_countrystring2-letter ISO country that issued the document (e.g. US, AR). ONLY when the user volunteered it — otherwise omit; it is detected from the photo. Never ask up fr…
check_kyc_documentCheck the conversational verification state — use after the user uploads their ID via the browser upload link (or any time you need to re-orient). Returns the current step and the fields still missing.

Check the conversational verification state — use after the user uploads their ID via the browser upload link (or any time you need to re-orient). Returns the current step and the fields still missing.

No input schema was published for this tool.

submit_kyc_fieldsSubmit identity fields for verification: the ones the ID photo didn't carry (listed by missingFields — the tax/ID number always has to be asked since IDs don't print it; call it "SSN" only for US documents and "national ID number" otherwise), corrections to extracted values the user flagged, and th…

Submit identity fields for verification: the ones the ID photo didn't carry (listed by missingFields — the tax/ID number always has to be asked since IDs don't print it; call it "SSN" only for US documents and "national ID number" otherwise), corrections to extracted values the user flagged, and th…

ParameterTypeDescription
first_namestringLegal first name, exactly as printed on the ID document.
last_namestringLegal last name, exactly as printed on the ID document.
date_of_birthstringYYYY-MM-DD
ssnstringUS documents: 9-digit SSN, dashes optional. Non-US documents: the national ID / tax number printed on the ID. Forward-only — never stored.
address_line1stringResidential street address, line 1 (e.g. 123 Main St).
address_line2stringResidential street address, line 2 — apartment, suite, or unit. Omit if none.
address_citystringCity of the residential address.
address_regionstring2-letter state code for US (e.g. CA).
address_postal_codestringPostal / ZIP code of the residential address.
address_country_codestring2-letter ISO country code (e.g. US).
phone_numberstringE.164 with country code, e.g. +14155551234.
terms_acceptedbooleanDEPRECATED — use agreements_accepted. true once the user explicitly accepted the card issuer's cardholder terms.
agreements_acceptedarrayKeys of the User Agreements the user explicitly accepted, one by one — the FULL required set from the agreements list in the previous step's result. Only pass…
list_transactionsTransactions with amount, merchant, status, and timestamps. Pass card_id for one card's transactions; OMIT it for every card in the account (newest first, each row tagged with its card). Use limit and status to filter. The gated views list_all_transactions and list_transactions_by_payment_method al…

Transactions with amount, merchant, status, and timestamps. Pass card_id for one card's transactions; OMIT it for every card in the account (newest first, each row tagged with its card). Use limit and status to filter. The gated views list_all_transactions and list_transactions_by_payment_method al…

ParameterTypeDescription
card_idstringA card ID for that card's transactions; omit for all cards in the account.
limitnumberMax number of transactions to return (default 20)
offsetnumberSkip this many (all-cards view pagination; ignored for a single card).
statusstringFilter by transaction status (e.g. PENDING, SETTLED, DECLINED, REVERSED, EXPIRED, REFUNDED)
setup_payment_methodSave a payment method used ONLY to pay for flight bookings (the fare is charged to it via a hold at booking; no virtual card is created for flights). It does NOT fund cards or the cash balance — cards are funded from the balance (see add_funds). Returns a secure checkout URL the user must open to s…

Save a payment method used ONLY to pay for flight bookings (the fare is charged to it via a hold at booking; no virtual card is created for flights). It does NOT fund cards or the cash balance — cards are funded from the balance (see add_funds). Returns a secure checkout URL the user must open to s…

No input schema was published for this tool.

get_balanceThe user's cash balance: the money that funds new cards. Provisions the balance account on first use. Users add cash with Apple Pay or Google Pay in USD; funds are held as USDC. (Their wallet, meaning the cards themselves, is list_cards.)

The user's cash balance: the money that funds new cards. Provisions the balance account on first use. Users add cash with Apple Pay or Google Pay in USD; funds are held as USDC. (Their wallet, meaning the cards themselves, is list_cards.)

No input schema was published for this tool.

add_fundsGenerate a secure checkout link the user opens to add cash to their own balance (the money that funds new cards) via Apple Pay or Google Pay, in USD. Calling this tool moves NO money and initiates NO transfer: it only prepares a single-use hosted payment page — the exact equivalent of the user clic…

Generate a secure checkout link the user opens to add cash to their own balance (the money that funds new cards) via Apple Pay or Google Pay, in USD. Calling this tool moves NO money and initiates NO transfer: it only prepares a single-use hosted payment page — the exact equivalent of the user clic…

ParameterTypeDescription
amount_cents*numberAmount to add in cents (e.g. 5000 = $50.00). Typical range: $20.00 to $10,000.00 (2000 to 1000000 cents); the exact range depends on the active funding provide…
payment_methodstringPayment method for the checkout. Defaults to apple_pay.
create_withdrawal_recipientSave a bank account as a withdrawal destination for the user's cash balance. Supports US bank accounts (ACH: routing + account number) and international bank accounts (SWIFT wire: IBAN + BIC). Ask the user for their bank details conversationally, then call this once. After saving, use withdraw to r…

Save a bank account as a withdrawal destination for the user's cash balance. Supports US bank accounts (ACH: routing + account number) and international bank accounts (SWIFT wire: IBAN + BIC). Ask the user for their bank details conversationally, then call this once. After saving, use withdraw to r…

ParameterTypeDescription
type*stringach for US bank accounts; international_wire (SWIFT) for everywhere else.
beneficiary_name*stringThe account holder's full legal name, exactly as the bank knows it.
country_code*stringTwo-letter country code of the account holder (e.g. 'US', 'DE').
routing_numberstringACH only: 9-digit US routing number.
account_numberstringACH only: US account number (4-17 digits).
account_typestringACH only: account type.
ibanstringInternational only: IBAN (e.g. DE89370400440532013000).
swift_codestringInternational only: 8 or 11 character SWIFT/BIC.
bank_namestringThe recipient bank's name (recommended).
nicknamestringA label for this account (e.g. 'My checking').
country_specificobjectExtra banking fields some countries require: {"ifsc": "..."} for India, {"clabe": "..."} for Mexico, {"bsb": "..."} for Australia. Required for those countries…
list_withdrawal_recipientsList the user's saved bank accounts for withdrawals, masked (bank name and last four only). Use a recipient's id as recipient_id with withdraw. If the list is empty, collect the user's bank details and call create_withdrawal_recipient first.

List the user's saved bank accounts for withdrawals, masked (bank name and last four only). Use a recipient's id as recipient_id with withdraw. If the list is empty, collect the user's bank details and call create_withdrawal_recipient first.

No input schema was published for this tool.

withdrawWithdraw cash from the user's balance, either to their saved bank account or to a crypto address on Base (USDC). Transfers are processed manually by the Agentcard team, usually within 1-3 business days; the user is emailed when it's sent. For a bank withdrawal, if the user has no saved bank account…

Withdraw cash from the user's balance, either to their saved bank account or to a crypto address on Base (USDC). Transfers are processed manually by the Agentcard team, usually within 1-3 business days; the user is emailed when it's sent. For a bank withdrawal, if the user has no saved bank account…

ParameterTypeDescription
amount_cents*numberAmount to withdraw in cents (e.g. 2500 = $25.00). Range: $2.00 to $10,000.00.
recipient_idstringBank rail: the saved bank account to pay (wrec_...). Omit to be shown the saved accounts.
destination_addressstringCrypto rail: a 0x-prefixed address on Base to receive USDC. When set, the withdrawal goes on-chain instead of to a bank account.
start_phone_verificationSend (or re-send) the user's one-time funding verification code (the provider verifies the phone on the user's Agentcard identity, valid 60 days). add_funds already sends this code automatically when verification is needed — call this tool only to RE-send when the code never arrived (any unexpired…

Send (or re-send) the user's one-time funding verification code (the provider verifies the phone on the user's Agentcard identity, valid 60 days). add_funds already sends this code automatically when verification is needed — call this tool only to RE-send when the code never arrived (any unexpired…

No input schema was published for this tool.

verify_phoneCheck the one-time code the user received from start_phone_verification. On success the balance is unlocked for funding (the verification stays fresh for 60 days) — call add_funds next. A wrong or expired code returns a recoverable status so you can ask the user to re-check it, or call start_phone_…

Check the one-time code the user received from start_phone_verification. On success the balance is unlocked for funding (the verification stays fresh for 60 days) — call add_funds next. A wrong or expired code returns a recoverable status so you can ask the user to re-check it, or call start_phone_…

ParameterTypeDescription
code*stringThe one-time code the user received, as a string (keep any leading zeros — do not send it as a number).
redeem_codeRedeem a promo code that adds money to the user's cash balance. Each code works once per user; the credit lands in the balance and becomes spendable within a minute or two. Some codes hold the money until the user verifies their identity — the claim still locks the code to this user instantly, and…

Redeem a promo code that adds money to the user's cash balance. Each code works once per user; the credit lands in the balance and becomes spendable within a minute or two. Some codes hold the money until the user verifies their identity — the claim still locks the code to this user instantly, and…

ParameterTypeDescription
code*stringThe promo code exactly as the user provided it (case and dashes are forgiven).
get_planShow the user's current subscription plan, card limits, and this month's usage. Call this before create_card when you need the per-card amount cap or remaining monthly quota, or whenever the user asks about their plan, limits, billing, or upgrading. To cancel a paid plan, the gated tool cancel_plan…

Show the user's current subscription plan, card limits, and this month's usage. Call this before create_card when you need the per-card amount cap or remaining monthly quota, or whenever the user asks about their plan, limits, billing, or upgrading. To cancel a paid plan, the gated tool cancel_plan…

No input schema was published for this tool.

upgrade_planStart a paid-plan upgrade. Choose the target plan: 'basic' ($15/mo — 15 cards/month, up to $500 per card) or 'pro' ($100/mo — 50 cards/month, up to $1,000 per card). Defaults to 'basic' if omitted. Returns a Stripe Checkout URL the user must open in their browser to complete payment. After they fin…

Start a paid-plan upgrade. Choose the target plan: 'basic' ($15/mo — 15 cards/month, up to $500 per card) or 'pro' ($100/mo — 50 cards/month, up to $1,000 per card). Defaults to 'basic' if omitted. Returns a Stripe Checkout URL the user must open in their browser to complete payment. After they fin…

ParameterTypeDescription
planstringWhich plan to upgrade to. Defaults to 'basic'.
list_payment_methodsList the saved payment methods (used only to pay for flight bookings, not for cards or adding funds). Returns each method with its id, brand, last 4 digits, and expiry, and marks the default one. Use setup_payment_method to add a new one. The gated tools set_default_payment_method and remove_paymen…

List the saved payment methods (used only to pay for flight bookings, not for cards or adding funds). Returns each method with its id, brand, last 4 digits, and expiry, and marks the default one. Use setup_payment_method to add a new one. The gated tools set_default_payment_method and remove_paymen…

No input schema was published for this tool.

list_connectionsList the third-party apps the user has connected to their Agentcard account via OAuth (e.g. Kilo), including when each was connected and whether it is still active. Read-only. To revoke an app, call revoke_connection with its clientId.

List the third-party apps the user has connected to their Agentcard account via OAuth (e.g. Kilo), including when each was connected and whether it is still active. Read-only. To revoke an app, call revoke_connection with its clientId.

No input schema was published for this tool.

revoke_connectionRevoke a third-party app's access to the user's Agentcard account. Disconnects the app and invalidates its OAuth tokens; it must reconnect via OAuth to regain access. Pass the clientId shown by list_connections.

Revoke a third-party app's access to the user's Agentcard account. Disconnects the app and invalidates its OAuth tokens; it must reconnect via OAuth to regain access. Pass the clientId shown by list_connections.

ParameterTypeDescription
client_id*stringThe OAuth client ID of the app to revoke (from list_connections).
get_settingsView the user's notification preferences (which email alerts they receive), their default payment source (which card or balance agents charge — check it before picking a funding source for them), their default delivery address (the wallet-level shipping address to use when buying physical goods for…

View the user's notification preferences (which email alerts they receive), their default payment source (which card or balance agents charge — check it before picking a funding source for them), their default delivery address (the wallet-level shipping address to use when buying physical goods for…

No input schema was published for this tool.

link_accountLink or merge another Agentcard account that belongs to the same person. Use when the user says they already have an account under a DIFFERENT email or phone number — most often after identity verification (KYC) is rejected as a duplicate, which means that person already verified on another account…

Link or merge another Agentcard account that belongs to the same person. Use when the user says they already have an account under a DIFFERENT email or phone number — most often after identity verification (KYC) is rejected as a duplicate, which means that person already verified on another account…

ParameterTypeDescription
typestringStep 1: which kind of identifier the OTHER account uses.
identifierstringStep 1: the email address or phone number of the other account to verify.
ticketstringStep 2: the ticket returned by step 1.
codestringStep 2: the one-time code the user received.
buy_list_merchantsList merchants available for agent commerce (Rappi, Good Eggs, DoorDash) and whether this user has linked each one. Link a merchant before shopping it.

List merchants available for agent commerce (Rappi, Good Eggs, DoorDash) and whether this user has linked each one. Link a merchant before shopping it.

No input schema was published for this tool.

buy_unlink_merchantDisconnect a merchant — drops the saved session + link. The user must re-link (e.g. hosted connect) before shopping it again.

Disconnect a merchant — drops the saved session + link. The user must re-link (e.g. hosted connect) before shopping it again.

ParameterTypeDescription
merchant*stringMerchant slug to disconnect (e.g. doordash).
buy_connectConnect a merchant for shopping. For merchants that need a real login (e.g. DoorDash) this opens a secure hosted browser session and returns a URL the user opens to log in; after they finish, call buy_connect_status with the pending_id to confirm. Merchants that need no login (e.g. Agentcard Flight…

Connect a merchant for shopping. For merchants that need a real login (e.g. DoorDash) this opens a secure hosted browser session and returns a URL the user opens to log in; after they finish, call buy_connect_status with the pending_id to confirm. Merchants that need no login (e.g. Agentcard Flight…

ParameterTypeDescription
merchant*stringmerchant slug (e.g. doordash)
buy_connect_statusCheck the status of a hosted merchant login started with buy_connect. Returns linking (still in progress — call again in a few seconds), linked (success — the merchant is ready to shop), expired, or error. Pass the merchant and the pending_id from buy_connect. ONLY for logins started by the buy_con…

Check the status of a hosted merchant login started with buy_connect. Returns linking (still in progress — call again in a few seconds), linked (success — the merchant is ready to shop), expired, or error. Pass the merchant and the pending_id from buy_connect. ONLY for logins started by the buy_con…

ParameterTypeDescription
merchant*stringmerchant slug (e.g. doordash)
pending_id*stringThe pending_id returned by buy_connect.
manage_subscriptionManage a recurring meal/grocery SUBSCRIPTION (e.g. Locale) — NOT a one-time purchase, and no payment is taken (the subscription auto-bills the card on file at the merchant). action: 'menu_search' (browse the recurring menu; items flagged inPlan are covered by the plan), 'get_skip_dates' (list skipp…

Manage a recurring meal/grocery SUBSCRIPTION (e.g. Locale) — NOT a one-time purchase, and no payment is taken (the subscription auto-bills the card on file at the merchant). action: 'menu_search' (browse the recurring menu; items flagged inPlan are covered by the plan), 'get_skip_dates' (list skipp…

ParameterTypeDescription
merchant*stringmerchant slug (e.g. locale)
action*stringthe management action
querystringmenu_search: term over the recurring menu (e.g. 'salmon'); '' lists everything
limitnumbermenu_search: max items
datestringskip/unskip: one ISO delivery date (YYYY-MM-DD)
datesarrayset_skip_dates: FULL set of ISO dates to skip ([] resumes all)
settingstringupdate_setting: the setting key (see description)
valueupdate_setting: the new value (number, string, or array of strings)

58 of 58 tools published a description.

Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.

About

Prepaid virtual cards for AI agents: one-time cards, spend caps, human approvals.

Keywords
mcp
Alternatives
Comparing tool surfaces…

No dependency coverage

This entry publishes no npm package, so Forge has no dependency tree for it. That is a gap in coverage — not a statement that it has no dependencies.