Non-custodial stablecoin checkout: search BitPal docs, API spec, webhooks and errors; test payments
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get one BitPal REST API operation from the OpenAPI spec: parameters, request body schema, responses and errors ($refs expanded). Path may use placeholders ({id}) or real ids.
e.g. /v1/checkout/sessions or /v1/checkout/sessions/{id}/deposit-address
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http bitpal https://mcp.bitpal.io/mcp
Get one BitPal REST API operation from the OpenAPI spec: parameters, request body schema, responses and errors ($refs expanded). Path may use placeholders ({id}) or real ids.
| Argument | Type | Description |
|---|---|---|
| path* | string | e.g. /v1/checkout/sessions or /v1/checkout/sessions/{id}/deposit-address |
| method* | string |
{
"type": "object",
"required": [
"method",
"path"
],
"properties": {
"path": {
"type": "string",
"description": "e.g. /v1/checkout/sessions or /v1/checkout/sessions/{id}/deposit-address"
},
"method": {
"enum": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE"
],
"type": "string"
}
}
}Get a full BitPal documentation page as Markdown. Pages: ai, api, errors, flows, lifecycle, links, overview, quickstart, reference, sdk, webhooks, x402.
| Argument | Type | Description |
|---|---|---|
| page* | string |
{
"type": "object",
"required": [
"page"
],
"properties": {
"page": {
"enum": [
"ai",
"api",
"errors",
"flows",
"lifecycle",
"links",
"overview",
"quickstart",
"reference",
"sdk",
"webhooks",
"x402"
],
"type": "string"
}
}
}Explain a BitPal API error code (HTTP status, cause, fix). Omit code to list all documented codes.
| Argument | Type | Description |
|---|---|---|
| code | string | e.g. SELLER_WALLET_NOT_CONFIGURED |
{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "e.g. SELLER_WALLET_NOT_CONFIGURED"
}
}
}Get the rules every BitPal integration must follow plus the docs for one integration flow: hosted (redirect), popup, headless (your own payment UI), payment_link, x402 (pay per API call) or webhooks. Read this first when asked to integrate BitPal.
| Argument | Type | Description |
|---|---|---|
| flow* | string |
{
"type": "object",
"required": [
"flow"
],
"properties": {
"flow": {
"enum": [
"hosted",
"popup",
"headless",
"payment_link",
"x402",
"webhooks"
],
"type": "string"
}
}
}Get a BitPal webhook event's payload schema (envelope {id, event, created_at, data} plus data fields). Events: checkout.session.created, checkout.session.deposit_detected, checkout.session.paid, checkout.session.settled, checkout.session.unresolved, checkout.session.expired, checkout.refund.recorded, x402.payment.resolved.
| Argument | Type | Description |
|---|---|---|
| event* | string |
{
"type": "object",
"required": [
"event"
],
"properties": {
"event": {
"enum": [
"checkout.session.created",
"checkout.session.deposit_detected",
"checkout.session.paid",
"checkout.session.settled",
"checkout.session.unresolved",
"checkout.session.expired",
"checkout.refund.recorded",
"x402.payment.resolved"
],
"type": "string"
}
}
}List every public BitPal REST API operation (method, path, summary), generated from the OpenAPI spec.
No arguments.
{
"type": "object",
"properties": {}
}Search BitPal developer documentation (checkout sessions, popup/headless, payment links, x402, webhooks, errors, chains). Returns the best-matching sections with links. Use before writing BitPal integration code.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query* | string | What you are looking for, e.g. "verify webhook signature python" or "late payment". |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1
},
"query": {
"type": "string",
"description": "What you are looking for, e.g. \"verify webhook signature python\" or \"late payment\"."
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 12, 2026.
No readOnlyHint / destructiveHint annotations, so clients can't tell a read from a write without asking.
Fix: Add annotations to each tool, e.g. { readOnlyHint: true } for tools that only read.