Let your agent open a store, list digital products and share USDC checkout links. Test mode.
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.
Return a link where a buyer can purchase a published product (opens the store with the product selected). Pass the store's agent_key (returned by open_store).
The store's agent key (rpy_…), returned by open_store
Product id from list_products
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http ripey https://ripey.app/mcp
Return a link where a buyer can purchase a published product (opens the store with the product selected). Pass the store's agent_key (returned by open_store).
| Argument | Type | Description |
|---|---|---|
| agent_key* | string | The store's agent key (rpy_…), returned by open_store |
| product_id* | string | Product id from list_products |
{
"type": "object",
"required": [
"agent_key",
"product_id"
],
"properties": {
"agent_key": {
"type": "string",
"description": "The store's agent key (rpy_…), returned by open_store"
},
"product_id": {
"type": "string",
"description": "Product id from list_products"
}
},
"additionalProperties": false
}Create a DRAFT product in the store. Nothing goes live: show the user the draft (name, description, price) and ask them to approve before calling publish. Pass the store's agent_key (returned by open_store).
| Argument | Type | Description |
|---|---|---|
| name* | string | Product name, e.g. 'Inbox Triage' |
| type | string | What kind of product it is |
| agent_key* | string | The store's agent key (rpy_…), returned by open_store |
| price_usd* | number | Price in US dollars, paid in USDC (1 USDC = 1 USD) |
| description* | string | One or two sentences buyers will read |
| delivery_url | string | Optional https link buyers get after paying (file, repo, Notion page, ...) |
{
"type": "object",
"required": [
"agent_key",
"name",
"description",
"price_usd"
],
"properties": {
"name": {
"type": "string",
"description": "Product name, e.g. 'Inbox Triage'"
},
"type": {
"enum": [
"skill",
"workflow",
"template",
"download",
"other"
],
"type": "string",
"description": "What kind of product it is"
},
"agent_key": {
"type": "string",
"description": "The store's agent key (rpy_…), returned by open_store"
},
"price_usd": {
"type": "number",
"maximum": 10000,
"minimum": 1,
"description": "Price in US dollars, paid in USDC (1 USDC = 1 USD)"
},
"description": {
"type": "string",
"description": "One or two sentences buyers will read"
},
"delivery_url": {
"type": "string",
"description": "Optional https link buyers get after paying (file, repo, Notion page, ...)"
}
},
"additionalProperties": false
}List the store's products with their id, price and status (draft or published). Pass the store's agent_key (returned by open_store).
| Argument | Type | Description |
|---|---|---|
| agent_key* | string | The store's agent key (rpy_…), returned by open_store |
{
"type": "object",
"required": [
"agent_key"
],
"properties": {
"agent_key": {
"type": "string",
"description": "The store's agent key (rpy_…), returned by open_store"
}
},
"additionalProperties": false
}Open a new Ripey store for the user. Ask for the store name and the user's email first. Optionally takes the user's Solana wallet address (public address only, never a secret key); in test mode a demo address is used if omitted. Returns the store URL, a private dashboard link, and an agent_key: pass it to the other Ripey tools on this same connection to manage the store.
| Argument | Type | Description |
|---|---|---|
| name* | string | Store name, e.g. 'Atlas Works' |
| email* | string | The store owner's email |
| wallet | string | Optional Solana public address where sales are paid |
{
"type": "object",
"required": [
"name",
"email"
],
"properties": {
"name": {
"type": "string",
"description": "Store name, e.g. 'Atlas Works'"
},
"email": {
"type": "string",
"description": "The store owner's email"
},
"wallet": {
"type": "string",
"description": "Optional Solana public address where sales are paid"
}
},
"additionalProperties": false
}Put an approved draft on the store so buyers can purchase it. Only call this after the user approves the draft. Pass the store's agent_key (returned by open_store).
| Argument | Type | Description |
|---|---|---|
| agent_key* | string | The store's agent key (rpy_…), returned by open_store |
| product_id* | string | Draft id from create_product, e.g. p_1a2b3c |
{
"type": "object",
"required": [
"agent_key",
"product_id"
],
"properties": {
"agent_key": {
"type": "string",
"description": "The store's agent key (rpy_…), returned by open_store"
},
"product_id": {
"type": "string",
"description": "Draft id from create_product, e.g. p_1a2b3c"
}
},
"additionalProperties": false
}Summarize the store's sales over the last N days (default 7): revenue, orders, customers and top products. Pass the store's agent_key (returned by open_store).
| Argument | Type | Description |
|---|---|---|
| days | integer | How many days to look back (1-90) |
| agent_key* | string | The store's agent key (rpy_…), returned by open_store |
{
"type": "object",
"required": [
"agent_key"
],
"properties": {
"days": {
"type": "integer",
"maximum": 90,
"minimum": 1,
"description": "How many days to look back (1-90)"
},
"agent_key": {
"type": "string",
"description": "The store's agent key (rpy_…), returned by open_store"
}
},
"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 2, 2026.