mcpbeat Sign in

Kifly — Agentic Commerce & Payments MCP Server

not responding

Kifly — Agentic Commerce & Payments is listed as active in the registry but did not answer our last check. It exposes 21 tools.

Multi-seller shopping for AI agents. Settle via Stripe MPP or x402 USDC on Base. Hosted.

Uptime history 51 days of history · worst day 0%
51 days agonow
0.0%
Uptime 24h
0 of 92 checks
21
Tools
read from the server
198 ms
Response time
average over 24h
open, no key
Access
streamable-http

What changed 24

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 11 August 2026. No other catalogue keeps this.

20 Sep 13 tools changed the parameters they ask for add_to_cart, checkout, create_cart and 10 more
20 Sep 8 tool descriptions were rewritten checkout, get_buyer_profile, get_help and 5 more
21 Aug a tool description was rewritten search_products
10 Aug 2 tool descriptions were rewritten get_seller, search_products

Kifly — Agentic Commerce & Payments does not always answer

Over the last week it answered 0.2% of our checks. We check every 15 minutes, so you hear about the next outage within the hour — not from your users.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 2 min ago.

run in your terminal
claude mcp add mcp --transport http https://kifly.ai/api/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://kifly.ai/api/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.mcp]
url = "https://kifly.ai/api/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://kifly.ai/api/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://kifly.ai/api/mcp"
    }
  }
}

Available tools 21

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

