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.
Create an order and receive a PayPal payment URL (cards, Google Pay, Apple Pay, Venmo). Nothing is charged here: the URL must be approved by whoever holds the funds. On payment capture the order is forwarded automatically to CJ Dropshipping with USPS last-mile.
Buyer email for the order receipt
Line items to purchase
Order total in USD
Optional multi-payer allocation
Identifier of the requesting agent
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http utopia-megastore https://utopia-orders.precogsecurity.workers.dev/mcp
Create an order and receive a PayPal payment URL (cards, Google Pay, Apple Pay, Venmo). Nothing is charged here: the URL must be approved by whoever holds the funds. On payment capture the order is forwarded automatically to CJ Dropshipping with USPS last-mile.
| Argument | Type | Description |
|---|---|---|
| email* | string | Buyer email for the order receipt |
| items* | array | Line items to purchase |
| split | array | Optional multi-payer allocation |
| total* | number | Order total in USD |
| caller | string | Identifier of the requesting agent |
{
"type": "object",
"required": [
"email",
"items",
"total"
],
"properties": {
"email": {
"type": "string",
"description": "Buyer email for the order receipt"
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"price"
],
"properties": {
"id": {
"type": "string"
},
"qty": {
"type": "integer"
},
"price": {
"type": "number"
},
"cj_vid": {
"type": "string",
"description": "Supplier variant id from list_products"
}
}
},
"description": "Line items to purchase"
},
"split": {
"type": "array",
"items": {
"type": "object",
"properties": {
"email": {
"type": "string"
},
"amount": {
"type": "number"
}
}
},
"description": "Optional multi-payer allocation"
},
"total": {
"type": "number",
"description": "Order total in USD"
},
"caller": {
"type": "string",
"description": "Identifier of the requesting agent"
}
},
"additionalProperties": false
}Return the full catalog: 15 products (id, name, price, bulk discount text, category, image, description, cj_vid) and 4 bundles, plus payment methods and free-shipping threshold.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Propose a target total for a set of items. The server replies with the lowest price it can legally accept; the floor is supplier cost + 12% margin, and matching bundles override per-item pricing.
| Argument | Type | Description |
|---|---|---|
| items* | array | Product ids to negotiate over |
| budget | number | Target total in USD |
| caller | string | Stable identifier for the negotiating agent or buyer email |
{
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "string"
},
"description": "Product ids to negotiate over"
},
"budget": {
"type": "number",
"description": "Target total in USD"
},
"caller": {
"type": "string",
"description": "Stable identifier for the negotiating agent or buyer email"
}
},
"additionalProperties": false
}Fuzzy/semantic product search over the catalog. Returns ranked matches with prices and any bundles that contain a match.
| Argument | Type | Description |
|---|---|---|
| query* | string | What the buyer is looking for, e.g. "charger for laptop" |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "What the buyer is looking for, e.g. \"charger for laptop\""
}
},
"additionalProperties": false
}Given the item ids a buyer wants and an optional budget, return the fixed bundles plus custom cross-subsidised combinations. Each custom entry gives retail, bundle price, savings and a per-line allocation so a multi-party split stays fair.
| Argument | Type | Description |
|---|---|---|
| items | array | Product ids of interest, e.g. ["hi-res-earbuds"] |
| budget | number | Maximum total the buyer will pay in USD |
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "string"
},
"description": "Product ids of interest, e.g. [\"hi-res-earbuds\"]"
},
"budget": {
"type": "number",
"description": "Maximum total the buyer will pay in USD"
}
},
"additionalProperties": false
}Check that a proposed multi-recipient allocation sums exactly to the order total. Returns allocOk plus the discrepancy. Use before create_checkout when several agents share the cost.
| Argument | Type | Description |
|---|---|---|
| items* | array | Line items being purchased |
| split* | array | Each payer and what they owe |
{
"type": "object",
"required": [
"items",
"split"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"qty": {
"type": "integer"
},
"price": {
"type": "number"
}
}
},
"description": "Line items being purchased"
},
"split": {
"type": "array",
"items": {
"type": "object",
"properties": {
"email": {
"type": "string"
},
"amount": {
"type": "number"
},
"recipient": {
"type": "string"
}
}
},
"description": "Each payer and what they owe"
}
},
"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 Nov 8, 2026.