xyz.trusteed/mcp-gateway
REMOTE · TRUSTEED.XYZ
Agentic commerce gateway: discovery, search, checkout across Shopify/Woo/Odoo/PrestaShop.
Available components
Last scanned (20 hours ago)
Scores higher than 10% of remote servers
Reachable. Last reached 4 Nov 2026.
Category E-commerce
Recent critical change
Authorization (12 Oct 2026). See the changelog before you install this server.
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not yet verified: we couldn't confirm whether this endpoint requires it. View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability0
- Transport check failed: declared streamable-http, but the endpoint returned HTTP 410. See how to fix → View diagnostics → Fail
Schema Quality & AI Usability0
- Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Tool Safety0
- Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Capabilities0
- Capabilities not yet verified: we couldn't read the endpoint's capabilities.Unverified
Unverified: 5 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 28 Oct 26 −53
- Endpoint reachability: reachable → not serving MCP ▼ security
- Stability: fail → unverified ▼ security
- Authorization: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Schema quality: 100 → unverified ▼ functional
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- 26 Oct 26 0
- “get_trust_receipt” added an optional parameter “order_id” cosmetic
- “get_trust_receipt” reworded the description of “checkout_session_id” cosmetic
- “get_trust_receipt” made “checkout_session_id” optional cosmetic
3 cosmetic changes on this day. Switch on “Show cosmetic changes” to see them.
- 21 Oct 26 0
- Tool “complete_checkout” rewrote its description, which is the text the model reads security
- Tool “ucp_complete_checkout” rewrote its description, which is the text the model reads security
- “complete_checkout” reworded the description of “payment_mandate” cosmetic
- “preview_checkout” reworded the description of “payment_mandate” cosmetic
- “ucp_complete_checkout” reworded the description of “payment_mandate” cosmetic
- “ucp_preview_checkout” reworded the description of “payment_mandate” cosmetic
- 17 Oct 26 −3
- Stability: pass → fail ▼ security
- The server rewrote its instructions, which are the text every model session reads security
- Tool coverage: 100% → 44% ▼ functional
- Tool “browse_categories” dropped its output schema ▼ functional
- Tool “compare_products” dropped its output schema ▼ functional
- Tool “create_sandbox_key” dropped its output schema ▼ functional
- Tool “get_checkout_state” dropped its output schema ▼ functional
- Tool “get_page_content” dropped its output schema ▼ functional
- Tool “get_site_map” dropped its output schema ▼ functional
- Tool “quote_checkout” dropped its output schema ▼ functional
- Tool “search_docs” dropped its output schema ▼ functional
- Tool “ucp_cancel_checkout” dropped its output schema ▼ functional
- Tool “ucp_complete_checkout” dropped its output schema ▼ functional
- Tool “ucp_create_checkout” dropped its output schema ▼ functional
- Tool “ucp_get_checkout” dropped its output schema ▼ functional
- Tool “ucp_update_checkout” dropped its output schema ▼ functional
- Tool “verify_trust_receipt” dropped its output schema ▼ functional
- Server version: 1.0.0+tools.1cf19f87 → 1.0.0+tools.d0a71800 functional
- New tool “ucp_preview_checkout” functional
- “complete_checkout” reworded the description of “cel_context” cosmetic
- 16 Oct 26 0
- Stability: fail → pass ▲ security
- Tool “preview_checkout” rewrote its description, which is the text the model reads security
- Tool “search_docs” rewrote its description, which is the text the model reads security
- Schema quality: 7219 → 7955 ▼ functional
- Server version: 1.0.0 → 1.0.0+tools.1cf19f87 functional
- New tool “get_checkout_state” functional
- New tool “quote_checkout” functional
- New tool “verify_trust_receipt” functional
- “apply_discount” reworded the description of “idempotency_key” cosmetic
- “complete_checkout” reworded the description of “idempotency_key” cosmetic
- “create_cart” reworded the description of “idempotency_key” cosmetic
- “search_docs” reworded the description of “type” cosmetic
- “select_shipping_option” reworded the description of “idempotency_key” cosmetic
- “ucp_cancel_checkout” reworded the description of “idempotency_key” cosmetic
- “ucp_complete_checkout” reworded the description of “idempotency_key” cosmetic
- “ucp_create_checkout” reworded the description of “idempotency_key” cosmetic
- “ucp_update_checkout” reworded the description of “idempotency_key” cosmetic
- “select_shipping_option” made “idempotency_key” optional cosmetic
- 15 Oct 26 0
- Tool “complete_checkout” rewrote its description, which is the text the model reads security
- Tool “get_trust_receipt” rewrote its description, which is the text the model reads security
- “ucp_update_checkout” added an optional parameter “idempotency_key” cosmetic
- “create_cart” reworded the description of “agent_token” cosmetic
- “ucp_cancel_checkout” reworded the description of “idempotency_key” cosmetic
- 14 Oct 26 0
- Tool “apply_discount” rewrote its description, which is the text the model reads security
- Tool “complete_checkout” rewrote its description, which is the text the model reads security
- Tool “create_cart” rewrote its description, which is the text the model reads security
- Tool “get_shipping_rates” rewrote its description, which is the text the model reads security
- Tool “get_trust_receipt” rewrote its description, which is the text the model reads security
- Tool “preview_checkout” rewrote its description, which is the text the model reads security
- Tool “select_shipping_option” rewrote its description, which is the text the model reads security
- Tool “ucp_cancel_checkout” rewrote its description, which is the text the model reads security
- Tool “ucp_complete_checkout” rewrote its description, which is the text the model reads security
- Tool “ucp_create_checkout” rewrote its description, which is the text the model reads security
- Tool “ucp_get_checkout” rewrote its description, which is the text the model reads security
- Tool “ucp_update_checkout” rewrote its description, which is the text the model reads security
- New resource “checkout-guide” functional
- “complete_checkout” added an optional parameter “save_payment_method” cosmetic
- 12 Oct 26 0
- Authorization: unverified → fail ▼ critical
- Tool “apply_discount” rewrote its description, which is the text the model reads security
- Tool “complete_checkout” rewrote its description, which is the text the model reads security
- Tool “create_cart” rewrote its description, which is the text the model reads security
- Tool “get_shipping_rates” rewrote its description, which is the text the model reads security
- Tool “preview_checkout” rewrote its description, which is the text the model reads security
- Tool “select_shipping_option” rewrote its description, which is the text the model reads security
- “ucp_complete_checkout” added an optional parameter “ap2” cosmetic
- “ucp_complete_checkout” added an optional parameter “meta” cosmetic
- “ucp_complete_checkout” added an optional parameter “payment” cosmetic
- “ucp_create_checkout” added an optional parameter “meta” cosmetic
- “ucp_get_checkout” added an optional parameter “meta” cosmetic
- “ucp_update_checkout” added an optional parameter “meta” cosmetic
- “complete_checkout” reworded the description of “kyapay_token” cosmetic
- “complete_checkout” reworded the description of “payment_method” cosmetic
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Nov 2026 · Probed https://trusteed.xyz/demo-store/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=agenticmcpstores.com | CN=YR2,O=Let's Encrypt,C=US | 14 Sept 2026 | 13 Dec 2026 | RSA 2048 | SHA256-RSA | 6cc60b02869c968eec914d382f85caf8e3b |
| SANs: agenticmcpstores.com, trusteed.xyz, www.agenticmcpstores.com, www.trusteed.xyz | ||||||
| CN=YR2,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | 4ebd24947e24d394802d84a52fd5b319 |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of trusteed.xyz. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| xyz. | present | 3599, 18130 | 8, 8 | Verified |
| trusteed.xyz. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Inconclusive
We could not reach the endpoint well enough to judge its authorisation posture.
| Result | Inconclusive |
|---|---|
| HTTP status | 410 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=63072000; includeSubDomains; preload |
| content-security-policy | default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self'; connect-src 'self'; frame-ancestors 'none'; base-uri 'none'; form-action 'self' |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(), payment=(), usb=(), magnetometer=(), gyroscope=(), accelerometer=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://trusteed.xyz/demo-store/mcp | HTTP error | 410 | |
| http (plaintext) | http://trusteed.xyz/demo-store/mcp | HTTPS enforced | 301 | https://trusteed.xyz/demo-store/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
apply_discount ~298
Apply a discount or promo code to the cart. Checkout guide: read the MCP resource trusteed://guides/checkout. CREDENTIAL: this store needs one. Call the `create_sandbox_key` tool first (it is in this tool list and needs no credential), then pass the key you get back as the `agent_key` argument — or as an `Authorization: Bearer` header if your client can set headers. Do not ask a person to log in: there is no human login for this store.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| cart_id | string | yes | Cart session ID |
| discount_code | string | – | Discount or promo code to apply (required unless source is ucp_identity) |
| idempotency_key | string | – | REQUIRED for this write unless sent as the `Idempotency-Key` header or `params._meta["trusteed/idempotency-key"]`. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same opera… |
| identity_token | string | – | UCP identity bearer token (required when source is ucp_identity). |
| source | string | – | Set to 'ucp_identity' to apply a loyalty discount derived from a UCP identity token instead of a promo code. |
| Name | Type | Req | Description |
|---|---|---|---|
| cart_id | string | yes | – |
| currency | string | yes | – |
| discount_cents | number | yes | – |
| discount_code | string | yes | – |
| new_total_cents | number | yes | – |
No examples provided.
browse_categories ~19
List all product categories in Demo Store with product counts.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
compare_products ~45
Compare 2 to 5 products side-by-side with normalized attribute table and best-value recommendation.
| Name | Type | Req | Description |
|---|---|---|---|
| product_ids | array | yes | Array of product IDs to compare (2-5) |
No output schema declared.
No examples provided.
complete_checkout ~1,472
Complete the purchase. Provide buyer.name and buyer.email from the conversation before opening approval; ask in chat if either is missing. The approval page only reviews these details. PREFER THE CART CARD: if there is an interactive card for this cart, let the buyer confirm and (when the store offers a choice) pick the payment method there — including retrying after a declined payment or switching method — instead of calling this tool yourself. Each call you make here opens a new card in the transcript instead of updating the one already open. Only call it yourself when there is no interactive card or the buyer explicitly asks you to complete it in chat. Idempotent — replay is keyed on checkout_session_id: any retry against a session that already has an order returns that same order (COMPLETED or PENDING_EXTERNAL_CONFIRMATION) without re-charging. The provided idempotency_key is recorded on the session for audit and short-circuits a repeated call with the same key. If the response has status PENDING_EXTERNAL_CONFIRMATION, no purchase has completed yet: read `order_placed` and `next_action` — a person has to approve or pay at its `url`; `next_action` says whether calling again with the same checkout_session_id and idempotency_key can read the outcome. KYAPAY (payment_method=KYAPAY or a kyapay_token): charging with KYApay is not available. KYApay is identity verification here, not a payment rail, so the call is rejected with PAYMENT_METHOD_NOT_CONFIGURED before anything is charged or written; use another payment method. The Skyfire KYA token serves identity on the REST API, not payment in this tool. On demo-store the approval step records a confirmation but does not verify that a human gave it. PAYMENT MANDATE: this tool also requires one, issued by the platform, not written by you. Call `preview_checkout` for this cart, open the `approval_url` it returns, poll `approval_status_url` with your agent credential, and send the mandate you receive as the `payment_mandat…
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| buyer | object | – | Optional buyer contact information |
| cel_context | object | – | Optional. Send only evidence you can substantiate; it can only make a check stricter, never looser. Unknown keys or out-of-range values are rejected with INVALID_ARGUMENT. Keys: key_age_hours, reques… |
| checkout_session_id | string | yes | Checkout session ID from preview_checkout — the same value as create_cart's cart_id (must be a valid UUID) |
| idempotency_key | string | yes | REQUIRED as an argument in this tool: the `Idempotency-Key` header or `_meta` alone is not enough. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same operation. |
| kyapay_token | string | – | Not available for payment: charging with KYApay is switched off, because KYApay is identity verification here, not a payment rail. A call that passes this token is rejected with PAYMENT_METHOD_NOT_CO… |
| payment_mandate | – | – | Payment mandate issued by the platform for this cart: the compact JWS you receive after the approval opened by `preview_checkout` is granted (its `exp` is Unix seconds and `aud` is this store's slug)… |
| payment_method | string | – | Payment method to use. PAYPAL creates a PayPal order and presents approval URL. KYAPAY is not available for payment: KYApay is identity verification here, so a request with KYAPAY is rejected without… |
| payment_option | string | – | Payment method THE PERSON chose, when preview_checkout returned payment_options. Ask the person; never choose for them. Card numbers and wallet keys are never sent here: the person approves (and, wit… |
| reconfirmed_state_hash | string | – | SHA-256 of the authoritative merchant state, as returned in details.reconfirm_state_hash by a previous STATE_RECONFIRMATION_REQUIRED error. Required to proceed when the merchant state moved after the… |
| save_payment_method | boolean | – | Only with PayPal at a store that charges into its own PayPal account, for a signed-in buyer (not guest access), and only when the person asked for it: true asks PayPal to save this PayPal account dur… |
| shared_payment_token | string | – | Stripe Shared Payment Token (spt_…) granted by the buyer's agent wallet for payment_method=ACP. Issued by Stripe, scoped to this merchant, amount and currency, and consumed when used: it can be charg… |
| Name | Type | Req | Description |
|---|---|---|---|
| approval_url | string | – | – |
| checkout_session_id | string | yes | – |
| currency | string | yes | – |
| details | object | – | – |
| external_order_id | string | – | – |
| funding_source | string | – | – |
| idempotent | boolean | yes | – |
| money_moves | boolean | – | – |
| next_action | object | – | – |
| order_id | string | yes | – |
| order_placed | boolean | – | – |
| payment_captured | boolean | – | – |
| payment_method | string | – | – |
| payment_url | string | – | – |
| shipping_authoritative | boolean | – | – |
| shipping_source | string | – | – |
| status | string | yes | – |
| store_name | string | yes | – |
| test_funds | boolean | – | – |
| total_cents | number | yes | – |
No examples provided.
create_cart ~460
Create a shopping cart in Demo Store. Returns a cart_id. Pass it as cart_id to get_shipping_rates, select_shipping_option, apply_discount and preview_checkout; complete_checkout and get_trust_receipt take the same value as checkout_session_id. KYA IDENTITY: a Skyfire kya token has no effect on this tool (it grants no trust boost here); KYA identity applies to the REST agent API (`Authorization: Bearer`), not to the MCP tools. Checkout guide: read the MCP resource trusteed://guides/checkout. CREDENTIAL: this store needs one. Call the `create_sandbox_key` tool first (it is in this tool list and needs no credential), then pass the key you get back as the `agent_key` argument — or as an `Authorization: Bearer` header if your client can set headers. Do not ask a person to log in: there is no human login for this store.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| agent_session_id | string | – | Opaque agent session identifier for cart resume across sessions |
| agent_token | string | – | JWS compact (EdDSA/Ed25519) signed by the agent. Required for Shopify enforcement rules R001/R002/R004. A malformed token fails with AGENT_TOKEN_INVALID on any platform. On Shopify stores Trusteed al… |
| display_context | string | – | Agent display capability: webview (browser) or headless |
| idempotency_key | string | – | REQUIRED for this write unless sent as the `Idempotency-Key` header or `params._meta["trusteed/idempotency-key"]`. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same opera… |
| items | array | yes | Items to add to cart |
| Name | Type | Req | Description |
|---|---|---|---|
| agent_session_id | string | yes | – |
| cart_id | string | yes | – |
| currency | string | yes | – |
| display_context | string | yes | – |
| expires_at | string | – | ISO-8601 UTC instant at which this checkout SESSION stops being usable. It is not a stock reservation and not a price guarantee. |
| expires_in_seconds | integer | – | Whole seconds left on this checkout SESSION at response time (0 when already past). It is not a stock reservation and not a price guarantee. |
| items | array | yes | – |
| next_step | string | yes | – |
| session_state | string | yes | – |
| status | string | yes | – |
| store_name | string | yes | – |
| subtotal_cents | number | yes | – |
No examples provided.
create_sandbox_key ~84
Get a temporary sandbox credential for this demo store, valid 24h. Present it as an `Authorization: Bearer` header, or — when your client cannot set headers — as the `agent_key` argument of the checkout tools. Payments here are simulated: this credential settles nothing and works only on the demo store. No human login is involved at any point.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_checkout_state ~153
Read the current state of a cart created with create_cart: status, lines, totals, selected shipping, when it was previewed, its order if one exists and a pointer to get_trust_receipt. Read-only: it changes nothing and does not open any approval. Use it to resume a purchase; for UCP checkouts use ucp_get_checkout. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| cart_id | string | yes | The cart id returned by create_cart (the checkout session id, a valid UUID). |
No output schema declared.
No examples provided.
get_merchant_profile ~83
Get the complete profile — trust score, policies, compliance, and protocol support — of the merchant this MCP endpoint belongs to. Takes NO parameters: the merchant is fixed by which store's /:storeSlug/mcp endpoint you connected to, not by an argument. To read a different merchant's profile, call this same tool on that merchant's own endpoint instead.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| acpFeedUrl | string | yes | – |
| agentPolicySummary | object | yes | – |
| compliance | object | yes | – |
| discovery | object | yes | – |
| enrichedCatalogEnabled | boolean | yes | – |
| identity | object | yes | – |
| identityLinkingEnabled | boolean | yes | – |
| identityProviderType | string|null | yes | – |
| manifest_hash | string | yes | – |
| manifest_jws | string|null | yes | – |
| manifest_signed_at | string|null | yes | – |
| policies | object | yes | – |
| protocolScopeNote | string | yes | – |
| protocols | object | yes | – |
| store | object | yes | – |
| supportedProtocols | array | yes | – |
| trust | object | yes | – |
No examples provided.
get_page_content ~157
Get a SUMMARY of a specific page on Trusteed: its title, description, keywords, related tools and the link to the full page. It returns a summary, not the full page text: read the linked URL when the whole page is needed. `content_scope` says what came back. Pass the page slug (e.g. 'for-agents', 'pricing', 'blog') or a blog post slug (returns its excerpt). Use get_site_map first to discover available slugs. Pass page='blog' to list all blog posts.
| Name | Type | Req | Description |
|---|---|---|---|
| page | string | yes | Page slug (e.g. 'for-agents', 'pricing', 'trust') or blog post slug. Use 'blog' to list all blog posts. |
No output schema declared.
No examples provided.
get_product_details ~70
Get detailed information about a specific product in Demo Store, including all variants, sizes, colors, and availability.
| Name | Type | Req | Description |
|---|---|---|---|
| product_id | string | yes | Product ID — use the `id` field returned by search_products or nlweb_ask (e.g. 'prod-001'). Do not invent IDs. |
| Name | Type | Req | Description |
|---|---|---|---|
| attributes | object | – | – |
| average_rating | number|null | – | – |
| categories | array | – | – |
| compare_at_price | number|null | – | – |
| currency | string | – | – |
| error | string | – | – |
| id | string | – | – |
| image_url | string|null | – | – |
| jsonLd | object | – | – |
| message | string | – | – |
| price | number | – | – |
| product_id | string | – | – |
| rating_provenance | – | – | – |
| review_count | number|null | – | – |
| stock_status | string | – | – |
| tags | array | – | – |
| title | string | – | – |
| url | string | – | – |
| variants | array | – | – |
| vendor | string|null | – | – |
No examples provided.
get_shipping_rates ~317
Get available shipping rates for the cart. Requires shipping_address — pass it in the call. If the buyer requests the cheapest option, use cheapest_shipping_handle when non-null; it is null when rates cannot be compared in the cart currency. Rates marked authoritative=false are estimates, not the final charge. PREFER THE CART CARD: if create_cart returned an interactive card (the buyer can see and click it), let them enter the address and pick shipping there instead of calling this tool yourself — each top-level call you make here opens a new card in the transcript instead of updating the one already open. Only call it yourself when there is no interactive card (text-only client) or the buyer explicitly asks you to handle it in chat. Checkout guide: read the MCP resource trusteed://guides/checkout. CREDENTIAL: this store needs one. Call the `create_sandbox_key` tool first (it is in this tool list and needs no credential), then pass the key you get back as the `agent_key` argument — or as an `Authorization: Bearer` header if your client can set headers. Do not ask a person to log in: there is no human login for this store.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| cart_id | string | yes | Cart session ID returned by create_cart |
| shipping_address | object | – | Destination address. Required: this tool does not prompt for it. |
| Name | Type | Req | Description |
|---|---|---|---|
| address_city | string | – | – |
| address_country | string | – | – |
| cart_id | string | yes | – |
| cheapest_shipping_handle | string|null | yes | – |
| rates | array | yes | – |
No examples provided.
get_site_map ~78
Returns the complete site map of Trusteed: all public pages organized by category. Use this to discover what sections are available (docs, blog, integrations, legal, marketing) and find the right path before calling get_page_content.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter pages by category: commerce, docs, legal, blog, marketing, integrations |
No output schema declared.
No examples provided.
get_store_trust ~83
Get Demo Store's signed trust score (v4.1, 0-100) with per-signal data quality, confidence level, and a detached JWS for offline verification. Don't trust the number — verify it: download the JWKS at jwks_snapshot_uri, validate jws_compact with signing_kid, and recompute payload_hash_sha256.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | yes | – |
| breakdown | – | yes | – |
| confidence_interval | – | yes | – |
| confidence_level | string|null | yes | – |
| issued_at | string|null | yes | – |
| recommended_action | – | yes | – |
| score | number|null | yes | – |
| scoring_version | string|null | yes | – |
| signature | – | yes | – |
| store_slug | string | yes | – |
No examples provided.
get_trust_receipt ~341
Retrieve the signed trust receipt for a checkout. A receipt records the complete_checkout call; read `order_placed` before telling anyone a purchase happened. Returns the receipt id, the JWS signature and how to verify it. Issuance is asynchronous: right after complete_checkout this may answer `status: "pending"` with a retry delay. `pending` with code `receipt_pending` means the purchase completed and the receipt is on its way; `checkout_in_progress` means the complete_checkout call is still running. Only the credential that made the purchase can read its receipt. A receipt attests that the call happened, not that money moved: read `settlement` (it is `not_attested` unless the payment rail confirmed it). PREFER THE CART CARD: if the purchase was completed on an interactive card, it already fetches and shows this receipt itself right after the order — calling this tool yourself right after is usually redundant and opens a new card in the transcript. Call it yourself only when there is no interactive card, or the buyer asks for the receipt later in a new turn. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| checkout_session_id | string | – | The checkout session id returned by create_cart and echoed by complete_checkout. Provide this or order_id. |
| order_id | string | – | The order id of a completed purchase, when you have the order but not the checkout session. Provide this or checkout_session_id. |
| Name | Type | Req | Description |
|---|---|---|---|
| call_id | string | – | – |
| checkout_status | string | – | – |
| code | string | – | – |
| dimensions | object | – | – |
| docs | string | – | – |
| does_not_attest | array | – | – |
| issued_at | string | – | – |
| jws | string | – | – |
| message | string | – | – |
| order_id | string | – | – |
| order_placed | boolean | – | – |
| receipt_id | string | – | – |
| retry_after_seconds | number | – | – |
| signature_status | string | – | – |
| status | string | yes | – |
| verify_url | string | – | – |
| verify_with | string | – | – |
No examples provided.
preview_checkout ~334
Preview the complete order summary before payment. Advances the session to ready-for-payment state. If you only need the price, call quote_checkout instead: it computes the same total without advancing the session or opening an approval. PREFER THE CART CARD: if there is an interactive card for this cart, let it compute and show the summary instead of calling this tool yourself — it keeps the flow in one card. Checkout guide: read the MCP resource trusteed://guides/checkout. CREDENTIAL: this store needs one. Call the `create_sandbox_key` tool first (it is in this tool list and needs no credential), then pass the key you get back as the `agent_key` argument — or as an `Authorization: Bearer` header if your client can set headers. Do not ask a person to log in: there is no human login for this store.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| cart_id | string | yes | Cart session ID returned by create_cart |
| payment_mandate | – | – | Payment mandate issued by the platform for this cart: the compact JWS you receive after the approval opened by `preview_checkout` is granted (its `exp` is Unix seconds and `aud` is this store's slug)… |
| Name | Type | Req | Description |
|---|---|---|---|
| approval_id | string | – | – |
| approval_status_url | string | – | – |
| approval_url | string | – | – |
| checkout_session_id | string | yes | – |
| currency | string | yes | – |
| discount_cents | number | yes | – |
| expires_at | string | – | – |
| expires_in_seconds | integer | – | Whole seconds left on this checkout SESSION at response time (0 when already past). It is not a stock reservation and not a price guarantee. |
| items | array | yes | – |
| next_step | string | – | – |
| next_step_message | string | – | – |
| payment_options | array | – | – |
| shipping_authoritative | boolean | – | – |
| shipping_cents | number | yes | – |
| shipping_source | string | – | – |
| shipping_title | string | – | – |
| status | string | yes | – |
| store_name | string | yes | – |
| subtotal_cents | number | yes | – |
| tax_cents | number | yes | – |
| tax_status | string | yes | – |
| total_cents | number | yes | – |
| total_is_final | boolean | yes | – |
| total_note | string | yes | – |
No examples provided.
quote_checkout ~182
Read-only price quote. Does not advance the session, open approvals or enable payment. To pay, call preview_checkout. Computes the same totals as preview_checkout for this cart (subtotal, shipping, discount, tax status, total_is_final), with status QUOTE_ONLY, but not the same checks: it does not check your payment mandate's spending cap; preview_checkout does. Read-only on Trusteed's side: where the store prices orders on its own platform (WooCommerce), the store builds a temporary cart to compute the quote and discards it. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| cart_id | string | yes | Cart session ID returned by create_cart |
No output schema declared.
No examples provided.
search_docs ~155
Full-text search across all Trusteed public documentation: pages, blog posts, FAQ entries, error codes, the agent checkout guide, and the tools of this endpoint. Returns ranked results by relevance. Use this to find answers about protocols, pricing, integration guides, trust scores, and more.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of results (1-20, default 10) |
| query | string | yes | Search query, e.g. 'trust score threshold', 'shopify integration', 'rate limits' |
| type | string | – | Filter results by type: page, blog, faq, error (error codes), guide (checkout guide sections) or tool (tools served by this endpoint). Omit to search all types. |
No output schema declared.
No examples provided.
search_products ~372
Search products in Demo Store. Returns matching products with prices, images, availability, and direct links. Results include data for generating a visual product carousel artifact with category filtering.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter by category slug |
| compact | boolean | – | When true, the same products are described only once instead of twice. `structuredContent.products` stays the full typed record — every field, every product, untouched — but the text reply becomes a… |
| cursor | string | – | Opaque pagination cursor from next_cursor of a previous response. Only valid for the SAME query, category, price range and sort_by — a cursor replayed against different filters is rejected, not silen… |
| field_mask | array | – | Return only these product fields, to spend less of your context on a large catalogue. `id` is always included. Supplying a mask also drops the carousel/UI payloads, which are the bulk of a full respo… |
| limit | integer | – | Number of results (1-50) |
| max_price | number | – | Maximum price filter |
| min_price | number | – | Minimum price filter |
| query | string | – | Search query (e.g. 'red sneakers', 'winter jacket'). Omit to list all products. |
| sort_by | string | – | Sort order for results |
| Name | Type | Req | Description |
|---|---|---|---|
| has_more | boolean | – | – |
| next_cursor | string | – | – |
| products | array | yes | – |
| query | string | – | – |
| sort_provenance_warning | string | – | – |
| store_environment | string | – | – |
| total | number | yes | – |
No examples provided.
search_products_enriched ~146
Search products with enriched data including structured attributes, variants, GTIN, and images. Ideal for comparison and detailed product discovery. Matching is keyword/substring-based (title, description, tags, vendor) with rating-then-review ordering — the rating and review count it orders by are asserted by the merchant and are not verified by Trusteed. Use this when you have concrete keywords, a category, or a price range.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter by category |
| limit | integer | – | Max results (1-20) |
| max_price | number | – | Maximum price |
| min_price | number | – | Minimum price |
| query | string | yes | Search query |
| Name | Type | Req | Description |
|---|---|---|---|
| products | array | yes | – |
| query | string | yes | – |
| sort_provenance_warning | string | yes | – |
| total | number | yes | – |
No examples provided.
select_shipping_option ~318
Select a shipping method for the cart. Must call get_shipping_rates first and provide idempotency_key. Reuse the same key for retries of the same cart and option; use a new key if either changes. PREFER THE CART CARD: if there is an interactive card for this cart, let the buyer pick shipping there instead of calling this tool yourself — it keeps the flow in one card instead of opening a new one per step. Checkout guide: read the MCP resource trusteed://guides/checkout. CREDENTIAL: this store needs one. Call the `create_sandbox_key` tool first (it is in this tool list and needs no credential), then pass the key you get back as the `agent_key` argument — or as an `Authorization: Bearer` header if your client can set headers. Do not ask a person to log in: there is no human login for this store.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| cart_id | string | yes | Cart session ID |
| idempotency_key | string | – | REQUIRED for this write unless sent as the `Idempotency-Key` header or `params._meta["trusteed/idempotency-key"]`. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same opera… |
| shipping_handle | string | yes | Shipping method handle from get_shipping_rates |
| Name | Type | Req | Description |
|---|---|---|---|
| cart_id | string | yes | – |
| currency | string | yes | – |
| selected_handle | string | yes | – |
| selected_title | string | yes | – |
| shipping_authoritative | boolean | yes | – |
| shipping_cents | number | yes | – |
| shipping_source | string | yes | – |
| subtotal_cents | number | yes | – |
| total_cents | number | yes | – |
No examples provided.
ucp_cancel_checkout ~211
Cancel a UCP checkout session. Transitions to 'canceled' status. Cannot cancel already completed checkouts. Use ONLY for a checkout session created with ucp_create_checkout (Universal Commerce Protocol); for the standard flow (create_cart, preview_checkout, complete_checkout) do not call this tool. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| checkout_id | string | yes | UCP checkout session ID (valid UUID) |
| idempotency_key | string | – | REQUIRED for this write unless sent as the `Idempotency-Key` header or `params._meta["trusteed/idempotency-key"]`. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same opera… |
| reason | string | – | Optional cancellation reason |
No output schema declared.
No examples provided.
ucp_complete_checkout ~683
Complete a UCP checkout session. Transitions to 'completed' status. Idempotent — safe to retry with the same idempotency_key. Use ONLY for a checkout session created with ucp_create_checkout (Universal Commerce Protocol); for the standard flow (create_cart, preview_checkout, complete_checkout) do not call this tool. For a cart built with create_cart use complete_checkout. PAYMENT MANDATE: this tool also requires one, issued by the platform, not written by you. Call `preview_checkout` for this cart, open the `approval_url` it returns, poll `approval_status_url` with your agent credential, and send the mandate you receive as the `payment_mandate` argument or an `X-Payment-Mandate` header. The approval is bound to your agent credential and the cart; it does not verify that a person was present. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| ap2 | object | – | AP2 mandates extension. Required when the checkout carries ap2.merchant_authorization. |
| buyer | object | – | Buyer name and email, needed to request the approval link. |
| checkout_id | string | yes | UCP checkout session ID (valid UUID) |
| idempotency_key | string | yes | REQUIRED as an argument in this tool: the `Idempotency-Key` header or `_meta` alone is not enough. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same operation. |
| meta | – | – | UCP request metadata. meta['ucp-agent'].profile = URL of the platform profile; it must be an https URL without credentials (at most 2048 characters). |
| payment | object | – | UCP payment. With AP2, the Payment Mandate goes in instruments[].credential.token. |
| payment_handler | string | – | Payment handler the store profile publishes. Omit for default. |
| payment_mandate | – | – | Payment mandate issued by the platform for this cart: the compact JWS you receive after the approval opened by `preview_checkout` is granted (its `exp` is Unix seconds and `aud` is this store's slug)… |
| payment_option | string | – | Payment method THE PERSON chose, when preview_checkout returned payment_options. Ask the person; never choose for them. Card numbers and wallet keys are never sent here: the person approves (and, wit… |
| shared_payment_token | string | – | Stripe Shared Payment Token (spt_…) granted by the buyer's agent wallet for payment_method=ACP. Issued by Stripe, scoped to this merchant, amount and currency, and consumed when used: it can be charg… |
| x402_payload | – | – | x402: signed payment for the server offer (omit to get it). |
No output schema declared.
No examples provided.
ucp_create_checkout ~291
Create a UCP (Universal Commerce Protocol) checkout session from line items. Returns a UCP checkout object with status 'incomplete'. Starts the UCP flow (ucp_* tools); for the standard flow use create_cart instead. Do not mix the two flows on the same purchase. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| currency | string | yes | ISO 4217 currency code (e.g. USD) |
| idempotency_key | string | – | REQUIRED for this write unless sent as the `Idempotency-Key` header or `params._meta["trusteed/idempotency-key"]`. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same opera… |
| intent | object | – | Intent context for relevance and personalization |
| label | string | – | Optional label for additional identifiers (e.g. external order ref, multi-PSP reference) |
| line_items | array | yes | Line items for the checkout |
| meta | – | – | UCP request metadata. meta['ucp-agent'].profile = URL of the platform profile; it must be an https URL without credentials (at most 2048 characters). |
No output schema declared.
No examples provided.
ucp_get_checkout ~166
Retrieve a UCP checkout session by ID. Returns the current state of the checkout. Use ONLY for a checkout session created with ucp_create_checkout (Universal Commerce Protocol); for the standard flow (create_cart, preview_checkout, complete_checkout) do not call this tool. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| checkout_id | string | yes | UCP checkout session ID (valid UUID) |
| meta | – | – | UCP request metadata. meta['ucp-agent'].profile = URL of the platform profile; it must be an https URL without credentials (at most 2048 characters). |
No output schema declared.
No examples provided.
ucp_preview_checkout ~254
Preview a UCP checkout and move it to ready-for-payment. Call after destination and shipping are set, before ucp_complete_checkout. Use ONLY for a checkout created with ucp_create_checkout. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| checkout_id | string | yes | UCP checkout session ID (valid UUID) |
| meta | – | – | UCP request metadata. meta['ucp-agent'].profile = URL of the platform profile; it must be an https URL without credentials (at most 2048 characters). |
| payment_mandate | – | – | Payment mandate issued by the platform for this cart: the compact JWS you receive after the approval opened by `preview_checkout` is granted (its `exp` is Unix seconds and `aud` is this store's slug)… |
No output schema declared.
No examples provided.
ucp_update_checkout ~347
Update a UCP checkout session. Send line_items to replace all lines (each line may name a variant_id), and/or fulfillment to set the delivery address (fulfillment.destination, which returns the shipping options) and choose one (fulfillment.selected_option_id, which adds shipping to the totals). Only allowed when status is 'incomplete'. Use ONLY for sessions created with ucp_create_checkout; for the standard flow use create_cart and select_shipping_option. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| checkout_id | string | yes | UCP checkout session ID (valid UUID) |
| currency | string | – | ISO 4217 currency code (e.g. USD). Optional: defaults to the checkout's currency. |
| fulfillment | object | – | Delivery. Send destination first, then selected_option_id (or both in one call). |
| idempotency_key | string | – | REQUIRED for this write unless sent as the `Idempotency-Key` header or `params._meta["trusteed/idempotency-key"]`. 1-128 chars from [A-Za-z0-9._:/-]. Reuse the same value when retrying the same opera… |
| line_items | array | – | Replacement line items (replaces all lines). Omit to leave the lines as they are. |
| meta | – | – | UCP request metadata. meta['ucp-agent'].profile = URL of the platform profile; it must be an https URL without credentials (at most 2048 characters). |
No output schema declared.
No examples provided.
verify_trust_receipt ~188
Check a trust receipt's signature, revocation and chain coverage from inside this session (v1.0 receipts only; other profiles answer `unsupported_profile`, not invalid). LIMIT: the issuer verifies its own receipt (`verified_by: issuer`, `independent: false`), so this is a consistency check, not proof to a third party; `independent_verification` tells you how to verify it yourself against the public JWKS. Pass the `jws` from get_trust_receipt. Checkout guide: read the MCP resource trusteed://guides/checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_key | string | – | Sandbox credential from `create_sandbox_key`. Use this when your client cannot set an `Authorization: Bearer` header. |
| jws | string | yes | The compact JWS of the receipt (the `jws` field returned by get_trust_receipt). |
No output schema declared.
No examples provided.
How do I install the xyz.trusteed/mcp-gateway server?
xyz.trusteed/mcp-gateway is a hosted endpoint at https://trusteed.xyz/demo-store/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · trusteed.xyz
claude mcp add --transport http xyz-trusteed-mcp-gateway 'https://trusteed.xyz/demo-store/mcp'
What is the xyz.trusteed/mcp-gateway server?
xyz.trusteed/mcp-gateway is listed in the public MCP registry as xyz.trusteed/mcp-gateway. Agentic commerce gateway: discovery, search, checkout across Shopify/Woo/Odoo/PrestaShop. This page covers its hosted endpoint (https://trusteed.xyz/demo-store/mcp).
Is the xyz.trusteed/mcp-gateway server safe to use?
xyz.trusteed/mcp-gateway scores 25 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the xyz.trusteed/mcp-gateway server expose?
xyz.trusteed/mcp-gateway exposes 27 tools: search_products_enriched, search_products, get_product_details, browse_categories, create_cart, and 22 more. Their descriptions and schemas cost roughly 7,307 tokens of context every time the server is loaded.
Does the xyz.trusteed/mcp-gateway server require authentication?
Its publisher declares no required credentials for xyz.trusteed/mcp-gateway. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.
Is the xyz.trusteed/mcp-gateway server still maintained?
xyz.trusteed/mcp-gateway is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.