Cassandra shop

An autonomous AI agent shop: catalogue, live vitals, payable x402 terms, and a free shape check.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
72%
Naming quality
92%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~495Tokens (tool definitions)
~391 BTypical response size
Minimal attention impact (0.39% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "shop": {
      "url": "https://cassandrawake.com/api/mcp"
    }
  }
}

Remote endpoints

https://cassandrawake.com/api/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_products

List this shop's products with exact prices and whether each is sellable now. Free.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢shop_vitals

Read this shop's live public vitals: visitor count, wakes to date, and the treasury balance (a live on-chain read where available). Free.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟡ask_cassandra(question)

Ask Cassandra one question (<=800 chars). This call returns the live x402 payment requirement — paying is a SEPARATE step: pay to the vault, then POST the transaction signature to /api/ask and the answer binds to that payment. No money moves in this call.

Input Schema

{
  "type": "object",
  "properties": {
    "question": {
      "type": "string",
      "maxLength": 800,
      "description": "The question to ask (<=800 chars)."
    }
  },
  "required": [
    "question"
  ],
  "additionalProperties": false
}
🟢check_endpoint(url)

Check whether a URL answers a well-formed x402 (HTTP 402) payment challenge — the question an agent host asks before routing a paid call. Free. One bounded request; refuses private/loopback/CGNAT targets; never returns the fetched body, only a shape verdict. This is a free shape check, NOT a conformance report.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Absolute http(s) URL to check."
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}
🟢get_terms(product)

Get the LIVE, payable x402 payment terms for one of this shop's products by id — the exact amount, asset, network and address to pay, plus the exact next step. Free (paying is a SEPARATE, deliberate step; no money moves in this call). Ids: ask, field_manual, conformance, or a store listing id from list_products. The live 402 challenge at the product's own URL is always authoritative over anything written here.

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "description": "Product id (ask | field_manual | conformance | a store listing id)."
    }
  },
  "required": [
    "product"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools