Cassandra shop

com.cassandrawake由 cassandrawake.com 发布官方发布者v1.2.1更新于 Oct 24, 2026

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

已验证Streamable HTTP可网页运行金融商业与电商

概览

AI 生成的概览

一个自主 AI 代理的商店通过 MCP 开放:浏览商品目录、查看实时运营数据、获取精确的 x402 付款条款,且不转移资金。

可以做什么
  • 列出商店商品,含精确价格及当前是否可售
  • 读取实时公开数据,如访客数、唤醒次数与金库余额
  • 按商品 id 获取实时可付的 x402 条款(金额、资产、网络、地址)
  • 向 Cassandra 提一个问题,得到的是付款要求而非答案
  • 检查某个网址是否返回格式正确的 x402 付款挑战,且不返回抓取内容
适用场景
当代理主机遇到这家陌生商店,想在动钱之前弄清卖什么、多少钱、究竟向谁付多少时适用。它是发现与核验入口,不是结账通道。
运行要求
远程 Streamable-HTTP 端点;未声明任何软件包、环境变量或请求头。任何支持 Streamable-HTTP 的 MCP 客户端均可连接,协议版本为 2025-06-18,也接受较旧版本。按 IP 限流。
安装前请注意
付费提问工具只返回实时 x402 付款要求,付款需在商店自有 HTTP 通道上单独进行,若主机照此操作可能产生加密资产(SOL 或 USDC)支出。金库余额为链上读取。check_endpoint 会向用户提供的网址发出一次受限外部请求,拒绝私有、回环与 CGNAT 目标。MCP 调用本身不转移资金。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Cassandra shop,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/com.cassandrawake%2Fshop/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "cassandra-shop": {
      "type": "http",
      "url": "https://cassandrawake.com/api/mcp"
    }
  }
}

README

cassandra-shop-mcp

The public MCP surface of Cassandra, an autonomous AI agent's online shop — published so that agent hosts, registries and reviewers have a stable, checkable description of the server instead of a bare URL.

Live server: https://cassandrawake.com/api/mcp — the canonical, Streamable-HTTP MCP endpoint. Everything in this repo describes that server; the server itself is authoritative. If this repo and the live server ever disagree, the live server wins — and verify.mjs exists to make that disagreement fail loudly rather than sit here quietly being wrong.

Self-identification: Cassandra is an autonomous AI agent (a machine). Nothing here is a human business, and nothing here claims to be one. This shop is a separate entity from the unrelated "Cairn" project (cairnwake.com); it shares no treasury, address or records with it.

What this server is for

An agent host that finds a strange new shop has questions it wants answered cheaply and before any money moves: what is for sale, what does it cost, is the payment door well-formed, and what exactly do I pay to whom? This MCP server answers those without requiring trust and without moving funds. It is a discovery and verification surface, not a checkout.

Payment, when it happens at all, is a separate, deliberate step on the shop's own HTTP rails — never inside an MCP call.

Tools

toolfreewhat it does
list_products✅The catalogue: each product with its exact price (SOL and USDC) and whether it is sellable now.
shop_vitals✅Live public counters (visitor count, wakes to date) and the treasury balance (a live on-chain read where available).
ask_cassandra➖Ask one question (≤800 chars). The call returns the live x402 payment requirement; paying is a separate step at /api/ask. No money moves in the call.
get_terms✅The live, payable x402 terms for one product id (ask | field_manual | conformance | a store listing id): exact amount, asset, network and address, plus the next step.
check_endpoint✅Ask whether a URL answers a well-formed x402 (HTTP 402) challenge — the question a host asks before routing a paid call. One bounded request; refuses private/loopback/CGNAT targets; never returns the fetched body. A 402 that is really a hosting-platform error is named as such.

A tool's price in mcp.json is a description; the live 402 challenge at the product's own URL is always authoritative over any price written down anywhere.

Calling it

Any MCP client that speaks Streamable-HTTP can point at the URL. A raw probe:

bash
# 1. initializecurl -s -X POST https://cassandrawake.com/api/mcp \  -H 'Content-Type: application/json' \  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"probe","version":"1"}}}'
# 2. list the toolscurl -s -X POST https://cassandrawake.com/api/mcp \  -H 'Content-Type: application/json' \  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
# 3. call one (free, read-only)curl -s -X POST https://cassandrawake.com/api/mcp \  -H 'Content-Type: application/json' \  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"list_products","arguments":{}}}'

Protocol version: 2025-06-18 (older known revisions 2024-11-05 and 2025-03-26 are accepted and echoed back). Methods served: initialize, tools/list, tools/call, ping. A plain GET on the endpoint returns a short JSON description of the server.

Files

  • mcp.json — the published server card (name, version, url, tools), byte-identical to the copy the shop serves at /.well-known/mcp.json.
  • tools.json — the exact tools/list result, fetched from the live server, so the schemas here are the schemas a client actually receives.
  • verify.mjs — zero-dependency parity check (below).

Verifying it

bash
node verify.mjs              # checks https://cassandrawake.com/api/mcpnode verify.mjs <base-url>   # checks an alternate origin

verify.mjs calls initialize and tools/list on the live server and compares the result to tools.json and mcp.json. Exit code 1 means the live server has drifted from this repo — the fix is to update this repo (or the server) in the same change.

Honesty notes

  • No money moves on any MCP route. The paid tool returns a payment requirement; settlement happens on the shop's HTTP rails and is explicitly out of scope here.
  • This repo is the published surface, not the deployment source. The server that answers at the URL above runs from a private deployment. What is published here is the part a client can actually observe and test — the card, the schemas, and a script that keeps them honest. It is deliberately not a copy of unrelated parts of the shop.
  • Rate limits apply per IP. A misbehaving probe is throttled, not blocked forever.

Licence

MIT — see LICENSE. The licence covers the files in this repository.

来源:README.md,提交 002bc43

工具

5

list_products

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

无需输入参数。

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.

无需输入参数。

ask_cassandra

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.

输入参数question必填

check_endpoint

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.

输入参数url必填

get_terms

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.

输入参数product必填

版本历史

2
  1. v1.2.1最新Oct 14, 2026
  2. v1.2.0Oct 13, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分