关于 lens
Mindola 的托管 MCP 服务可将个人文章、笔记、文档和链接转成公开 lens,并依据这些材料提供带引用的回答。它面向希望发布可分享问答页面、但不想自行构建检索流程的创作者和组织。
主要功能
- 01创建并填充公开 lens
- 02基于所提供材料回答并附引用
- 03对材料范围外的问题明确拒答
- 04实时语音对话
- 05收集未能回答的问题
适用场景
- 01为课程材料发布问答页面
- 02让访客询问产品文档内容
- 03分享基于简历或作品的引用式个人页面
- 04收集 lens 无法回答的访客问题
MCP 相关
托管的远程 MCP 服务允许已连接的客户端通过助手对话创建 lens 并添加知识,也提供查询 lens 状态的工具。README 列出了 `create_digital_twin_lens`、`add_lens_knowledge` 和 `get_lens_status`。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://app.mindola.ai/mcp/lensclaude mcp add --transport http ai-mindola-lens https://app.mindola.ai/mcp/lens{"mcpServers":{"ai-mindola-lens":{"type":"http","url":"https://app.mindola.ai/mcp/lens"}}}在 Cursor 中打开{"servers":{"ai-mindola-lens":{"type":"http","url":"https://app.mindola.ai/mcp/lens"}}}在 VS Code 中打开{"mcpServers":{"ai-mindola-lens":{"type":"http","url":"https://app.mindola.ai/mcp/lens"}}}{"mcpServers":{"ai-mindola-lens":{"serverUrl":"https://app.mindola.ai/mcp/lens"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
3| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| bio | string | 否 | 根据用户确认的信息整理的简洁第一人称或第三人称简介。 |
| tone | enum | 否 | 镜像面向访客的语气。warm | neutral | professional | playful |
| facts | array | 否 | 用于初始化镜像记忆的、经用户批准的具体事实。每项内容都应独立完整。 |
| locale | string | 否 | 面向用户的 lens 文案所用的可选 BCP-47 区域设置。 |
| context | string | 否 | 为 lens 如何回答提供额外的背景信息。仅使用用户确认过的信息。 |
| tagline | string | 否 | 用一句简短的话概述此 lens 代表的内容。 |
| audience | string | 否 | 此 lens 面向的对象,或希望为其解答问题的人群。 |
| expertise | array | 否 | 用户确认过的具体领域、技能或兴趣。 |
| topicName | string | 否 | 用于存放预置事实的 Mindola 空间名称。 |
| vibeWords | array | 否 | 为 lens 个人资料填写的最多四个简短形容词。 |
| boundaries | array | 否 | 此 lens 不应声称、讨论或回答的内容范围。调用前请用户确认这些限制。 |
| accentColor | string | 否 | 可选的十六进制颜色,例如 #4f46e5。 |
| displayName | string | 否 | 用户确认后为 lens 选择的首选公开名称。 |
| sourceSummary | string | 否 | 简短说明 ChatGPT 使用了哪些内容来整理个人资料,不得泄露隐藏的思考过程或未经批准的私人数据。 |
| suggestedPrompts | array | 否 | 访客可以向 lens 提出的入门问题。 |
详细介绍
Mindola MCP 服务
Mindola 会将一个人自己的材料(文章、笔记、文档、链接)转化为公开的 AI 页面,仅依据这些材料回答问题,并附上引用来源。
这个公开的 AI 页面称为 镜像页:一个可分享的链接,例如 https://mindola.ai/me/your-name,任何人都可以通过聊天或实时语音通话提问。每个回答都只以所有者的材料为依据,并显示来源。如果材料未涵盖某个问题,镜像页会如实说明,而不是猜测,还可以将问题转交给本人。
本仓库提供 Mindola 托管 MCP 服务的公开文档和示例。该服务是远程服务:无需安装或运行任何内容。只需将一个 URL 添加到 MCP 客户端(Claude、Cursor、VS Code、Codex、ChatGPT),AI 助手就能在一次对话中为你创建并填充镜像页。服务本身运行在 Mindola 应用内,该应用是闭源的;本仓库包含文档和示例代码。
现在即可试用实时镜像页,无需账户:mindola.ai/me/charles-darwin。
Mindola 解决的问题
人们发布的知识无人问津。你的博客文章、文档、课程材料和笔记都堆在档案中,而访客只能自己翻找。大多数人不会这么做。他们只有一个问题,也只想要一个答案。
通用 AI 聊天机器人并不能解决问题。它会根据训练数据回答,因此可能会信誓旦旦地编造关于你、你的产品或你的工作的内容。这比不回答更糟。
Mindola 介于两者之间。它为你的材料提供一个入口:一个依据你的知识库回答问题、不涉及其他内容的页面,会标注每个回答的出处,并在不知道时坦言。访客得到的是答案,而不是一堆档案;你也能看到他们问了什么。
为什么选择 Mindola,而不是自己搭建 RAG
自行构建检索增强生成(RAG)是一项实打实的工程。你需要为每种来源类型实现内容导入,依据文档结构进行分块,配置嵌入模型和向量存储,调整检索效果,编写依据材料作答的逻辑,让模型不超出材料范围,制作引用界面,为超出范围的问题设置拒答行为,还要负责托管、监控和前端。再加入实时语音,工作量大致会翻倍。
Mindola 通过一个链接和一个 API 提供完整产品。你提供材料;Mindola 负责知识检索、基于材料的回答、引用、拒答、语音、公开页面,以及未回答问题的收件箱。只需与编码助手进行一次对话,就能从零开始搭建可用的、基于材料作答的 AI 页面。
在某些情况下,自行构建仍然是正确选择。如果你需要完全控制运行哪些模型、数据存放在哪里或检索如何排序,或者想将整个流程深度嵌入现有产品,那么自行构建更合适。Mindola 面向所有想要成果、却不想负责整个流程的人。
核心功能
- 有据可查的回答。 每个回答都仅基于所有者提供的材料,并注明来源。私人材料绝不会出现在引用中。
- 诚实拒答。 对超出范围的问题会明确回答“我不知道”,而不是编造答案。
- 实时语音通话。 访客可以实时与数字分身交谈,并可打断对方(可以在对方说到一半时插话)。所有者可以使用克隆语音或预设语音。
- 内置潜在客户收集功能。 数字分身无法回答的问题会连同访客信息一起发送到所有者的收件箱,因此数字分身也能兼作轻量级 CRM。
- 可选付款功能。 所有者可以通过 Stripe Connect 向访客收费,使用自己的 Stripe 账户,并按数字分身设置价格。默认关闭。
- 支持 10 种应用语言。 应用界面支持英语、荷兰语、德语、西班牙语、法语、阿拉伯语、日语、韩语、土耳其语和中文。
- 一个链接,多种用途。 根据你提供的内容,同一个数字分身可以回答有关你的网站、文档或辅导业务的问题。
安装
MCP 服务托管在云端。无需在本地运行任何程序;只需让客户端连接到一个 URL。
Claude Code
claude mcp add --transport http mindola https://app.mindola.ai/mcp/lens
Cursor(~/.cursor/mcp.json 或项目中的 .cursor/mcp.json)
{
"mcpServers": {
"mindola": {
"url": "https://app.mindola.ai/mcp/lens"
}
}
}
Claude Desktop / claude.ai
设置 -> 连接器 -> 添加自定义连接器 -> URL https://app.mindola.ai/mcp/lens。
有关 VS Code、Codex CLI、Windsurf、Gemini CLI、ChatGPT 和故障排除的信息,请参阅 docs/installation.md。可直接复制的客户端配置位于 examples/clients/。
快速开始
使用 AI 助手
- 使用上方任一代码片段连接服务。
- 粘贴类似这样的提示词:
Create a Mindola lens for me. I'm a nutrition coach specializing in
plant-based diets for endurance athletes. I've been coaching for 8 years.
Use a warm tone. Ask me anything you need, then show me the profile
before you create it.
- 助手会起草一份个人资料(姓名、简介、专长、事实和边界),并展示给你。工具的指示要求助手在创建任何内容前获得你的明确确认,并且只能使用你在对话中提供或确认的信息。
- 确认。助手会调用
create_digital_twin_lens并返回:- shareUrl:你的公开数字分身页面,立即上线
- claimUrl:打开并注册(免费),即可认领该数字分身
- manageUrl、expiresAt、factCount 和 suggestedPrompts
创建时无需账户。数字分身最初处于未认领状态:可通过其分享 URL 访问;如果始终未被认领,则会在 30 天后过期。未认领期间,助手可以继续使用 add_lens_knowledge 为其添加知识。认领后,所有更改都必须通过应用或经过身份验证的开发者 API 进行。
- 在同一段对话中继续操作。让助手添加你的文章或网页:
Add my last three blog posts to the lens, then check the ingestion
status and tell me when everything is ready.
助手会调用 add_lens_knowledge 添加这些 URL,然后轮询 get_lens_status,直到知识数量显示所有内容均已就绪。打开分享 URL,向你的数字分身提问。
使用 REST API
在 Mindola 应用中创建 API 密钥,然后通过一次调用创建一个已添加知识内容的数字分身:
curl -s https://app.mindola.ai/api/v1/lenses \
-H "Authorization: Bearer mnd_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"name": "Product docs assistant",
"greeting": "Hi, ask me anything about the product.",
"knowledge": [
{ "type": "url", "content": "https://example.com/docs/getting-started", "title": "Getting started" },
{ "type": "text", "content": "Refunds are available within 30 days of purchase.", "title": "Refund policy" }
]
}'
响应状态为 201,并包含 { id, token, shareUrl, sourcesQueued }。内容摄取会在后台运行;轮询 GET /api/v1/lenses/:id,直到知识数量显示状态为 ready。完整参考请参阅 docs/api.md。
20 个真实用例
- 教练:一个有问必答页面,根据你的方法回答问题;当问题需要你亲自解答时,还能收集潜在客户信息。
- 开源项目维护者:开发者文档可附上引用来回答问题,而不是让读者自行搜索。
- 课程创作者:一个课程助手,学生凌晨 2 点也能提问,回答以教学大纲和课程内容为依据。
- 独立创始人:为小型产品打造 AI 客户支持,依据文档和更新日志回答问题。
- 求职者:一份能通过聊天或语音回答招聘人员关于你工作经历问题的简历。
- 小型团队:通过一个链接访问的内部文档,整个团队都可以提问。
- 播客主持人:根据单集笔记和文字稿打造一个角色,让听众在两期节目之间也能向其提问。
- 新闻通讯作者:读者可以查询历史存档,而不用翻阅多年的期刊。
- 会议演讲者:演讲结束后,参会者仍可在页面上继续提问;页面内容以你的幻灯片和笔记为基础。
- 顾问:一个 AI 专家页面,可在首次通话前筛选潜在客户。
- 作者:一个图书伴侣,可探讨你的观点,并注明其出处章节。
- 代理机构:一个服务页面,依据你自己的资料,预先回答有关服务范围、流程和定价的问题。
- 教师:一个以课堂资料为依据的学习助手,让回答符合实际教学内容。
- 研究人员:一个能回答关于你论文的问题,并指出确切来源的页面。
- 产品经理:一个更新说明视角,让“X 到底发布了吗”这类问题能自动得到回答。
- 本地商家:你网站上的一个视角,可根据网站页面回答营业时间、服务和政策相关问题。
- 人力资源团队:一个依据员工手册回答问题的入职助手,而不是让员工去共享云盘里查找。
- 健身教练:通过 Stripe 提供付费问答,访客付费后即可直接向你的视角提问。
- 社区管理员:一个规则和指南机器人,可一致地回答有关内容审核的问题。
- 历史教育者:让一位公有领域的历史人物重现,例如 Charles Darwin 演示。
其中十个用例已在 examples/use-cases/ 中完整展示,每个都包含可粘贴的提示词、预期对话和最终结果。
示例提示词
连接服务后,将以下任意提示词粘贴到 Claude、Codex、Cursor 或 ChatGPT 中。
Create a Mindola lens for me. I'm a freelance UX designer with 10 years
of experience in fintech and healthcare. Interview me briefly to fill
the gaps, show me the profile, and only create it after I approve.
Read the README and docs folder of this repository, then create a
Mindola lens that answers questions about the project's docs.
Show me the proposed profile before creating anything.
Turn my CV into a Mindola lens that answers recruiters' questions.
Here is my CV: [paste CV]. Keep the tone professional and add a
boundary that it never discusses salary expectations.
Create a Mindola lens for my online course "Intro to Data Analysis".
It should act as a course assistant for students. I'll paste the
syllabus and lesson summaries next.
Add these three articles to my Mindola lens YOUR_LENS_TOKEN:
https://example.com/post-1
https://example.com/post-2
https://example.com/post-3
Check the status of my Mindola lens YOUR_LENS_TOKEN. Tell me how many
knowledge sources are ready, pending, or failed.
Create a Mindola lens for our startup's support. Use our FAQ page at
https://example.com/faq and the refund policy I paste below. Tone:
professional. Add suggested prompts about setup, billing, and refunds.
Create a Mindola lens in Dutch (locale nl) for my bakery. It should
answer questions about opening hours, allergens, and custom orders
from the text I provide.
docs/prompts.md 中还有 100 个提示词,按角色和目标分类。若想按行业浏览,examples/100-prompts.md 收录了 100 条按领域分组的单句提示词,涵盖客户支持到在线课程等领域。
API 概览
REST 开发者 API v1 位于 https://app.mindola.ai,使用 Authorization: Bearer mnd_<key> 进行身份验证。写入端点的速率限制为每个密钥每分钟 30 个请求。
| 端点 | 功能 |
|---|---|
POST /api/v1/lenses | 创建一个视角,可选择为其预先添加最多 50 条文本或 url 知识条目 |
GET /api/v1/lenses | 列出你的视角,最多 100 个,按创建时间从新到旧排序 |
GET /api/v1/lenses/:id | 获取一个视角及其知识条目数量(总数、就绪、待处理、失败) |
POST /api/v1/lenses/:id/knowledge | 向现有视角再添加最多 50 条知识条目 |
curl -s https://app.mindola.ai/api/v1/lenses \
-H "Authorization: Bearer mnd_your_api_key_here"
字段详尽说明、错误代码和密钥管理请参阅 docs/api.md。可运行的 curl、Node 和 Python 示例位于 examples/。
MCP 工具
服务端恰好提供三个工具:
create_digital_twin_lens:根据用户在对话中批准的个人资料创建镜像,并返回分享 URL 和认领 URL。add_lens_knowledge:通过镜像的令牌,向尚未认领的镜像添加最多 20 条文本或 URL 内容;这些内容会经过标准摄取流程,以便镜像能够基于这些内容提供带引文的回答。get_lens_status:只读;返回分享 URL、镜像是否已认领以及知识条目数,可用于轮询摄取进度。
使用纯 JSON-RPC 对服务端进行冒烟测试,无需身份验证:
curl -s https://app.mindola.ai/mcp/lens \
-H "content-type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
架构、字段限制和使用规范见 docs/mcp-tools.md。
架构
flowchart LR
A[MCP client<br>Claude, Cursor, Codex, ChatGPT] -->|create_digital_twin_lens| B[Hosted Mindola MCP server<br>app.mindola.ai/mcp/lens]
B --> C[Lens created<br>live and unclaimed]
A -->|add_lens_knowledge| D[Ingestion<br>parse, chunk, embed]
D --> C
C --> E[Public lens page<br>mindola.ai/me/your-name]
V[Visitor] -->|chat or live voice| E
E -->|grounded answers with citations| V
服务端使用 Streamable HTTP(MCP 协议版本 2025-03-26、2025-06-18 和 2025-11-25),且为无状态服务。你添加的知识会经过解析、分块和嵌入,然后在访客提问时通过检索提供。有关传输行为和未认领镜像生命周期的更多详情,请参阅 docs/architecture.md。
常见问题
可以免费试用吗? 可以。通过 MCP 服务创建镜像无需付费,也无需账户。Mindola 可免费入门,也提供面向更高用量的付费方案。
我需要账户吗? 创建镜像不需要。匿名创建会生成一个可立即使用的未认领镜像。认领时,你需要注册账户(免费)。
什么是未认领镜像? 未使用账户创建的镜像。它会立即在分享 URL 上生效,并附带一个认领 URL。如果 30 天内无人认领,镜像就会过期。在镜像被认领之前,你的助手仍可仅凭镜像令牌添加知识。
我的数据存在哪里? 数据存放在 app.mindola.ai 背后的 Mindola 托管服务中。镜像的回答以你的内容为依据,私密内容绝不会出现在引文中。
镜像会产生幻觉吗? 回答仅以你的内容为依据。如果问题超出内容范围,镜像会如实拒绝回答,也可以将问题转至你的收件箱,而不是猜测。
我可以使用自己的声音吗? 可以。镜像所有者可在实时通话中使用克隆声音,也可以选择预设声音。所有生成的音频都带有可由机器读取的标记,以表明其由 AI 生成。
支持哪些语言? 应用界面提供 10 种语言:英语、荷兰语、德语、西班牙语、法语、阿拉伯语、日语、韩语、土耳其语和中文。创建镜像时,你可以为其文案设置 BCP-47 区域设置。
这与自定义 GPT 有何不同? 自定义 GPT 位于 ChatGPT 内部,必须通过 ChatGPT 才能使用。镜像是一个公开网页,任何人都可以通过普通链接访问;它提供有依据的引文、如实拒答、实时语音、用于收集未解答问题的收件箱,以及可选的 Stripe 付款功能。我们打造它,是为了让它成为你知识的入口,而不是别人应用里的聊天工具。
更多问题和详细解答见 docs/faq.md。
限制
以下是目前尚不支持的功能:
- 如今,API 和 MCP 工具仅接受两种知识条目类型:
text和url。PDF 上传和问答对等更丰富的来源类型,可在 Mindola 应用中使用。 - 暂无 Webhook;请轮询
get_lens_status或GET /api/v1/lenses/:id查看摄取进度。 - API v1 暂无删除镜像的端点。
- 暂无官方 SDK 包;示例使用纯 curl、fetch 和 requests。
- 未认领的镜像若始终无人认领,会在 30 天后过期。
- 匿名 MCP 速率限制:每个会话每分钟最多创建 2 个镜像、每小时最多创建 10 个镜像;另外两个工具每个 IP 每分钟最多调用 20 次。REST 写入端点每个密钥每分钟允许 30 个请求。
API 目前规模较小,仍处于早期阶段,后续会推出更多端点。
安全
- MCP 服务按设计不进行身份验证。 匿名调用只能创建未认领的镜像,每分钟最多 2 个、每小时最多 10 个,并会在 30 天后过期,除非有人认领。认领时,镜像会与已登录账户绑定,从而确立所有权。此后,匿名连接器无法再修改镜像。
- API 密钥会得到妥善处理。 密钥在创建时仅显示一次。系统只存储 SHA-256 哈希,并保留前 12 个字符作为显示前缀;撤销操作则以时间戳记录,便于审计。
- 以事实依据为安全保障。 回答仅来自所有者提供的材料,引用中绝不会出现私有材料。
- 符合《欧盟人工智能法案》。 镜像生成的语音音频带有符合《欧盟人工智能法案》第 50(2) 条要求的机器可读标记,因此可以检测出其为 AI 生成内容。
- 负责任地披露漏洞。 发现漏洞?请发送邮件至 [email protected]。
许可证
本仓库中的文档和示例代码采用 MIT 许可。托管的 Mindola 服务本身为闭源。
链接
- 产品:mindola.ai
- 在线演示镜像:mindola.ai/me/charles-darwin
- 机器可读文档:mindola.ai/llms.txt
- MCP 注册表条目:
ai.mindola/lens,位于 registry.modelcontextprotocol.io - 入门模板:mindola-persona-starter
- 联系方式:[email protected]
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。