关于 Prism — Crossdeck
Prism 是只读 MCP 服务,可查询 Crossdeck 中的收入、错误、分析、数据库读取成本和客户身份数据,并按客户关联这些层面。它还可在兼容客户端中呈现交互式图表和仪表板。
主要功能
- 01跨层查询客户与收入
- 02收入、错误和分析报告
- 03数据库读取成本拆分
- 04交互式图表与仪表板
- 05受限的实时只读数据访问
适用场景
- 01找出受错误影响的付费客户
- 02查看 MRR 和支付渠道拆分
- 03追踪客户收入、权益与读取成本
- 04绘制访客和页面浏览趋势
MCP 相关
Prism 通过远程 OAuth 和本地 stdio MCP 连接提供 Crossdeck 项目数据。工具均为只读;图表和仪表板可在兼容 MCP Apps 的客户端中呈现。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://api.cross-deck.com/mcpclaude mcp add --transport http com-cross-deck-prism https://api.cross-deck.com/mcp{"mcpServers":{"com-cross-deck-prism":{"type":"http","url":"https://api.cross-deck.com/mcp"}}}在 Cursor 中打开{"servers":{"com-cross-deck-prism":{"type":"http","url":"https://api.cross-deck.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-cross-deck-prism":{"type":"http","url":"https://api.cross-deck.com/mcp"}}}{"mcpServers":{"com-cross-deck-prism":{"serverUrl":"https://api.cross-deck.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
Prism — Crossdeck 面向 AI 的智能层
用通俗英语询问应用中的任何信息——收入、错误、数据库读取成本、增长——即可获得绘制好的图表和仪表盘。
“这次崩溃影响了哪位付费客户?有多少收入面临风险?”——一个问题,就能跨错误、身份和收入层面得到解答。单层工具做不到这一点。
Prism 有何不同
大多数 MCP 服务都只是连接到一个系统。Prism 是覆盖整个应用的智能层——因为 Crossdeck 已将与你的用户相关的各个层面(身份 · 收入 · 权益 · 错误 · 分析 · 数据库读取成本)按身份关联起来,形成统一的真实数据源。
重点不是“让 AI 读取我的数据”,而是跨层关联:一个问题可以跨越其他工具无法关联的层面——
“这个错误
a1b2c3影响了谁?其中有多少人付费?” → 找出崩溃影响到的付费用户,并列出每位用户面临风险的月收入,按风险金额排序。
这正是我们的护城河。Prism 让你能在 Claude、ChatGPT、Cursor 或任何 MCP 客户端中,以自然语言提出问题。
权限与数据访问
安全、只读地访问你的实时 Crossdeck 工作区。 Prism 只读取数据,从不写入。
Prism 可以查看(Crossdeck 已掌握的应用数据层面):
| 💷 收入 | MRR、付费客户数量、各支付渠道的收入明细 |
| 🐛 错误 | 问题、影响范围、受影响对象 |
| 📈 分析 | 按主机统计的页面浏览量、独立访客数、热门页面/引荐来源 |
| 🗄️ 读取成本 | 按操作统计的用户读取与开销读取 |
| 🧭 客户旅程 | 单个客户的跨层视图(付费 × 权益 × 成本) |
只有在连接明确获准访问相应范围时,才会返回客户身份的行级数据;否则 Prism 会根据汇总数据作答,并说明这一点。此访问边界由 Crossdeck 强制执行,而不是交由模型决定。
Prism 无法在你的项目中创建、修改、删除或配置任何内容。它没有写入路径——所有工具都为只读(readOnlyHint: true)。如果你要求它更改内容,它会告知你无法执行。
数据会在收到问题时通过受 OAuth 保护的端点实时获取;连接器不存储任何数据。
60 秒内完成连接
远程连接(推荐)——一键 OAuth,无需粘贴密钥
Prism 是托管的、受 OAuth 保护的 MCP 端点:
https://api.cross-deck.com/mcp
在客户端中将其添加为连接器,使用 Crossdeck 账号登录,选择一个项目并批准即可。就是这么简单——客户端会自动获取短期有效、具有指定工作区权限的凭据。
- Claude(网页版 / 桌面版): Settings → Connectors → Add custom connector → 粘贴上方 URL。
- ChatGPT: Settings → Connectors → Add → 粘贴该 URL。
- Cursor: Settings → MCP → Add → 粘贴该 URL。
或者打开你的控制面板,前往 app.cross-deck.com → Developers → Prism → Connect AI,一键选择“Add to Claude / ChatGPT / Cursor”。
本地(Claude Desktop / Cursor / Claude Code)— stdio + 密钥
无需安装步骤 — npx 会在每次启动时获取软件包及其依赖项,因此可以自我修复并保持最新(本地不会有过时内容):
{
"mcpServers": {
"crossdeck": {
"command": "npx",
"args": ["-y", "@cross-deck/ai"],
"env": { "CROSSDECK_SECRET_KEY": "cd_sk_live_…" }
}
}
}
请使用从控制面板 → API 密钥获取的密钥(cd_sk_),切勿使用可发布密钥(cd_pub_)。CROSSDECK_API_BASE 可用于覆盖端点(例如沙盒环境)。
如果连接器显示“failed”/“Server disconnected”,有两个已知原因,且都可以修复:
spawn npx ENOENT/ 找不到命令。 桌面客户端启动时使用的 PATH 通常很精简,常常不包含你的 Node 二进制文件路径(使用nvm时很常见)。解决方法:将npx的绝对路径用作command— 运行which npx并粘贴完整路径(例如/Users/you/.nvm/versions/node/vX/bin/npx)。ERR_MODULE_NOT_FOUND … @modelcontextprotocol/sdk。 只有当args指向手动构建的本地检出版本(…/dist/server.js)时才会出现 — 该目录的node_modules可能会被清理掉(例如/tmp下的任何内容)。解决方法:切勿指向本地构建版本。 使用上面的npx -y @cross-deck/ai解析已发布的软件包,确保其依赖项始终存在。最简单的方法:使用本节顶部的远程连接器 — 它完全不运行本地 Node,因此不会出现上述两种故障。
请先试试这些
| 提问 | 工具 | 返回内容 |
|---|---|---|
| “我们的 MRR 和付费客户数量是多少,按 Stripe/Apple/Google 拆分?” | get_revenue | MRR、付费客户数量、三种渠道拆分,以及可选的每日趋势 |
“这个错误 a1b2c3 影响了哪些人?其中有人付费吗?” | get_error_affected_users | 崩溃背后具名的付费用户,以及每位用户面临风险的月收入 |
“显示客户 agent_8842 的所有信息。” | open_moat_dashboard | 一个渲染好的仪表板:他们的付费金额 × 权益 × 读取成本,并按身份关联 |
| “绘制过去 30 天的用户增长情况。” | draw_user_growth | 访客数 + 页面浏览量的交互式折线图 |
| “数据库读取量的构成是什么 — 每用户读取与开销分别是多少?” | get_read_cost | 每用户读取与开销的拆分,以及按操作统计的读取量 |
数据工具会返回简洁的 JSON;draw_user_growth 和 open_moat_dashboard 会在支持 MCP Apps 的宿主环境中内嵌渲染交互式图表/仪表板,其他环境则会回退为文本摘要。
工具
共 13 个工具,全部为只读(readOnlyHint),每个工具都有便于理解的 title、范围限定且支持分页的输出,以及可采取操作的错误信息。每次读取都是对维护良好的账本进行点查,因此提问绝不会增加你的数据库账单。
每个数字都自带说明:返回值包含 meta.semantics 说明和 coverage 状态,因此指标会准确反映其实际含义,盲点(not_instrumented)也绝不会被误认为真实的零值。
项目组合
list_projects— 列出此连接器可读取的所有应用(你的项目组合)。get_portfolio— 覆盖范围图:列出每个应用中已埋点的界面和盲点。请先加载,这样后续读到空结果时,就能知道这是已知盲点,而不是事实。use_project— 为后续工具设置当前应用(“切换到 ”)。
收入与成本
get_revenue— MRR、付费客户数、按支付渠道划分的明细(Stripe/Apple/Google),以及可选的每日趋势。get_customers— 客户统计:付费客户数(以及已埋点时的总客户数/活跃客户数)。这是回答“这个应用有多少客户”的权威数据。get_read_cost— 按操作划分的数据库读取成本:用户读取和未归因的开销。
护城河——错误 × 身份 × 收入
get_error_impact— 针对某个错误,统计受影响的不同用户数,以及其中的付费用户数。get_error_affected_users— 错误影响到的具名付费用户,包含每人的月收入和最近一次受影响的时间,并按收入风险排序。仅返回你自己的标识符,不会返回你未提供的电子邮件/姓名。get_customer— 查看 Crossdeck 按身份关联的各层数据中的某位客户:其付费情况 × 有效权益 × 读取成本。
分析
get_host_analytics— 查看你拥有的主机/子域名的页面浏览量和独立访客数(可选每日数据系列)。get_host_top_pages— 查看你拥有的主机上浏览量最高的页面或来源。
渲染的 UI(MCP Apps)
draw_user_growth— 以交互式折线图展示随时间变化的访客数和页面浏览量。open_moat_dashboard— 将客户的跨层数据(付费情况 × 权益 × 读取成本)渲染为卡片式仪表板。
安全性
Prism 基于 Crossdeck 的银行级出站读取主干构建。完整模型请参阅 SECURITY.md。简而言之:
- OAuth 2.1 + PKCE(S256)、动态客户端注册、短时有效(1h)的工作区凭据,并支持刷新令牌轮换和重用检测。不会有长期有效的密钥离开你的仪表板。
- 只读。 每个工具都是
readOnlyHint: true— 不会写入数据,也不会修改配置。 - 范围限定且默认拒绝。 令牌会解析到一个所有者及其自己的项目;令牌缺失或无效时会返回可采取操作的 401 错误,绝不会静默返回数据。
- 仅限你的数据。 Prism 会在令牌限定的范围内读取你自己项目的数据。它不会读取你的对话历史或本地文件,并且只返回你自己的标识符 — 绝不会返回你未提供的个人身份信息(PII)。
已知限制
- v1 版本为只读 — 写入/配置功能将在后续单独设限的阶段推出。
- 主机分析要求该主机是项目的已验证来源。
- 渲染图表需要支持 MCP Apps 的主机;其他主机将收到文本摘要。
- 报告反映的是 Crossdeck 连接后产生的数据(历史数据回填需另行处理)。
链接
- npm: https://www.npmjs.com/package/@cross-deck/ai
- API 参考: https://cross-deck.com/docs/reporting-api/
- 安全主干: https://cross-deck.com/docs/outbound-api-security/
- 隐私: https://cross-deck.com/legal/privacy/
- 支持: [email protected]
许可证
MIT © Crossdeck
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。