Pin Payments MCP by usefulapi
Read Pin Payments charges, refunds, balances, transfers and subscriptions without moving money.
我该使用它吗
质量与安全性
发现(10)
- LOW在 pinpayments_list_charge_refunds 中
- LOW在 pinpayments_list_authorisations 中
- LOW在 pinpayments_list_customer_charges 中
- LOW在 pinpayments_list_customer_cards 中
- LOW在 pinpayments_list_customer_subscriptions 中
- LOW在 pinpayments_list_transfer_line_items 中
- LOW在 pinpayments_list_recipient_transfers 中
- LOW在 pinpayments_get_dispute_activity 中
- LOW在 pinpayments_list_plan_subscriptions 中
- LOW在 pinpayments_get_subscription_ledger 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"pin-payments": {
"url": "https://pin-payments.usefulapi.io/mcp"
}
}
}远程端点
https://pin-payments.usefulapi.io/mcpstreamable-http它能做什么
工具清单
工具(35)
🟢pinpayments_get_balance
The current Pin Payments account balance: available (ready to transfer) and pending (available plus estimated funds from charges that have not settled yet), per currency, in the currency's base unit (cents for AUD). GET /balance.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_charges(page)
List charges (card payments), 25 per page: amount (in the currency's base unit, e.g. cents for AUD), currency, description, payer email, status_message/success, total_fees, merchant_entitlement, amount_refunded, captured, settlement transfers, chargebacks flag, metadata. The card is shown only as scheme and last four digits. GET /charges.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_search_charges(query, start_date, end_date, sort, direction, ...)
Search charges by free text (description, email, metadata, cardholder name, currency, exact amount in the currency's base unit, exact charge/card/refund/customer token) and/or a created-date range. GET /charges/search.
输入模式
{
"type": "object",
"properties": {
"query": {
"description": "Text to match.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"start_date": {
"description": "Created on or after this date, yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"end_date": {
"description": "Created before this date, yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"sort": {
"description": "Sort field (default created_at).",
"type": "string",
"enum": [
"created_at",
"amount"
]
},
"direction": {
"description": "Sort direction (default asc).",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_charge(charge_token)
One charge by token (ch_...), with fees, refunds total, settlement transfer state and chargeback flag. GET /charges/{token}.
输入模式
{
"type": "object",
"properties": {
"charge_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Charge token, e.g. ch_lfUYEBK14zotCTykezJkfg."
}
},
"required": [
"charge_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_charge_refunds(charge_token, page)
All refunds issued against one charge. GET /charges/{token}/refunds.
输入模式
{
"type": "object",
"properties": {
"charge_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Charge token (ch_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"charge_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_refunds(page)
List all refunds, 25 per page: amount (in the currency's base unit), currency, charge token, status_message, error_message, created_at. GET /refunds.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_refund(refund_token)
One refund by token (rf_...). GET /refunds/{token}.
输入模式
{
"type": "object",
"properties": {
"refund_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Refund token, e.g. rf_ERCQy--Ay6o-NKGiUVcKKA."
}
},
"required": [
"refund_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_authorisations(page)
List card authorisations (held funds, not yet captured; they expire after seven days) with amount, amount_captured, amount_remaining and expired flags. GET /authorisations.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_authorisation(authorisation_token)
One authorisation by token (auth_...). GET /authorisations/{token}.
输入模式
{
"type": "object",
"properties": {
"authorisation_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Authorisation token, e.g. auth_NRzYklT8z3p0yiozsXEAIg."
}
},
"required": [
"authorisation_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_customers(page)
List stored customers, 25 per page: token, email, first_name, last_name, phone_number, company, notes and the primary card as scheme and last four digits. GET /customers.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_customer(customer_token)
One customer by token (cus_...). GET /customers/{token}.
输入模式
{
"type": "object",
"properties": {
"customer_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Customer token, e.g. cus_XZg1ULpWaROQCOT5PdwLkQ."
}
},
"required": [
"customer_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_customer_charges(customer_token, page)
Charges made by one customer. GET /customers/{token}/charges.
输入模式
{
"type": "object",
"properties": {
"customer_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Customer token (cus_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"customer_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_customer_cards(customer_token, page)
Cards stored for one customer, each shown only as scheme, last four digits and issuing country (no token, expiry or address). GET /customers/{token}/cards.
输入模式
{
"type": "object",
"properties": {
"customer_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Customer token (cus_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"customer_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_customer_subscriptions(customer_token, page)
Subscriptions of one customer: state, plan, next billing date, active interval, cancellation time. GET /customers/{token}/subscriptions.
输入模式
{
"type": "object",
"properties": {
"customer_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Customer token (cus_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"customer_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_deposits(page)
List deposits made to the account (amount, currency, bank narration, available_at). GET /deposits.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_deposit(deposit_token)
One deposit by token (dpo_...). GET /deposits/{token}.
输入模式
{
"type": "object",
"properties": {
"deposit_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Deposit token, e.g. dpo_Ts3YECK14zotCTykezRspu."
}
},
"required": [
"deposit_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_transfers(page)
List transfers (payouts to bank accounts), 25 per page: status, amount, debits/credits, paid_at, reference, line item count, bank account (masked) and recipient. GET /transfers.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_search_transfers(query, start_date, end_date, sort, direction, ...)
Search transfers by token, description, amount or recipient details and/or a created-date range. GET /transfers/search.
输入模式
{
"type": "object",
"properties": {
"query": {
"description": "Text to match.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"start_date": {
"description": "Created on or after this date, yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"end_date": {
"description": "Created before this date, yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"sort": {
"description": "Sort field (the only option is paid_at, also the default).",
"type": "string",
"enum": [
"paid_at"
]
},
"direction": {
"description": "Sort direction (default asc).",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_transfer(transfer_token)
One transfer by token (tfer_...). GET /transfers/{token}.
输入模式
{
"type": "object",
"properties": {
"transfer_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Transfer token, e.g. tfer_lfUYEBK14zotCTykezJkfg."
}
},
"required": [
"transfer_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_transfer_line_items(transfer_token, page)
The ledger line items that make up one transfer (charge entitlements, fees, refunds, chargebacks). GET /transfers/{token}/line_items.
输入模式
{
"type": "object",
"properties": {
"transfer_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Transfer token (tfer_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"transfer_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_recipients(page)
List transfer recipients (name, email, masked bank account). GET /recipients.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_recipient(recipient_token)
One recipient by token (rp_...). GET /recipients/{token}.
输入模式
{
"type": "object",
"properties": {
"recipient_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Recipient token, e.g. rp_a98a4fafROQCOT5PdwLkQ."
}
},
"required": [
"recipient_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_recipient_transfers(recipient_token, page)
Transfers paid to one recipient. GET /recipients/{token}/transfers.
输入模式
{
"type": "object",
"properties": {
"recipient_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Recipient token (rp_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"recipient_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_disputes(sort, direction, page)
List chargeback disputes: category, status, amount, the disputed charge, evidence_required_by and the relevant evidence types. GET /disputes.
输入模式
{
"type": "object",
"properties": {
"sort": {
"description": "Sort field.",
"type": "string",
"enum": [
"received_at",
"evidence_required_by",
"amount"
]
},
"direction": {
"description": "Sort direction (default asc).",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_search_disputes(query, status, sort, direction, page)
Search disputes by status or exact charge token, optionally filtered by status. GET /disputes/search.
输入模式
{
"type": "object",
"properties": {
"query": {
"description": "Text to match (status, or an exact charge token); at least 3 characters.",
"type": "string",
"minLength": 3,
"maxLength": 200
},
"status": {
"description": "Dispute status, e.g. evidence_required.",
"type": "string",
"minLength": 1,
"maxLength": 60
},
"sort": {
"description": "Sort field.",
"type": "string",
"enum": [
"received_at",
"evidence_required_by",
"amount"
]
},
"direction": {
"description": "Sort direction (default asc).",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_dispute(dispute_token)
One dispute by token (dis_...). GET /disputes/{token}.
输入模式
{
"type": "object",
"properties": {
"dispute_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Dispute token, e.g. dis_JRs6Xgk4jMyF33yGijQ7Nw."
}
},
"required": [
"dispute_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_dispute_activity(dispute_token)
The activity feed of one dispute (status changes, ledger entries such as chargeback fees and recoveries). GET /disputes/{token}/activity.
输入模式
{
"type": "object",
"properties": {
"dispute_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Dispute token (dis_...)."
}
},
"required": [
"dispute_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_plans(page)
List subscription plans: name, amount, currency, interval, trial and setup amounts, subscription counts by state. GET /plans.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_plan(plan_token)
One plan by token (plan_...). GET /plans/{token}.
输入模式
{
"type": "object",
"properties": {
"plan_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Plan token, e.g. plan_ZyDee4HNeUHFHC4SpM2idg."
}
},
"required": [
"plan_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_plan_subscriptions(plan_token, page)
Subscriptions to one plan. GET /plans/{token}/subscriptions.
输入模式
{
"type": "object",
"properties": {
"plan_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Plan token (plan_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"plan_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_subscriptions(page)
List all subscriptions: state (trial, active, cancelling, cancelled), plan, customer, next_billing_date, active interval, cancelled_at. GET /subscriptions.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_subscription(subscription_token)
One subscription by token (sub_...). GET /subscriptions/{token}.
输入模式
{
"type": "object",
"properties": {
"subscription_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Subscription token, e.g. sub_bZWXhTzHooKpk9FZjQfzqQ."
}
},
"required": [
"subscription_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_subscription_ledger(subscription_token, page)
The ledger entries (credits and debits) of one subscription. GET /subscriptions/{token}/ledger.
输入模式
{
"type": "object",
"properties": {
"subscription_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Subscription token (sub_...)."
},
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"required": [
"subscription_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_list_events(page)
The account's event log (charge.captured, refund.created, dispute.updated, ...), each with the affected record (cards masked). GET /events.
输入模式
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1); 25 results per page. Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢pinpayments_get_event(event_token)
One event by token (evt_...). GET /events/{token}.
输入模式
{
"type": "object",
"properties": {
"event_token": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Event token, e.g. evt_12K4fafROQsdI5PdwLkX."
}
},
"required": [
"event_token"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}社区
证据