关于 pocketlantern
pocketlantern 是面向编码 Agent 的 MCP 服务,提供带来源链接的决策卡片和时效性阻碍提示。它以内置卡片集进行本地关键词检索,帮助评估技术选型、升级、迁移和许可问题。
主要功能
- 01按关键词搜索决策卡片
- 02提供来源链接的事实和阻碍提示
- 03按约束筛选卡片
- 04查看完整卡片及相关主题
- 05内置覆盖 27 个类别的卡片集
适用场景
- 01比较身份验证供应商及迁移限制
- 02评估框架升级的破坏性变更
- 03核查 API 变更与淘汰时间
- 04根据成本或部署约束筛选技术方案
MCP 相关
作为 MCP 服务,提供 search_cards、get_card 和 get_related_cards 等工具,让客户端检索决策卡片及相关阻碍信息。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
8收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| tags | array | 否 | 仅返回带有这些标签的卡片。使用 list_tags 查看可用值。 |
| limit | integer | 否 | 结果数量上限(默认值:5,最大值:50) |
| query | string | 是 | 自然语言问题或简短主题查询(例如 'auth for serverless'、'database migration')。系统会自动过滤停用词。 |
| constraints | array | 否 | 按环境或运维需求缩小结果范围(AND 逻辑)。可选值:serverless、high-scale、low-ops、cost-sensitive、enterprise、small-team、monorepo、microservices、real-time、compliance。 |
| include_blockers | boolean | 否 | 在每张结果卡片中包含带来源链接的阻碍警告(生命周期终止日期、破坏性变更、锁定、不兼容项,若有)。默认值:true。 |
| include_deprecated | boolean | 否 | 在结果中包含已弃用的卡片(默认值:false)。仅在明确查找过时方案时设为 true。 |
详细介绍
PocketLantern
你的 AI Agent 听起来很有把握,但它漏掉了阻碍因素。
价格会变动,版本会出问题,许可证也会变化。PocketLantern 是面向 AI 编码 Agent 的阻碍因素感知决策层,基于带来源链接且时效敏感的事实。
试试这些查询
安装 PocketLantern 后,向你的 AI Agent 提问:
“应该选哪个身份验证提供商——Clerk、Auth0 还是 Cognito?”
⚠️ Cognito password hashes are permanently non-exportable
⚠️ Auth0 password export requires support ticket — Free tier excluded
⚠️ Auth0 Rules/Hooks EOL 2026-11-18 — Actions not portable
✅ Clerk has the most flexible migration path
“我应该升级到 Next.js 16 吗?”
⚠️ Sync API access fully removed — all dynamic calls must be awaited
⚠️ Custom webpack config breaks next build
⚠️ next lint removed — switch to Biome or ESLint CLI
⚠️ Requires Node.js 20.9.0+, TypeScript 5.1.0+, React 19.0+
✅ Plan phased migration — codemod doesn't cover webpack or middleware
“我可以使用 OpenAI Realtime API 吗?”
⚠️ gpt-4o-realtime-preview removed 2026-05-07
⚠️ Beta interface (realtime=v1 header) removed same date
⚠️ GA event schema incompatible — 4 event renames
✅ Start on GA from day one — or plan dual-stack migration
三个问题,三种阻碍因素类型。同一个 AI,不同的事实。

