USDC wallets, payment links and x402 payments on Solana for AI agents.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer API key from create_wallet or POST /api/agent/wallets. Optional for listing tools.
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.
Create a GotSOL.app USDC payment link for the signed-in wallet. Returns a pay URL, QR page, and x402 URL. Incoming payments are not charged the 0.25% transfer fee.
USDC amount the payer should send
Optional memo shown to the payer
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.
claude mcp add --transport http gotsol https://gotsol.app/api/mcp
Headers
Authorization (optional, not in the config above): Bearer API key from create_wallet or POST /api/agent/wallets. Optional for listing tools.Create a GotSOL.app USDC payment link for the signed-in wallet. Returns a pay URL, QR page, and x402 URL. Incoming payments are not charged the 0.25% transfer fee.
| Argument | Type | Description |
|---|---|---|
| memo | string | Optional memo shown to the payer |
| amount* | number | USDC amount the payer should send |
| bearerToken | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"amount"
],
"properties": {
"memo": {
"type": "string",
"description": "Optional memo shown to the payer"
},
"amount": {
"type": "number",
"description": "USDC amount the payer should send"
},
"bearerToken": {
"type": "string"
}
},
"additionalProperties": false
}Open a GotSOL.app Solana wallet for this agent. Returns the address and an API key once. No email signup or delegation click. Store the API key and send it as Authorization: Bearer on later calls.
| Argument | Type | Description |
|---|---|---|
| name | string | Label stored with the API key |
| idempotencyKey | string | Retry key. The same key returns the same wallet and does not mint a second API key. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"description": "Label stored with the API key"
},
"idempotencyKey": {
"type": "string",
"description": "Retry key. The same key returns the same wallet and does not mint a second API key."
}
},
"additionalProperties": false
}Get revenue goal and progress for a merchant. Query by merchantPubkey or merchantId.
| Argument | Type | Description |
|---|---|---|
| merchantId | string | |
| bearerToken | string | Optional Bearer token for API auth |
| merchantPubkey | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"merchantId": {
"type": "string"
},
"bearerToken": {
"type": "string",
"description": "Optional Bearer token for API auth"
},
"merchantPubkey": {
"type": "string"
}
},
"additionalProperties": false
}Get metadata for a merchant by their Solana public key (merchantPubkey).
| Argument | Type | Description |
|---|---|---|
| bearerToken | string | Optional Bearer token for API auth (agent can pass its own) |
| merchantPubkey* | string | Merchant Solana public key |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"merchantPubkey"
],
"properties": {
"bearerToken": {
"type": "string",
"description": "Optional Bearer token for API auth (agent can pass its own)"
},
"merchantPubkey": {
"type": "string",
"description": "Merchant Solana public key"
}
},
"additionalProperties": false
}Get payment history for a merchant. Paginated.
| Argument | Type | Description |
|---|---|---|
| page | number | |
| limit | number | |
| merchant* | string | Merchant pubkey |
| bearerToken | string | Optional Bearer token for API auth |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"merchant"
],
"properties": {
"page": {
"type": "number"
},
"limit": {
"type": "number"
},
"merchant": {
"type": "string",
"description": "Merchant pubkey"
},
"bearerToken": {
"type": "string",
"description": "Optional Bearer token for API auth"
}
},
"additionalProperties": false
}Get one GotSOL.app payment link, including status. Set check to true to look for the on-chain payment.
| Argument | Type | Description |
|---|---|---|
| id* | string | Payment link id |
| check | boolean | |
| bearerToken | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Payment link id"
},
"check": {
"type": "boolean"
},
"bearerToken": {
"type": "string"
}
},
"additionalProperties": false
}Get the profile for the authenticated API key: userId, emails, wallets (Solana and Ethereum), and all merchants (merchantPubkey, merchantName) tied to this account.
| Argument | Type | Description |
|---|---|---|
| bearerToken | string | Optional Bearer token for API auth |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bearerToken": {
"type": "string",
"description": "Optional Bearer token for API auth"
}
},
"additionalProperties": false
}USDC balance of the signed-in GotSOL.app wallet.
| Argument | Type | Description |
|---|---|---|
| bearerToken | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bearerToken": {
"type": "string"
}
},
"additionalProperties": false
}List merchants with location data (heatmap) for the authenticated user.
| Argument | Type | Description |
|---|---|---|
| bearerToken | string | Optional Bearer token for API auth |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bearerToken": {
"type": "string",
"description": "Optional Bearer token for API auth"
}
},
"additionalProperties": false
}List GotSOL.app payment links for the signed-in wallet.
| Argument | Type | Description |
|---|---|---|
| bearerToken | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"bearerToken": {
"type": "string"
}
},
"additionalProperties": false
}List products for a merchant. Optional search term.
| Argument | Type | Description |
|---|---|---|
| search | string | |
| bearerToken | string | Optional Bearer token for API auth |
| merchantPubkey* | string | Merchant Solana public key |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"merchantPubkey"
],
"properties": {
"search": {
"type": "string"
},
"bearerToken": {
"type": "string",
"description": "Optional Bearer token for API auth"
},
"merchantPubkey": {
"type": "string",
"description": "Merchant Solana public key"
}
},
"additionalProperties": false
}Build an unsigned USDC transfer. Recipient receives the amount minus a 0.25% fee. The sender must sign and broadcast it, and that wallet pays the Solana network fee in SOL. Use send_usdc when the network fee should be paid in USDC.
| Argument | Type | Description |
|---|---|---|
| to* | string | Recipient Solana address |
| from* | string | Sender Solana address |
| amount* | number | USDC amount debited from the sender |
| bearerToken | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from",
"to",
"amount"
],
"properties": {
"to": {
"type": "string",
"description": "Recipient Solana address"
},
"from": {
"type": "string",
"description": "Sender Solana address"
},
"amount": {
"type": "number",
"description": "USDC amount debited from the sender"
},
"bearerToken": {
"type": "string"
}
},
"additionalProperties": false
}Send USDC from the GotSOL.app wallet for this API key. Applies the 0.25% transfer fee through December 31, 2027. The Solana network fee is paid in USDC, so the sender does not need SOL. A missing recipient USDC account is opened in the same send.
| Argument | Type | Description |
|---|---|---|
| to* | string | Recipient Solana address |
| amount* | number | USDC amount debited from the sender |
| bearerToken | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"to",
"amount"
],
"properties": {
"to": {
"type": "string",
"description": "Recipient Solana address"
},
"amount": {
"type": "number",
"description": "USDC amount debited from the sender"
},
"bearerToken": {
"type": "string"
}
},
"additionalProperties": false
}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 Oct 31, 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.