cart
add_to_cart
Requires `checkout:write` scope. Add a product variant to an existing cart. Use the variant_id from search_products results. Returns full cart state including item_ids you can use with update_cart_item. **Max quantity per item and max cart total are enforced — call `get_platform_limits` to check the current limits before building a large cart.** Exceeding the per-item limit returns 400 `QUANTITY_EXCEEDS_LIMIT`; exceeding the cart total returns 400 `CART_TOTAL_EXCEEDS_LIMIT` at checkout. `cart.kifly_purchasable` (and `cart.fulfillment`) carries the same non-transactable signal as create_cart's `seller` field — check it before telling the buyer this is a real purchase.
create_cart
Create a new shopping cart on Kifly. **For network (cross-seller) tokens you MUST pass `seller_handle`** — each cart is bound to exactly one seller. Get the handle from search_products results (every item's `kifly:seller` IS the handle in network results) or get_seller. Seller-scoped tokens may omit the handle — their own seller is implicit. Returns a cart_id to use with add_to_cart and checkout. The response's `seller.kifly_purchasable` (and `seller.fulfillment`) tells you upfront whether this seller can complete a real Kifly checkout — `false`/`"external"` means directory-tier: checkout will hand off to the seller's own site instead of charging, so present the flow as a referral, not a purchase. Cart-building still works either way (needed to generate the handoff's per-product links), and the same flag rides every add_to_cart/get_cart response on this cart too.
get_cart
Inspect the current state of a cart — line items, quantities, prices, and shipping address. Each item includes an `item_id` you can pass to `update_cart_item` to change quantity or remove the item. Call this after `add_to_cart` to review the cart before checkout, or any time the buyer asks what's in the cart. `kifly_purchasable: false` (`fulfillment: "external"`) means checkout on this cart will hand off to the seller's own site instead of charging — say so before the buyer expects a real purchase.
update_cart_item
Requires `checkout:write` scope. Change the quantity of a line item in an open cart, or remove it entirely. Set `quantity` to 0 to remove the item. Get the `item_id` from `get_cart` or the `cart` field in the `add_to_cart` response. Returns the updated cart state. **The per-item quantity ceiling applies here too — call `get_platform_limits` to check the current limit.** Exceeding it returns 400 `QUANTITY_EXCEEDS_LIMIT`.
request
request_buyer_code
Send a 6-digit verification code to a **returning** buyer's email so they can prove the account is theirs and recover their saved name + shipping address on this connection — without pasting any token or re-entering their name. Call this when the buyer says they've shopped with Kifly before and gives you their email; then ask them to read you the code from their inbox and call `verify_buyer`. Always returns `{ sent: true }` — for the buyer's privacy the response is identical whether or not the email has a Kifly account (so it can't be used to probe who shops here), and a code is only actually emailed if an account exists. If the buyer never receives a code, they likely don't have an account yet: call `register_buyer` instead, which creates one and emails a code either way. Requires the `buyer:write` capability (marketplace/network keys).
request_feature
Submit the buyer's **product/feature request** to the Kifly team. Use this when the buyer wishes Kifly *itself* did something it doesn't — a missing capability, a rough flow, an idea to improve the platform. **This is NOT `submit_feedback`** (that's for reporting a broken/confusing API response you hit). Requires the buyer's `kfb_live_` token — only registered buyers can file requests. Help the buyer articulate a real problem: ask OPEN, non-leading questions ('what were you trying to do? what got in the way? how do you handle it today?') — never 'would feature X help?'. Pre-fill the fields from the conversation and ask only for the gaps; keep it short. Separate the `problem` (the pain) from any `proposed_solution` (the fix). Name and email are taken from the buyer profile automatically — do not ask for them. Returns 202: it's logged for review. **Do NOT promise the user anything will be built** — just confirm it was recorded.
buyer
get_buyer_profile
Retrieve a repeat buyer's saved name, email, and default shipping address, given their `buyer_token`. Use them to auto-fill `set_shipping_address`, and pass the token to `checkout` so Stripe pre-fills their email. `default_shipping_address` may be null — then collect it normally and call `save_buyer_address` so it is pre-filled next time. **Ask in plain language ('are you a returning Kifly shopper? what email is on your account?') — never ask a buyer to paste a token.** **How to get the token: read `kifly://docs/buyer-identity`** — the email-code sequence, the one-click sign-in alternative, and what to do for a new buyer.
checkout
checkout
Requires `checkout:write` **or** the narrower `checkout:link` scope — and **no API key at all** works too: send `meta.ucp-agent.profile` and you get the same payment link (a tokenless caller holds `checkout:link`). **Checkout is always human-in-the-loop: it returns a link the buyer opens and confirms — it never charges a card or completes an order on its own.** **Requires `set_shipping_address` to have been called first.** Cart total must not exceed the platform cap (`kifly://platform/limits`). **To pre-fill the buyer's email on the payment page, pass `email` — ask the buyer for it in plain language ('what email should the receipt go to?'). Never ask the buyer to paste a token.** Read `payment_rail` on the response BEFORE telling the buyer anything: `'stripe-checkout'` is a real Kifly purchase, `'directory-handoff'` is a referral to the seller's own site with no payment link at all, and `'shopify-native'` sends the buyer to the seller's own checkout. **Full response field reference, including every refusal code: read the `kifly://docs/checkout-response` resource.**
help
get_help
Get unstuck. Returns Kifly's website and support email for the BUYER, plus how to report the problem to Kifly's engineers yourself. Call this if you are stuck, hit an unresolvable error, or the buyer asks how to reach a human. Share the website and email with the buyer; use `submit_feedback` (no API key needed) to tell us what blocked you — that is the fastest way to get it fixed.
order
order_status
Check the status of a Stripe checkout session. Poll every 5 seconds after checkout until status is 'paid', 'shipped', or 'failed'. Returns order details (order_id, amount, items) when paid. When the seller marks the order as shipped, status becomes 'shipped' and tracking_number, carrier, and shipped_at are included — share these with the buyer. Call get_help if the buyer needs Kifly's support contact.
orders
list_orders
List a returning buyer's recent orders and their current fulfillment status — use this in a NEW session to answer 'did my order ship?' / 'where's my package?' when you don't have the original `session_id` from `checkout`. Requires the buyer's `buyer_token` (recover it via `request_buyer_code` + `verify_buyer` if you don't have one). Returns `{ orders, count }`, newest first; each order has `status` (`paid` | `shipped` | `delivered`), `items`, `amount_cents`, `placed_at`, and — once shipped — `tracking_number`, `carrier`, and a public `tracking_url`. **Pass `since` (an ISO-8601 timestamp from a previous check) to get only orders that changed since then** — surface those proactively ('your last order just shipped'). `order_id` identifies the order; `session_id` cross-references `order_status` for a single live checkout.
platform
get_platform_limits
Returns the current platform-enforced cart limits: `max_item_quantity` (per-line-item ceiling), `max_cart_total_cents`, and `max_cart_total_usd`. Call this once at session start before building a large cart so you can quote limits to the buyer proactively rather than discovering them via errors. The limits are operator-configurable; always read them at runtime rather than hardcoding.
products
search_products
Search or browse Kifly's product catalog across every seller on the network. Multilingual semantic search (100+ languages); omit `q` to browse recent listings. Pass `q` as an array (up to 5) to try several phrasings in ONE call instead of N searches. Filter with `seller_handle` or free-text `category`; page with `cursor` when `kifly:hasMore` is true. Returns a JSON-LD ItemList. **Rules that matter before you read the response:** - `kifly:purchasable: false` means the seller is discovery-only — present it as a referral, never route to checkout. `availability` is about STOCK, not buyability: read `kifly:purchasable` to decide whether a buyer can actually pay. - On `availability:OutOfStock`, still show it if asked, say it is sold out, and never cart it (`add_to_cart` returns 409). - When a product has several size/style variants, ask the buyer ONE option axis at a time (`kifly:productOptions` gives the axes in the seller's order). Never recite the combination matrix. - You can read the delivery fee and check coverage from these results — no need to call `set_shipping_address` just to learn the cost. Do call it before checkout. - On an empty result, read `kifly:emptyReason`: say nothing matched rather than guessing, then offer `kifly:suggestions` (related, NOT matches). **Full response field reference: read the `kifly://docs/search-response` resource.** It documents the seller map, the three delivery-coverage cases, variant/option alignment, the capped fields and every `kifly:` extension — fetch it once if you need field-level detail.
quick
quick_buy
Requires `cart:write` scope. Create a cart, add items, and set the shipping address in ONE call — the fast path when you already know the seller, the exact variant(s), and the buyer's address (e.g. a reorder, or a buyer who has decided). Prefer this over the create_cart → add_to_cart → set_shipping_address sequence to save round trips; those granular tools stay available for exploratory, multi-step carts. **You must call `search_products` first** so Kifly knows each variant's seller (quick_buy returns 422 `VARIANT_SNAPSHOT_MISSING` otherwise). One cart = one seller: every item must belong to the same seller (409 `CART_SELLER_MISMATCH` otherwise) — for a network token, pass that seller's `seller_handle`. Returns `{ cart_id, items_added, seller, delivery }`. `delivery` is exactly what `set_shipping_address` returns — **quote `cart_total_with_delivery_cents` before sending the buyer to pay**; on `delivery_eligible: false` no address is saved, so you can call again with a covered address. Field detail and the three coverage cases: `kifly://docs/delivery`. **quick_buy never charges — it stops at the cart. The buyer still pays via `checkout`**, which returns the payment link they open themselves. On a 5xx/'temporarily unavailable' error, retry once with the same arguments.
register
register_buyer
Start registering a buyer so they can be recognized across future purchases without re-entering their details. Takes the buyer's email and name and always emails a 6-digit verification code — the response is `{ verification_required: true, buyer_profile_id }` whether the email is brand new or already has an account (so this call alone never reveals which). Ask the buyer to read you the code from their inbox, then call `verify_buyer` with the same email + code to get a `buyer_token` (`kfb_live_...`). **Store that token and pass it to `checkout` on every future order** — it pre-fills the buyer's email on the secure Stripe payment link. Safe to call for a buyer you believe is new; if they already have an account, verify_buyer still recovers it.
save
save_buyer_address
Save a shipping address to the buyer's Kifly profile so it auto-fills on future purchases. **Call this after a successful checkout if `get_buyer_profile` returned `default_shipping_address: null`.** The address is persisted server-side against the buyer token — the buyer never needs to re-enter it. Use the same address that was passed to `set_shipping_address` for this order.
seller
get_seller
Retrieve a seller's public profile: name, location (city/region/country), storefront URL, delivery fee, delivery coverage and catalog size. **Call before `create_cart` or `set_shipping_address` to check the seller ships to the buyer's area.** This is the FULL profile — `cities` is never capped here (unlike `list_sellers`/`search_products`). **`coverage_configured: false` means the seller ships NOWHERE — never tell the buyer otherwise; an empty `states` list is NOT nationwide. `merchant_managed: true` means shipping is set at the seller's own checkout — do NOT report them as not shipping.** Full semantics, including the `nationwide` and capped-cities cases: read `kifly://docs/delivery`. **Network (cross-seller) tokens must pass `handle`** (e.g. `bay-clothing-district`); lookup is case-insensitive. Seller-scoped tokens may omit it — their own seller is implicit.
sellers
list_sellers
List all active sellers on the Kifly network. **Requires a network token (kfn_live_…).** Returns each seller's handle, name, city, region, delivery coverage (`nationwide:true` or a `states` list), delivery fee, and catalog size. `delivery_coverage.cities` may be capped to a handful of entries — compare `cities.length` against `city_count`; if fewer, call `get_seller` for that seller's full city list. Use this to discover which sellers are available and which ship to a buyer's location before calling `get_seller` or `search_products`. **Pagination:** when `kifly:hasMore` is true, pass `kifly:nextCursor` as `cursor` to fetch the next page. Default page size is 20, max 50.
shipping
set_shipping_address
Requires `checkout:write` scope. Persist a shipping address on the cart and confirm the seller can deliver to it. **Call BEFORE `checkout`.** Returns `delivery_eligible`. When true it also returns `cart_total_with_delivery_cents` — quote that full price before sending the buyer to pay. When false, no address is saved and `delivery_coverage` says where the seller does cover, so you can retry with a covered address. Coverage semantics: `kifly://docs/delivery`.
submit
submit_feedback
Send structured feedback to the Kifly team. **No API key required** — send `meta.ucp-agent.profile` and this works with no credential at all. **Call after a confusing response, a dead-end, or a successful workaround you had to invent** — it's how we improve the agent surface, and a report from the moment you were stuck is worth more to us than a working purchase. Fire-and-forget: returns 202 immediately, no blocking, safe to skip if it would add latency to a user-facing flow. `category` and `severity` are required enums (don't free-form them). Include `context` with what you were doing (tool called, query used, response shape, what you expected). Add `suggested_fix` only if you have a concrete idea. Rate-limited to 10/min per caller; a human reads everything before it influences anything.
verify
verify_buyer
Verify the 6-digit code a returning buyer received by email (from `request_buyer_code`). On success returns `{ buyer_token, buyer_profile_id }` — pass the `buyer_token` to `get_buyer_profile` to auto-fill their saved name + shipping address, and to `checkout` to pre-fill their email on the payment link. Fails with `invalid_otp` if the code is wrong or expired (ask them to re-check, or call `request_buyer_code` again). Requires the `buyer:write` capability.

