MCP 服务器

site

com.bagsthatpay/site
电商与零售 数据与分析 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Provides a business directory, dataset analysis, entity lookup, provider enquiries, verified claims, and paid business listings for Bags That Pay.

agent_session_start
Start a wallet sign-in (Sign In With Solana)
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.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['address'], 'properties': {'address': {'type': 'string', 'maxLength': 44, 'minLength': 32}}, 'additionalProperties': False}
agent_session_verify
Finish the wallet sign-in; receive the session token
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).
输入模式
{'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}
claim_public
Is a register entry claimed?
Whether an entry has a verified claim, by which proof and when — never by whom.
输入模式
{'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}
claim_start
Claim a register entry (proof of the register's own domain)
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.
输入模式
{'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}
claim_status
My claims
Every claim of this account with its status and, while pending, the instructions.
输入模式
{'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}
claim_verify
Check a claim's proof now
The server reads DNS, the well-known file and the verified email; verified claims are badges on the profile.
输入模式
{'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}
dataset_columns
Dataset columns and shape
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.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
dataset_compare
Compare rows side by side
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.
输入模式
{'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}
dataset_provenance
Where this data comes from, and how to cite it
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.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
dataset_row
Look a row up by an exact key
The rows of the Bags That Pay dataset where a column equals a value exactly (case-insensitive).
输入模式
{'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}
dataset_search
Search the dataset
Rows of the Bags That Pay dataset whose cells contain the query (case-insensitive), up to 50.
输入模式
{'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}
dataset_stats
Summary statistics for a numeric column
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).
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['column'], 'properties': {'column': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
dataset_top
Rank rows by a numeric column
The highest (or lowest) rows of the Bags That Pay dataset by a numeric column — "which is the most/least X".
输入模式
{'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}
enquiry_describe
What you get: an ENQUIRY with a human (not a purchase, not a guaranteed quote)
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.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
enquiry_fields
The questions the enquiry asks
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.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
entities_export
The whole register, in pages (access key required)
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.
输入模式
{'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}
entities_in
Every entity in a region, paged
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.
输入模式
{'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}
entities_schema
The register's shape, counts and provenance
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.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
entities_search
Search the register
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.
输入模式
{'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}
entity_lookup
One entity by its register identifier or slug
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.
输入模式
{'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}
listing_confirm_usdc
Confirm the USDC payment from the chain
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.
输入模式
{'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}
listing_describe
How listing on this directory works
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.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
listing_draft
Draft a listing (validated against the terms before any money)
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.
输入模式
{'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}
listing_pay_card
Pay by card (hosted checkout for a human)
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.
输入模式
{'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}
listing_pay_stripe
Pay by Stripe without a browser (a payment method you hold)
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.
输入模式
{'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}
listing_pay_usdc
Pay in USDC on Solana (automatic)
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.
输入模式
{'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}
listings_published
Published listings
What firms have added on top of the register (published rows only), optionally for one register entry.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'value': {'type': 'string', 'maxLength': 120}, 'scheme': {'type': 'string', 'maxLength': 40}}, 'additionalProperties': False}
listing_status
My listings
Every listing of this account with its status (awaiting_payment, pending_review, published, refused, withdrawn, expired).
输入模式
{'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}
listing_terms
The listing terms and the profile allowlist
The clauses a listing is judged by, their version (send it back as termsVersion), and every profile field the directory takes.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
listing_withdraw
Withdraw a listing
Takes down a listing of this account.
输入模式
{'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}
placements_active
Active sponsored placements on a page
The Sponsored slot's contents for a page (home | region | leaf); labelled as sponsored in the answer.
输入模式
{'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}
submit_enquiry
Submit an ENQUIRY to human providers (two steps; not a purchase)
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."
输入模式
{'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}
已添加
submit_enquiry
2026年9月17日 12:33
已添加
enquiry_fields
2026年9月17日 12:33
已添加
enquiry_describe
2026年9月17日 12:33
已添加
claim_public
2026年9月17日 12:33
已添加
placements_active
2026年9月17日 12:33
已添加
listings_published
2026年9月17日 12:33
已添加
listing_withdraw
2026年9月17日 12:33
已添加
listing_status
2026年9月17日 12:33
已添加
listing_confirm_usdc
2026年9月17日 12:33
已添加
listing_pay_usdc
2026年9月17日 12:33
已添加
listing_pay_stripe
2026年9月17日 12:33
已添加
listing_pay_card
2026年9月17日 12:33
已添加
listing_draft
2026年9月17日 12:33
已添加
claim_status
2026年9月17日 12:33
已添加
claim_verify
2026年9月17日 12:33
已添加
claim_start
2026年9月17日 12:33
已添加
agent_session_verify
2026年9月17日 12:33
已添加
agent_session_start
2026年9月17日 12:33
已添加
listing_terms
2026年9月17日 12:33
已添加
listing_describe
2026年9月17日 12:33
已添加
entities_export
2026年9月17日 12:33
已添加
entities_in
2026年9月17日 12:33
已添加
entities_search
2026年9月17日 12:33
已添加
entity_lookup
2026年9月17日 12:33
已添加
entities_schema
2026年9月17日 12:33
已添加
dataset_provenance
2026年9月17日 12:33
已添加
dataset_top
2026年9月17日 12:33
已添加
dataset_stats
2026年9月17日 12:33
已添加
dataset_compare
2026年9月17日 12:33
已添加
dataset_row
2026年9月17日 12:33