mcpField
T
three.ws Concierge

three.ws Concierge

本地服务
three.wsAI 与智能体255今天更新

关于 three.ws Concierge

three.ws Concierge 是一个 MCP 服务,让 AI 助手向任意网站的 AI 礼宾员提问,并生成可嵌入网站的聊天组件代码。回答基于页面的真实内容生成,无需 API 密钥。它面向需要查询网站信息或为自有站点添加礼宾组件的用户。

主要功能

  1. 01基于网页真实内容回答问题,可传入 URL
  2. 02支持传入自有知识文本作为依据
  3. 03生成 script、web-component、npm 等嵌入代码
  4. 04列出可用的 3D 虚拟形象

适用场景

  1. 01向某个产品页面询问价格或套餐细节
  2. 02为企业站点生成带品牌配色和问候语的嵌入代码
  3. 03选择虚拟形象并配置到网站礼宾组件中

MCP 相关

该服务以 MCP 服务的形式暴露 concierge_ask、concierge_embed、concierge_avatars 三个工具,供 MCP 客户端提问、生成嵌入代码并查询可用头像。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"nirholas-concierge": {
"command": "npx",
"args": [
"-y",
"@three-ws/concierge-mcp"
],
"env": {
"THREE_WS_BASE": "<THREE_WS_BASE>",
"THREE_WS_TIMEOUT_MS": "<THREE_WS_TIMEOUT_MS>",
"CONCIERGE_PAGE_TIMEOUT_MS": "<CONCIERGE_PAGE_TIMEOUT_MS>"
}
}
}
}
启动命令npx -y @three-ws/concierge-mcp
需要配置的环境变量
THREE_WS_BASEBase URL of the three.ws API that serves POST /api/concierge, and the origin the generated embed snippets point at. Override only when self-hosting or targeting a preview deployment.
THREE_WS_TIMEOUT_MSPer-request timeout in milliseconds for the concierge answer call. The answer streams over a free-first LLM chain that can fail over across providers, so the default leaves room for one slow rung.
CONCIERGE_PAGE_TIMEOUT_MSTimeout in milliseconds for fetching a page that concierge_ask grounds its answer in. Separate from the answer timeout so a slow site cannot consume the whole call.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@three-ws/concierge-mcp0.1.1

工具

3

收录的工具列表 · 更新于 2 周前

参数类型必填说明
urlstring否用于为回答提供依据的网页。工具会抓取该页面并提取可读文本。
langstring否回复所用语言的 BCP-47 提示,例如 "en"、"es"。
contentstring否未传入 url 时,用于为回答提供依据的原始网页/文档文本。
personastring否可选的回复语气指令,例如 "concise and technical"。
questionstring是要用自然语言提出的问题。
siteNamestring否网站/产品的显示名称(用于组织回答的表述)。省略时会根据页面推断。
knowledgestring否用于为回答提供依据的权威精选事实(常见问题、定价、政策)。其优先级高于抓取的页面文本。

详细介绍

three.ws

@three-ws/concierge-mcp

通过任意 AI 助手,向任意网站的 AI 礼宾助手提出有依据的问题,并生成可添加到网站的嵌入代码。

npm 许可证 node MCP 注册表 three.ws


一个 Model Context Protocol 服务,让任意 AI 助手都能通过 stdio 使用 three.ws Concierge,这是一款可嵌入的网站 AI 聊天组件,带有会说话的 3D 头像。

提供三个工具:

工具功能网络
concierge_ask向网站的 AI 礼宾助手提问。提供 url 后,它会抓取页面,并根据真实内容(标题、标题层级、导航、正文)作答,让你能够向任意网站提问。也可以传入 knowledge/content,根据已有文本作答。免费的 three.ws 通道 + 抓取 URL
concierge_embed生成可直接粘贴的嵌入代码,为网站添加 Concierge:可以是单标签 <script>、<three-concierge> Web 组件、npm 代码片段或命令式 mount() 调用,并可配置强调色、头像、问候语、精选知识和推荐提示词。离线
concierge_avatars列出 Concierge 可使用的绑定骨骼 3D 头像。离线

无需 API 密钥、签名者或付费。concierge_ask 使用公开的免费 POST /api/concierge 答案通道运行;另外两个工具则是纯本地生成器。

安装

npm install @three-ws/concierge-mcp

也可以使用 npx 运行(无需安装):

npx @three-ws/concierge-mcp

快速开始

Claude Code,一行命令:

claude mcp add concierge -- npx -y @three-ws/concierge-mcp

Claude Desktop / Cursor(claude_desktop_config.json 或 mcp.json):

{
	"mcpServers": {
		"concierge": {
			"command": "npx",
			"args": ["-y", "@three-ws/concierge-mcp"]
		}
	}
}