Endpoints

URLTransportStateLatencyChecked
https://kifly.ai/api/mcp streamable-http answering 198 ms 2 min ago

Alternatives to Kifly — Agentic Commerce & Payments

same job, measured the same way
M2mcent
by evozim

x402 payment wrapper for AI Agents and MCP Servers. USDC settlements on Base L2.

36 installs/wk local only
systemprompt.io reports
by systemprompt

Paid EU AI Act compliance reports for agents. $1.50 per call via x402 (USDC on Base) or Stripe.

2 tools answering
Pyrimid Protocol
by pyrimid

Agent-commerce MCP server for x402/USDC payments and affiliate splits on Base.

7 tools answering
Nutriref
by younghef

Pay-per-call USDA nutrition for AI agents (x402 micropayments in USDC on Base).

local only
Xenarch MCP
by xenarch-ai

Xenarch — x402 MCP server for AI agent payments. Non-custodial, USDC on Base L2.

85 installs/wk local only
Boo X402 MCP
by lucle87

Pay-per-call crypto data for AI agents. USDC on Base via x402. No API key.

34 installs/wk local only
Coal — Payments for AI agents
by emmanuel39hanks

Payment rails for AI agents. Pay merchants in USDC on Base. Dual-protocol: x402 + OKX APP.

13 tools answering
Revettr MCP
by alexanderlawson17

Counterparty risk scoring for agentic commerce via x402 micropayments.

98 installs/wk 3 tools answering

Kifly — Agentic Commerce & Payments — questions

Answers built from our own checks of this server.

What can Kifly — Agentic Commerce & Payments do?
It exposes 21 tools, read directly from the server on our last check. Among them: add_to_cart, checkout, create_cart, get_buyer_profile, get_cart, get_help and 15 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Kifly — Agentic Commerce & Payments mostly used for?
Its tools cluster around cart and request. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Kifly — Agentic Commerce & Payments working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 0 of 92 checks got a reply (0.0%), average response time 198 ms. The bar chart above shows every period we have measured.
The registry lists Kifly — Agentic Commerce & Payments as active — why does it not respond?
The official MCP registry stores what the author submitted; it does not verify that the server still runs. We check the endpoint ourselves, and this one does not answer. Catalogues that copy the registry without checking will show it as working.
How do I connect Kifly — Agentic Commerce & Payments?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Kifly — Agentic Commerce & Payments need an API key?
No. Kifly — Agentic Commerce & Payments completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 21 of them are readable on this page. This is what we observed, not what the docs claim.