{"name":"io.github.codespar/mcp-transak","slug":"codespar-mcp-transak","title":null,"description":"MCP server for Transak — fiat-to-crypto on/off-ramp across ~170 countries (Partner API)","url":"https://mcp.market/server/codespar-mcp-transak","rating":null,"grade":"B","score":82,"certified":false,"status":"active","category":"finance","tags":["finance"],"presence":{"score":46,"stars":271,"forks":50,"downloads_week":27,"last_push_at":"2026-08-29T02:02:48.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/codespar/mcp-dev-latam","website":null,"version":"0.2.0-alpha.3","remotes":[],"packages":[{"registryType":"npm","identifier":"@codespar/mcp-transak","version":"0.2.0-alpha.3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Transak partner API key (from partner dashboard). Used as partnerApiKey query param on public quote endpoint and bundled with api-secret to mint the access-token for Partner API calls.","isRequired":true,"format":"string","name":"TRANSAK_API_KEY"},{"description":"Transak partner API secret. Sent as the api-secret header to endpoints that require server-to-server authentication (and used to mint access tokens for order endpoints).","isRequired":true,"format":"string","isSecret":true,"name":"TRANSAK_API_SECRET"},{"description":"Environment selector: 'staging' (default) targets https://api-stg.transak.com; 'production' targets https://api.transak.com.","format":"string","name":"TRANSAK_ENV"}]}],"tools":[{"name":"cancel_order","description":"Cancel a Transak order. Only works while the order is in a cancellable state (awaiting payment / pending). Completed or in-flight on-chain orders cannot be cancelled.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_order","description":"Create a Transak order. Use isBuyOrSell='BUY' to onramp (fiat→crypto, funds delivered to walletAddress) or 'SELL' to offramp (crypto→fiat, payout to the linked bank account). Returns the order object with status, a widget/redirect URL if required, and the partner-side id.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_kyc_status","description":"Get the KYC status of a buyer the partner has previously sent through Transak. Look up by partnerCustomerId (preferred — your stable id) or email. Returns kycStatus (NOT_SUBMITTED, IN_REVIEW, APPROVED, REJECTED, EXPIRED), tier, country, and the timestamps. Use this to skip re-KYC for returning buyers and unlock higher limits.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_order","description":"Get a Transak order by its Transak order id. Returns full status, fiat/crypto amounts, fees, tx hash (once on-chain), and current state.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_order_limits","description":"Get the min and max trade amount for a fiat+crypto+country combination — what's the smallest USD a US buyer can spend on USDC/Polygon, and what's the cap before extra KYC kicks in? Public endpoint. Pair with get_quote so you can prevalidate amount before opening the widget.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_partner_account","description":"Get the authenticated partner's account profile (name, api key info, configured webhooks, default currencies). Useful for debugging which partner credentials the server is using.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_partner_balance","description":"Get the partner's settlement balance(s) — Transak holds partner liquidity per fiat to fund SELL payouts and reserves earned commissions until they settle. Returns balances broken down by currency, available vs pending, and last-settlement timestamp. Use this to monitor funding levels before promoting a high-volume corridor.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_quote","description":"Get a fiat↔crypto price quote (public, no auth). Returns the rate, fees, min/max, delivery network, and the exact cryptoAmount the buyer receives for a given fiatAmount (or vice versa). Use this before calling create_order to show the user a price they can confirm.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_limits","description":"Get the current per-user transaction limits granted by Transak based on the user's KYC tier and country (daily, weekly, monthly, lifetime caps in fiat). Look up by partnerCustomerId or email. Use before quoting big-ticket purchases so you can warn a buyer they'll need a tier-up flow first.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_countries","description":"List the countries Transak serves, with allowed fiat currencies, payment methods, and KYC requirements per country. Optionally filter by fiatCurrency to see only countries where that fiat is supported. Public endpoint — call this as a discovery step before showing a country picker.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_crypto_currencies","description":"List all crypto assets Transak supports, including network, decimals, pay-in/pay-out eligibility, and jurisdictional restrictions (US state blocklists etc). Public endpoint.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_fiat_currencies","description":"List all fiat currencies Transak supports, with per-currency payment methods, limits, and country restrictions. Public endpoint — safe to call without credentials. Use as a discovery step before rendering a funding flow.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_network_fees","description":"List the network/gas fees Transak charges (or estimates) per crypto+network combination. Useful for showing buyers the all-in landed cost or for choosing the cheapest network when an asset is multi-chain (e.g. USDC on Polygon vs Ethereum). Public endpoint.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_orders","description":"List Transak orders for the partner account. Filter by status, walletAddress, partnerOrderId, isBuyOrSell, or createdAt date range. Use this to reconcile webhook-driven state, run sweeps on pending orders, or pull a partner-period statement.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_payment_methods","description":"List payment methods available for a given fiat currency (card, Apple Pay, Google Pay, SEPA, UPI, Pix, wire, etc) with min/max amounts and processing time. Public endpoint. Use to dynamically build a funding-method picker per corridor.","write_action":false,"price_micros":0,"input_schema":null},{"name":"refresh_access_token","description":"Mint a fresh short-lived access-token from the partner api-secret. Some Partner API tiers require this token (sent as the access-token header) on order/user endpoints. The token is short-lived (~minutes); cache it and refresh on 401. Returns { accessToken, expiresAt }.","write_action":false,"price_micros":0,"input_schema":null},{"name":"update_order","description":"Update a Transak order after creation. Used for partner-side post-creation actions such as marking a SELL crypto deposit transaction hash, attaching/changing the partnerCustomerId, refreshing the redirectURL, or correcting the buyer email before KYC. Only mutable fields are accepted; immutable fields (amount, currency, network) require a fresh order.","write_action":true,"price_micros":0,"input_schema":null},{"name":"verify_webhook_signature","description":"Locally verify the HMAC-SHA256 signature on a Transak webhook delivery. Transak signs the raw request body with the partner api-secret as the HMAC key; the signature is delivered in the x-transak-signature header (sometimes also `signature`). Pass the raw body string + the header value and this returns { valid: boolean }. Does NOT call Transak — pure local crypto. Always use this before trusting w","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":82,"grade":"B","scanned_at":"2026-09-26T21:19:20.768Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T21:19:20.718Z","components":{"code":{"score":25,"max":25,"notes":["5 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 29 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@codespar/mcp-transak","version":"0.2.0-alpha.3","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":1,"publishedAt":"2026-06-22T18:39:07.997Z","weeklyDownloads":27}],"repo":{"found":true,"owner":"codespar","repo":"mcp-dev-latam","archived":false,"pushedAt":"2026-08-29T02:02:48Z","stars":271,"forks":50,"openIssues":10,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/269058982?v=4","ownerCreatedAt":"2026-03-18T00:40:56Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/269058982?v=4&s=128","source":"github"},"presence":{"stars":271,"forks":50,"downloadsWeek":27,"license":"MIT","lastPushAt":"2026-08-29T02:02:48.000Z","score":46}}}},"grade_history":[],"reviews":[]}