Tidio
官方通过MCP将Tidio与您的网站连接。无需退出编程环境即可嵌入小部件。
你可以用 Tidio MCP 做什么?
- 将Tidio连接到网站 — 通过
tidio_connect请求将Tidio连接到网站URL,该操作会打开浏览器进行OAuth登录,并自动获取您的公钥。 - 检查连接状态 — 用于验证Tidio是否已连接,并获取您当前的嵌入代码。
- 生成嵌入代码 — 使用公钥调用,生成可直接使用的JavaScript,可选择
async或sync加载方式。 - 断开Tidio连接 — 运行以清除本地存储的凭据,这些凭据位于
~/.tidio-mcp/credentials.json中。
文档
Tidio MCP 连接器
一个 MCP(模型上下文协议)服务器,将 AI 助手连接到 Tidio 在线聊天 - 具有自动设置功能
功能
- 自动设置:一条命令即可连接到 Tidio - 无需手动复制密钥
- OAuth 认证:打开浏览器进行安全的 Tidio 登录,自动获取您的公钥
- 凭据持久化:凭据保存在本地,供后续会话使用
- 嵌入代码生成:为任何网站获取可直接使用的 JavaScript 代码
安装
npm install tidio-mcp-connector
或者克隆并在本地构建:
git clone https://github.com/your-username/tidio-mcp-connector.git
cd tidio-mcp-connector
npm install
npm run build
使用方法
使用 Claude Desktop
添加到您的 Claude Desktop 配置(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"tidio": {
"command": "npx",
"args": ["tidio-mcp-connector"]
}
}
}
使用 Lovable
此 MCP 连接器可与 Lovable 及类似的 AI 驱动开发平台配合使用。将其添加为自定义 MCP 服务器。
使用 MCP Inspector(测试)
npx @modelcontextprotocol/inspector npx tidio-mcp-connector
可用工具
tidio_connect(推荐)
连接到 Tidio 并自动获取您的公钥。
工作原理:
- 打开您的浏览器到 Tidio 的登录页面
- 您使用您的 Tidio 账户进行身份验证
- 自动返回您的公钥和嵌入代码
参数:
site_url(必填):Tidio 将嵌入的网站 URL
示例:
Connect Tidio to https://mywebsite.com
tidio_status
检查您的连接状态并获取您的嵌入代码。
**参数:**无
tidio_disconnect
清除已存储的凭据。
**参数:**无
generate_tidio_embed
为特定公钥生成嵌入代码(如果您已有公钥)。
参数:
public_key(必填):您的 Tidio 公钥loading_mode(可选):"async"(默认)或"sync"
工作原理
- 用户调用
tidio_connect并提供其网站 URL - 浏览器打开 Tidio 的身份验证页面
- 用户登录 其 Tidio 账户
- 收到回调 - MCP 服务器获取刷新令牌
- 进行 API 调用 - 将令牌交换为访问令牌,然后检索公钥
- 凭据保存 到
~/.tidio-mcp/credentials.json - 返回嵌入代码 - 可立即添加到网站
凭据存储
凭据本地存储于 ~/.tidio-mcp/credentials.json:
{
"public_key": "abc123...",
"access_token": "...",
"refresh_token": "...",
"site_url": "https://example.com",
"created_at": "2024-01-01T00:00:00.000Z",
"updated_at": "2024-01-01T00:00:00.000Z"
}
嵌入代码输出
该连接器生成优化的异步加载代码:
<script type="text/javascript">
document.tidioChatCode = "YOUR_PUBLIC_KEY";
(function() {
function asyncLoad() {
var tidioScript = document.createElement("script");
tidioScript.type = "text/javascript";
tidioScript.async = true;
tidioScript.src = "//code.tidio.co/YOUR_PUBLIC_KEY.js";
document.body.appendChild(tidioScript);
}
if (window.attachEvent) {
window.attachEvent("onload", asyncLoad);
} else {
window.addEventListener("load", asyncLoad, false);
}
})();
</script>
开发
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build for production
npm run build
# Run built version
npm start