Bags That Pay: the site's own MCP server — dataset, enquiry, entities, listing (enquiry = a...
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.
Give a Solana address; get the exact message to sign. A signature, not a transaction: no fee, nothing moves. Then call agent_session_verify with the base64 signature.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Give a Solana address; get the exact message to sign. A signature, not a transaction: no fee, nothing moves. Then call agent_session_verify with the base64 signature.
| Argument | Type | Description |
|---|---|---|
| address* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"maxLength": 44,
"minLength": 32
}
},
"additionalProperties": false
}The address, the exact message from agent_session_start and its base64 Ed25519 signature. Returns a session token to pass as `session` to every later call (valid 30 days, revocable from the account page).
| Argument | Type | Description |
|---|---|---|
| address* | string | |
| message* | string | |
| signature* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address",
"message",
"signature"
],
"properties": {
"address": {
"type": "string",
"maxLength": 44,
"minLength": 32
},
"message": {
"type": "string",
"maxLength": 2000,
"minLength": 20
},
"signature": {
"type": "string",
"maxLength": 200,
"minLength": 40
}
},
"additionalProperties": false
}Whether an entry has a verified claim, by which proof and when — never by whom.
| Argument | Type | Description |
|---|---|---|
| value* | string | |
| scheme* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"scheme",
"value"
],
"properties": {
"value": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"scheme": {
"type": "string",
"maxLength": 40,
"minLength": 2
}
},
"additionalProperties": false
}Names the entry (scheme + value, e.g. lei); returns the proof domain the register lists and the token to place as a TXT record, a well-known file, or via a verified email there.
| Argument | Type | Description |
|---|---|---|
| value* | string | |
| scheme* | string | |
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"scheme",
"value"
],
"properties": {
"value": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"scheme": {
"type": "string",
"maxLength": 40,
"minLength": 2
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}Every claim of this account with its status and, while pending, the instructions.
| Argument | Type | Description |
|---|---|---|
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session"
],
"properties": {
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}The server reads DNS, the well-known file and the verified email; verified claims are badges on the profile.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 60,
"minLength": 10
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}The columns, which of them are numeric, the row count and the provenance banner of the Bags That Pay dataset. Call this first to learn the schema.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}The rows of the Bags That Pay dataset whose column is any of the given values, in the order given — for "X vs Y" questions.
| Argument | Type | Description |
|---|---|---|
| column* | string | |
| values* | array |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"column",
"values"
],
"properties": {
"column": {
"type": "string",
"minLength": 1
},
"values": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 10,
"minItems": 2
}
},
"additionalProperties": false
}The source, the date it was computed, the licence and the citation for the Bags That Pay dataset. Read this to attribute a figure correctly.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}The rows of the Bags That Pay dataset where a column equals a value exactly (case-insensitive).
| Argument | Type | Description |
|---|---|---|
| value* | string | |
| column* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"column",
"value"
],
"properties": {
"value": {
"type": "string",
"minLength": 1
},
"column": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}Rows of the Bags That Pay dataset whose cells contain the query (case-insensitive), up to 50.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query* | string | text to look for in any cell |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1
},
"query": {
"type": "string",
"minLength": 1,
"description": "text to look for in any cell"
}
},
"additionalProperties": false
}count, min, max, mean, median and sum of a numeric column of the Bags That Pay dataset (grouping commas and currency are handled; non-numeric rows are excluded and counted).
| Argument | Type | Description |
|---|---|---|
| column* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"column"
],
"properties": {
"column": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
}The highest (or lowest) rows of the Bags That Pay dataset by a numeric column — "which is the most/least X".
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| column* | string | |
| ascending | boolean | true for the lowest first; default highest first |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"column"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1
},
"column": {
"type": "string",
"minLength": 1
},
"ascending": {
"type": "boolean",
"description": "true for the lowest first; default highest first"
}
},
"additionalProperties": false
}Read first. States plainly what submit_enquiry does on Bags That Pay: it starts an enquiry with human providers who quote directly. Nothing is bought, ordered or paid; no quote is guaranteed; it is free. Also returns who receives the details, the consent wording, and how the person confirms.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Every field of the Bags That Pay enquiry: key, label, type, whether required, help text and the allowed options where there are any. Pass answers to submit_enquiry keyed by field key.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Every entity of Bags That Pay register, 200 a page, with provenance. Needs an access key (Authorization: Bearer); export pages are metered per key per day. Without a key the answer says how to get one.
| Argument | Type | Description |
|---|---|---|
| page | integer | |
| pageSize | integer |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"minimum": 1
},
"pageSize": {
"type": "integer",
"maximum": 200,
"minimum": 1
}
},
"additionalProperties": false
}The Bags That Pay register entities in one region (a state or a jurisdiction, by id or name), optionally for one service, 50 a page.
| Argument | Type | Description |
|---|---|---|
| page | integer | |
| region* | string | |
| service | string | |
| pageSize | integer |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"region"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1
},
"region": {
"type": "string",
"maxLength": 60,
"minLength": 2
},
"service": {
"type": "string",
"maxLength": 80
},
"pageSize": {
"type": "integer",
"maximum": 50,
"minimum": 1
}
},
"additionalProperties": false
}Which fields the Bags That Pay register register carries and on how many entities, the regions and services, the identifier schemes, and how to cite it. Call this first.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Entities of Bags That Pay register whose name, commercial name, website, address or authority contains the query, optionally within a region (id or name) and a service (slug or name). Up to 50 rows.
| Argument | Type | Description |
|---|---|---|
| q | string | |
| limit | integer | |
| region | string | |
| service | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"maxLength": 120
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1
},
"region": {
"type": "string",
"maxLength": 60
},
"service": {
"type": "string",
"maxLength": 80
}
},
"additionalProperties": false
}The Bags That Pay register entry for a firm, by its register identifier (scheme + value, e.g. lei) or by the slug of its page. Exact match; returns the whole record with its page.
| Argument | Type | Description |
|---|---|---|
| slug | string | |
| value | string | |
| scheme | string | identifier scheme, e.g. lei, fca_frn, tdlr_license |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"slug": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"value": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"scheme": {
"type": "string",
"maxLength": 24,
"minLength": 2,
"description": "identifier scheme, e.g. lei, fca_frn, tdlr_license"
}
},
"additionalProperties": false
}The SERVER finds the transfer by reference and reads the treasury's balance change; a short or wrong-token transfer is reported by name and not credited. On success the listing enters review.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 60,
"minLength": 10
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}What a listing on Bags That Pay is, what it costs, how it is paid, who publishes it, and every profile field it takes. Read this to the person first.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Creates a listing draft on Bags That Pay. Send the fullest profile you can (listing_describe lists the fields); a scam-shaped or off-list field is refused by name. Returns the listing id and status awaiting_payment.
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| about | string | |
| profile | object | |
| session* | string | the session token from agent_session_verify |
| website | string | |
| register | object | |
| services* | any | |
| languages | string | |
| authorised* | boolean | |
| enquiryEmail | string | |
| termsVersion |
Returns a Stripe Checkout URL at the site's price. A human completes it in a browser; the site learns of payment from Stripe's verified event, never from the browser.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 60,
"minLength": 10
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}Send a Stripe payment method id (pm_...) the agent is entitled to use; the server charges the SITE's price off-session. Answers succeeded (the listing enters review) or requires_action (use listing_pay_card for a human); never charges an amount you name.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| session* | string | the session token from agent_session_verify |
| paymentMethod* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"id",
"paymentMethod"
],
"properties": {
"id": {
"type": "string",
"maxLength": 60,
"minLength": 10
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
},
"paymentMethod": {
"type": "string",
"pattern": "^pm_[A-Za-z0-9]+$"
}
},
"additionalProperties": false
}Returns the Solana Pay transfer request: recipient, exact amount, USDC mint and a unique reference. Pay it from the wallet (include the reference as a read-only key), then call listing_confirm_usdc.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 60,
"minLength": 10
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}Every listing of this account with its status (awaiting_payment, pending_review, published, refused, withdrawn, expired).
| Argument | Type | Description |
|---|---|---|
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session"
],
"properties": {
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}The clauses a listing is judged by, their version (send it back as termsVersion), and every profile field the directory takes.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Takes down a listing of this account.
| Argument | Type | Description |
|---|---|---|
| id* | string | |
| session* | string | the session token from agent_session_verify |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 60,
"minLength": 10
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
}
},
"additionalProperties": false
}What firms have added on top of the register (published rows only), optionally for one register entry.
| Argument | Type | Description |
|---|---|---|
| value | string | |
| scheme | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"value": {
"type": "string",
"maxLength": 120
},
"scheme": {
"type": "string",
"maxLength": 40
}
},
"additionalProperties": false
}The Sponsored slot's contents for a page (home | region | leaf); labelled as sponsored in the answer.
| Argument | Type | Description |
|---|---|---|
| leaf | string | |
| page* | string | |
| region | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"page"
],
"properties": {
"leaf": {
"type": "string",
"maxLength": 120
},
"page": {
"enum": [
"home",
"region",
"leaf"
],
"type": "string"
},
"region": {
"type": "string",
"maxLength": 40
}
},
"additionalProperties": false
}Submits an enquiry to Bags That Pay — NOT a purchase, NOT a guaranteed quote. Step 1: call with the answers (keyed by field key from enquiry_fields) and consent=true; it validates and returns a summary, the consent line and a confirmation token — show the person the summary and the consent line. Step 2: only if the person agrees, call again with the same answers, consent=true and the confirmation token; the enquiry is then submitted, and the person receives an email with a link they must click before any provider sees it. Consent means the person has read and agreed to: "By submitting you agree Bags That Pay passes your question to the issuer or data provider you asked about."
| Argument | Type | Description |
|---|---|---|
| answers* | object | the person's answers, keyed by field key |
| consent* | boolean | true only when the person has agreed to: By submitting you agree Bags That Pay passes your question to the issuer or data provider you asked about. |
| confirmation | string | the confirmation token from step 1, after the person has approved the summary |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"answers",
"consent"
],
"properties": {
"answers": {
"type": "object",
"description": "the person's answers, keyed by field key",
"additionalProperties": {
"type": [
"string",
"number",
"boolean"
]
}
},
"consent": {
"type": "boolean",
"description": "true only when the person has agreed to: By submitting you agree Bags That Pay passes your question to the issuer or data provider you asked about."
},
"confirmation": {
"type": "string",
"description": "the confirmation token from step 1, after the person has approved the summary"
}
},
"additionalProperties": false
}| string |
| jurisdictions* | any | ISO codes |
| termsAccepted* | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"session",
"name",
"services",
"jurisdictions",
"termsVersion",
"termsAccepted",
"authorised"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"about": {
"type": "string",
"maxLength": 1200
},
"profile": {
"type": "object",
"additionalProperties": {}
},
"session": {
"type": "string",
"maxLength": 300,
"minLength": 20,
"description": "the session token from agent_session_verify"
},
"website": {
"type": "string",
"maxLength": 200
},
"register": {
"type": "object",
"required": [
"scheme",
"value"
],
"properties": {
"value": {
"type": "string"
},
"scheme": {
"type": "string"
}
},
"additionalProperties": false
},
"services": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "string"
}
]
},
"languages": {
"type": "string",
"maxLength": 200
},
"authorised": {
"type": "boolean"
},
"enquiryEmail": {
"type": "string",
"maxLength": 160
},
"termsVersion": {
"type": "string",
"minLength": 1
},
"jurisdictions": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "string"
}
],
"description": "ISO codes"
},
"termsAccepted": {
"type": "boolean"
}
},
"additionalProperties": false
}