内部通信MCP服务器
一 主控程序 连接的(模型上下文协议)服务器 光标 内部通信。在Cursor中使用它可以列出对话、阅读线程、起草和发送回复,并提取您的支持响应模板(请记住包含您自己的response.md,并根据需要更改规则)
工具
当此服务器运行时,每个工具都会暴露给Cursor(以及任何MCP客户端)。更喜欢 起草报告 用于人工智能生成的文本,以便人类可以在客户看到任何内容之前进行查看。
只读工具
- 搜索_对话 --按状态搜索和过滤内部通信对话(
open,closed,snoozed),日期范围(created_after,created_before,updated_after,updated_before),以及源类型(电子邮件、聊天、推送等)。返回一个带有对话ID、标题、预览和元数据的分页列表。使用此功能查找符合条件的对话(例如“过去7天更新的开放对话”)。
- get_对话 --按ID获取一个对话。返回完整的消息线程(谁说了什么,什么时候说的)、联系信息和对话统计数据(例如首次回复时间、重新打开计数)。在起草或发送回复之前,请使用此功能阅读完整的上下文。
- 获取_未回复_对话 --返回打开的对话,其中 最后一条消息来自客户 (即代理尚未回复)。帮助确定哪些对话需要回应的优先级。您可以限制每页获取的打开对话数。
- 获取新消息 --轮询自上次检查以来的新对话或更新对话。使用高水位线:第一个呼叫返回最后一个小时的对话;稍后的调用只返回较新的活动。可选的
reset标志将标记重置为“现在”。适用于“自上次查看以来有什么新消息?”工作流。
草稿(内部说明)
- 起草报告 --添加一个 内部管理员备注 对话。这 客户看不到。该说明由以下人士签署:
- cursor MCP最后。将此用于AI生成的回复文本:代理在Intercom中进行审核和编辑,然后从Intercom手动发送或使用 send_reply 最后的文本。允许模型调用是安全的。
发送回复(客户可见)
- send_reply --发送a 客户可见回复 对话。该消息立即作为代理回复发布;客户在对话中看到了这一点。
除非您非常确定模型是正确的,否则不要将send_reply添加到allolist中。\ 如果模型可以调用 send_reply 未经人类批准,它可以直接向客户发送错误、非品牌或不恰当的信息。更喜欢保留 send_reply 让人类从Intercom发送最终回复(或批准每次使用)。使用 起草报告 用于AI输出,只有在审查后才能发送。
get_new_message——它是如何工作的
该工具在内存中保存 lastCheckTimestamp.第一次通话时 null),它使用 now - 3600 (最后一小时) since 价值。在后续通话中,它使用 lastCheckTimestamp 作为 since,因此只返回在此时间之后更新的对话。每次成功获取后,它都会更新 lastCheckTimestamp 到现在。如果你通过 reset: true,它将标记设置为现在,不返回任何内容——这对重新开始很有用。内部通信API调用时使用 updated_at > since 并返回多达50个对话。
注: 高水位线只存在于记忆中;重新启动MCP服务器会重置它,因此下一次调用将再次使用“最后一小时”。
先决条件
- (v18+)
- 内部通信API访问(API令牌和用于发送回复的管理员/代理ID)
设置
1.安装依赖项
npm install2.环境变量
复制示例env文件并设置对讲机凭据:
cp .env.example .env编辑 .env:
| 变量 | 描述 |
|---|---|
INTERCOM_API_KEY | 您的内部通信API令牌(必需)。 |
INTERCOM_ADMIN_ID | 对讲机 管理员/代理ID 用作回复和注释的作者(必填)。 |
TEMPLATE_DOC_PATH | 响应模板文件的路径(默认: ./templates/responses.md). |
3.建造
npm run build4.配置Cursor以使用此MCP服务器
编辑 .cursor/mcp.json 因此,服务器从该仓库运行(使用绝对路径 dist/index.js 如果需要)和 env 包括你的真实 INTERCOM_API_KEY 和 INTERCOM_ADMIN_ID示例:
{
"mcpServers": {
"intercom": {
"command": "node",
"args": ["/path/to/Cursor MCP/dist/index.js"],
}
}
}重新启动Cursor(或重新加载MCP服务器),使其获取配置和构建的服务器。
游标中的用法
一旦MCP服务器在Cursor中运行,您可以要求AI:
- “获取所有未回复的对讲机对话并起草回复。”
- “获取对话123456,并使用模板建议回复。”
- “搜索过去7天内更新的公开对话。”
- “用\[您的消息\]起草对对话123456的回复。”
使用创建的草稿 起草报告 作为内部注释出现在Intercom中,并以结尾 - cursor MCP.在Intercom中查看和编辑它们,然后从Intercom发送最终回复(或通过 send_reply 如果您启用了它)。 除非您非常确定模型是正确的,否则不要将send_reply添加到allolist中 --使用草稿优先和人工审核,以避免向客户发送错误或非品牌信息。
响应模板
把你的支持手册放在 templates/responses.md:代理人角色、词汇规则和常见情况(存款、支出、KYC、漏洞等)的工作流程。该项目包括光标规则,该规则告诉AI在起草对讲机回复时检查此文件。
项目结构
├── src/
│ ├── index.ts # MCP server and tool registration
│ ├── lib/
│ │ └── intercom-client.ts # Intercom API client
│ └── tools/
│ ├── draft-reply.ts # Internal note (draft)
│ ├── send-reply.ts # Customer-visible reply
│ ├── get-conversation.ts
│ ├── get-unreplied-conversations.ts
│ ├── get-new-messages.ts
│ └── search-conversations.ts
├── templates/
│ └── responses.md # Support templates (persona, workflows)
├── .env.example
├── .cursor/
│ └── mcp.example.json # Example Cursor MCP config
└── package.json脚本
| 命令 | 描述 |
|---|---|
npm run build | 将TypeScript编译为 dist/. |
npm start | 运行服务器(node dist/index.js). |
npm run dev | 快跑 tsc --watch 为了发展。 |
许可证
私人/内部使用。根据需要调整设置。