快速开始
前提条件:Node.js >= 22,MCP 客户端(Claude Code、Cursor 等)
npm install -g pocketlantern
Claude Code
在你的项目目录中:
cd your-project
pocketlantern init
init 会在 ~/.claude.json 中注册 MCP 服务,并向项目的 CLAUDE.md 添加一行规则。重启 Claude Code(按 Ctrl+C,然后再次运行 claude),再提出你的第一个查询。
Cursor / Windsurf / 其他 MCP 客户端
添加到 MCP 配置中(Cursor:~/.cursor/mcp.json):
{
"mcpServers": {
"pocketlantern": {
"command": "pocketlantern-mcp"
}
}
}
然后将这一行添加到项目规则文件中(.cursorrules、Kiro steering 文件等):
For technology decisions, upgrades, migrations, or licensing questions: before finalizing your answer, check the PocketLantern MCP server's search_cards tool for blockers in these bundled decision cards — your training data may be stale.
重新加载 MCP 服务:Cursor — Cmd+Shift+P -> “MCP: Restart Servers”。Windsurf — 重启编辑器。
还可以试试这些查询
-
“Vercel 的定价如何随着 Fluid Compute 发生变化?” 计费拆分为 Active CPU + Memory,共享进程并发会破坏隔离
-
“用于 Edge/serverless,选 Prisma 还是 Drizzle?” Prisma v7 的 ESM + 驱动适配器存在破坏性变更,Edge 仅为预览版;Drizzle 0.30-1.0 也有破坏性变更
验证安装
pocketlantern doctor # check installation status
pocketlantern search "auth pricing" # search cards from CLI
工作原理
PocketLantern 是一个 MCP 服务。你的 AI Agent 会调用 search_cards,并获取带来源链接的决策卡片,以及有相应信息时附带的带来源链接的阻碍因素警告。
Agent asks question
-> search_cards("clerk vs auth0 authentication")
-> 3 cards + 5 blocker warnings (lock-in, EOL, export restrictions)
-> Agent answers with source-linked constraints
本地卡片集。即时查询。无需向量数据库,无需嵌入。采用关键词搜索、卡片链接,以及有相应信息时附带的带来源链接的阻碍因素警告。其价值在于带来源链接的决策卡片,而不仅仅是巧妙的检索方式。
search_cards("auth", constraints:["serverless"]) -> cards + blockers
get_card("auth/clerk-vs-auth0-vs-cognito-2026") -> full card with facts
get_related_cards(...) -> connected topics
包含内容
涵盖 27 个类别的阻碍因素感知决策卡片,以及来自捆绑图索引的带来源链接的阻碍因素警告。随 npm 包一同提供,开箱即用,无需网络或账户:
| 类别 | 涵盖内容 |
|---|---|
| auth | 供应商锁定、迁移难题、SSO、RBAC、通行密钥 |
| frontend | Next.js、React、Svelte、Vite、Angular 升级阻碍因素 |
| database | Prisma、Drizzle、Postgres、Aurora、Neon、Supabase |
| ai | OpenAI API 迁移、模型定价、批处理与流式传输 |
| serverless | Vercel、Cloudflare Workers、Lambda 成本与运行时 |
| infra | 托管平台、Terraform、Node.js LTS、Python EOL |
| backend | Supabase 与 Firebase 的比较、Express、作业队列、实时同步 |
| + 18 more | 部署、开发工具、测试、安全、合规等 |
卡片示例
每张卡片都是一个结构化 YAML 文件,包含带来源链接的事实和官方参考链接:
id: auth/clerk-vs-auth0-vs-cognito-2026
title: Clerk vs Auth0 vs Cognito Under Current Pricing and Feature Changes
problem: Select an auth vendor given recent pricing shifts, MAU economics, ...
constraints: [cost-sensitive, low-ops, enterprise, compliance, serverless]
candidates:
- name: Clerk
summary: "Pro starts at $20/mo, includes 50,000 MRUs per app..."
when_to_use: "Choose for small-team + low-ops + cost-sensitive SaaS..."
tradeoffs: "Best DX and fastest implementation..."
cautions: "Be precise about org-member limits..."
links:
- https://clerk.com/pricing
- https://clerk.com/docs/guides/organizations/configure
- name: Auth0
# ...
- name: Amazon Cognito
# ...
tags: [auth, clerk, auth0, pricing, passkeys, b2b, compliance]
related_cards: [auth/sso-for-b2b-saas, auth/rbac-vs-abac-vs-rebac]
updated: 2026-03-14
完整的架构定义请参见 packages/schema/src/card.ts。
项目结构
pocketlantern/
packages/schema/ <- Card schema (zod + TypeScript types)
apps/mcp-server/ <- MCP server (search, retrieval, tool handlers)
apps/cli/ <- CLI (validate, search, init, doctor)
packages/knowledge/ <- Decision cards + graph index (data package)
docs/ <- User guides & roadmap
单体仓库:pnpm 工作区。构建顺序:schema -> knowledge (no build) -> mcp-server -> cli。
开发
pnpm build # Build all packages
pnpm test # Run tests (299 tests)
pnpm test:coverage # Run with coverage report
pnpm lint # ESLint
pnpm format:check # Prettier check
缺少某个主题?请在卡片请求中提出覆盖需求。
贡献
欢迎为工具(架构、MCP 服务、命令行、搜索)做出贡献。请参阅CONTRIBUTING.md了解指南。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。