使用 MCP Inspector 检查可用功能:

npx -y @modelcontextprotocol/inspector npx -y @three-ws/concierge-mcp

用途

根据网站的真实内容向任意网站提问:

使用 concierge_ask,根据 https://example.com/pricing 回答“Pro 套餐包含什么?”

服务会抓取页面、提取可读文本,并将其发送给礼宾助手的答案引擎,返回的答案会遵循不编造页面未提及内容的原则。

根据已有文本提问(无需 URL):

concierge_ask:question = "退款期限是多久?",knowledge = "接受 30 天内的退货。"

为网站生成可直接复制粘贴的嵌入代码:

使用 concierge_embed,siteName 为 "Acme",accent 为 "#f97316",avatar 为 "nova",suggestions 为 ["What is Acme?", "Pricing?"],flavor 为 "script"

返回可直接添加到网站 HTML 中的准确 <script> 标签。

先选择头像:

concierge_avatars → 然后在 concierge_embed 的 avatar 参数中使用你喜欢的头像 ID

工具详解

concierge_ask

只读、开放世界。

参数类型说明
questionstring(必填)用自然语言提出的问题。
urlstring(url)用于为答案提供依据的页面。会抓取并提取内容。
siteNamestring显示名称;省略时会根据页面推断。
knowledgestring精选的权威事实。优先于抓取的文本。
contentstring未传入 url 时,用于提供依据的原始文本。
personastring回复语气说明。
langstringBCP-47 提示,例如 en、es。

必须至少提供 url、knowledge 或 content 之一。返回 { ok, question, answer, grounded_in, provider, model, endpoint }。

concierge_embed

只读、幂等、离线。

关键参数:siteName、flavor(script | web-component | npm | imperative | all,默认值为 all)、accent、avatar、customAvatar、position、theme、greeting、persona、knowledge、suggestions[]、endpoint、muted、open、noPicker、noTeaser、lang。返回 { ok, flavor, snippets, applied_config, docs }。script、web-component 和 imperative 代码片段都是可直接粘贴的纯 HTML(会加载 CDN 全局构建版本);npm 代码片段适用于使用打包器的用户。

concierge_avatars

只读、幂等、离线。无参数。返回 { ok, default, count, avatars, note },每个头像都包含 id、name、tagline、style 和 framing。

配置

所有可选环境变量:

变量默认值用途
THREE_WS_BASEhttps://three.ws答案调用的 API 来源,以及嵌入代码片段指向的来源。
THREE_WS_TIMEOUT_MS45000Concierge 答案的超时时间(可能会在不同 LLM 提供方之间故障转移)。
CONCIERGE_PAGE_TIMEOUT_MS12000concierge_ask 中抓取页面的超时时间。

错误

工具调用失败时,会返回 MCP 错误结果(isError: true),其文本为一个 JSON 对象:{ "ok": false, "error": "<code>", "message": "…" };上游拒绝请求时还会包含 status:

error含义处理方式
bad_request参数错误:concierge_ask 未提供 url/knowledge/content、url 不是 http(s) 地址,或 avatar id 未知。修正调用。
unsupported_media抓取的 url 不是 HTML/文本页面。指向可读取的页面,或传入 content。
upstream_error答案端点拒绝了请求;status 包含 HTTP 状态码(429 = 免费通道的 IP 速率限制)。根据 status 处理;遇到 429 时降低请求频率。
stream_error答案流在完成前失败。重试。
timeout在 THREE_WS_TIMEOUT_MS 内未获得答案,或页面抓取耗时超过 CONCIERGE_PAGE_TIMEOUT_MS。重试或延长超时时间。
network_error请求未能到达 API(DNS、离线、TLS)。检查网络连接和 THREE_WS_BASE。
bad_configTHREE_WS_TIMEOUT_MS 不是正数。此错误会在服务启动时(加载模块时)抛出,因此进程会在开始提供服务前退出。修正环境变量。

与小组件的关系

此服务是浏览器小组件 @three-ws/concierge 面向 Agent 的一侧。两者使用相同的答案引擎、头像目录和依据模型,并将其作为 MCP 工具公开,让助手可以使用网站的 Concierge 或安装一个,而不仅仅是供人类访客使用。

开发

npm test    # node --test, offline (registration, harvest, embed, SSE parsing)
npm start   # run the server over stdio

针对运行中的 three.ws 进行实时端到端检查(test/_manual-e2e.mjs),通过真实的 stdio 客户端调用全部三个工具;运行方法请参阅文件头部。

许可证

Apache-2.0。参见 LICENSE。可免费调用公开的 three.ws API。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。