Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.github.codespar/mcp-kushki

NPM · @CODESPAR/MCP-KUSHKI · SCANNED AUG 4

MCP server for Kushki — LATAM PSP: card charges, preauth, PSE/SPEI transfer, cash, subscriptions

+23 this week 68 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security83
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known medium-severity CVE affects hono 4.12.33, reached via @modelcontextprotocol/sdk > hono. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability71
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1398 tokens (~139/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management30
  • Stability observed for 9 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @codespar/mcp-kushki

# add to Claude Code
claude mcp add codespar-mcp-kushki -- npx -y @codespar/mcp-kushki
# add to Codex CLI
codex mcp add codespar-mcp-kushki -- npx -y @codespar/mcp-kushki
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "codespar-mcp-kushki": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@codespar/mcp-kushki"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add codespar-mcp-kushki --command npx --arg -y --arg @codespar/mcp-kushki
# ~/.hermes/config.yaml
mcp_servers:
  codespar-mcp-kushki:
    command: "npx"
    args: ["-y", "@codespar/mcp-kushki"]
// mcp.json
{
  "mcpServers": {
    "codespar-mcp-kushki": {
      "command": "npx",
      "args": [
        "-y",
        "@codespar/mcp-kushki"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Aug 26 +4
    • CVE-2026-69207 affects this package: medium security
    • Known CVEs: partial → fail security
    • Stability: unverified → 0.30 functional
  • 2 Aug 26 +37
    • Known CVEs: unverified → partial security
    • Malware scan: unverified → pass security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Schema quality: unverified → excellent functional
    • Dependency health: unverified → partial functional
    • MCP protocol: unverified → pass functional
  • 1 Aug 26 +7
    • Provenance: unverified → fail security
    • Install scripts: unverified → pass security
    • License: unverified → pass functional
    • Maintenance: unverified → pass functional
    • Licence: MIT functional
  • 31 Jul 26 −7
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −18
    • Malware scan: pass → unverified security
  • 27 Jul 26 45

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 4 Aug 2026 · Analysed npm/@codespar/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-8j4g-w8fx-2239 CVE-2026-69207 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L yes
Dependencies 94 packages

94 packages in the resolved dependency tree · 94 deprecated · 29 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 10 exposed · ~1,331 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
cancel_subscription ~45

Cancel a subscription (DELETE /card/v1/subscriptions/{subscriptionId}, private merchant id). Stops all future charges.

NameTypeReqDescription
subscriptionIdstringyesSubscription id returned on create

No output schema declared.

No examples provided.

capture_preauthorization ~130

Two-step charge, step 2: capture a previous preauthorization (POST /card/v1/capture, private merchant id). Amount may be lower than the preauth (partial capture).

NameTypeReqDescription
amountobjectyesKushki amount object. subtotalIva = taxed subtotal, subtotalIva0 = untaxed subtotal, iva = tax. currency per country: MXN, COP, CLP, PEN, USD (EC).
fullResponsebooleanReturn the acquirer's full response
ticketNumberstringyesticketNumber returned by create_preauthorization

No output schema declared.

No examples provided.

create_cash_charge ~156

Cash payment reference (POST /cash/v1/charges, private merchant id). Generates a voucher/reference the customer pays at a cash network (OXXO-style). Returns reference + expiry.

NameTypeReqDescription
currencystringyesMXN | COP | CLP | PEN | USD
descriptionstringCharge description on the voucher
documentNumberstringyesCustomer document number
documentTypestringCustomer document type
emailstringyesCustomer email
expirationDatestringVoucher expiry, YYYY-MM-DD (optional)
lastNamestringyesCustomer last name
namestringyesCustomer first name
totalAmountnumberyesAmount to collect

No output schema declared.

No examples provided.

create_charge ~197

One-step card charge (POST /card/v1/charges, private merchant id). Pass the token from tokenize_card plus the amount object. Supports metadata, months (MX installments) and deferred (installment plans).

NameTypeReqDescription
amountobjectyesKushki amount object. subtotalIva = taxed subtotal, subtotalIva0 = untaxed subtotal, iva = tax. currency per country: MXN, COP, CLP, PEN, USD (EC).
contactDetailsobjectCustomer contact: documentType, documentNumber, email, firstName, lastName, phoneNumber
deferredobjectDeferred/installment config (country-specific)
fullResponsebooleanReturn the acquirer's full response
metadataobjectFree-form metadata echoed in webhooks
monthsnumberInstallments (Mexico meses sin intereses)
tokenstringyesSingle-use token from tokenize_card

No output schema declared.

No examples provided.

create_preauthorization ~132

Two-step charge, step 1: hold funds on the card (POST /card/v1/preAuthorization, private merchant id). Returns a ticketNumber to capture later.

NameTypeReqDescription
amountobjectyesKushki amount object. subtotalIva = taxed subtotal, subtotalIva0 = untaxed subtotal, iva = tax. currency per country: MXN, COP, CLP, PEN, USD (EC).
fullResponsebooleanReturn the acquirer's full response
metadataobjectFree-form metadata
tokenstringyesSingle-use token from tokenize_card

No output schema declared.

No examples provided.

create_subscription ~179

Recurring card subscription (POST /card/v1/subscriptions, private merchant id). Kushki charges the tokenized card on the given periodicity until cancelled.

NameTypeReqDescription
amountobjectyesKushki amount object. subtotalIva = taxed subtotal, subtotalIva0 = untaxed subtotal, iva = tax. currency per country: MXN, COP, CLP, PEN, USD (EC).
contactDetailsobjectyesCustomer contact
metadataobjectFree-form metadata
periodicitystringyesdaily | weekly | biweekly | monthly | bimonthly | quarterly | halfYearly | yearly
planNamestringyesPlan name shown on statements
startDatestringyesFirst charge date, YYYY-MM-DD
tokenstringyesSingle-use token from tokenize_card

No output schema declared.

No examples provided.

create_transfer_charge ~111

Bank transfer-in charge with a transfer token (POST /transfer/v1/init, private merchant id). Returns the bank redirect URL the customer authorizes at.

NameTypeReqDescription
amountobjectyesKushki amount object. subtotalIva = taxed subtotal, subtotalIva0 = untaxed subtotal, iva = tax. currency per country: MXN, COP, CLP, PEN, USD (EC).
metadataobjectFree-form metadata
tokenstringyesToken from create_transfer_token

No output schema declared.

No examples provided.

create_transfer_token ~208

Token for a bank-transfer-in (POST /transfer/v1/tokens, public merchant id). PSE in Colombia, SPEI in Mexico, bank transfer in Chile/Peru. Feeds create_transfer_charge.

NameTypeReqDescription
amountobjectyesKushki amount object. subtotalIva = taxed subtotal, subtotalIva0 = untaxed subtotal, iva = tax. currency per country: MXN, COP, CLP, PEN, USD (EC).
bankIdstringBank code (from Kushki's bank list, PSE)
callbackUrlstringyesURL the customer returns to after bank auth
descriptionstringCharge description
documentNumberstringCustomer document number
documentTypestringCustomer document type (e.g. CC, NIT, CE)
emailstringyesCustomer email
userTypestring0 = natural person, 1 = company (PSE)

No output schema declared.

No examples provided.

tokenize_card ~93

Exchange raw card data for a single-use token (POST /card/v1/tokens, public merchant id). The token feeds create_charge / create_preauthorization / create_subscription. Card data never touches your backend.

NameTypeReqDescription
cardobjectyesCard data
currencystringyesMXN | COP | CLP | PEN | USD
totalAmountnumberyesTotal amount the token will charge

No output schema declared.

No examples provided.

void_charge ~80

Void / refund a card charge (DELETE /card/v1/charges/{ticketNumber}, private merchant id). Same-day = void; settled = refund. Optional partial amount where the acquirer supports it.

NameTypeReqDescription
amountobjectOptional partial amount (defaults to full)
ticketNumberstringyesticketNumber of the charge to void/refund

No output schema declared.

No examples provided.