mcpField
T
Tickiti

Tickiti

本地服务
tickiti.com商业与营销04 天前更新

关于 Tickiti

Tickiti 是连接 AI 助手与 Tickiti 服务台 API 的 MCP 服务,提供专用工单工具及完整 API 访问能力,并由令牌权限限制操作范围。

主要功能

  1. 01创建、更新、合并和搜索工单
  2. 02读取回复并下载附件
  3. 03管理模板、邮件和设置
  4. 04运行报告及管理 API 操作
  5. 05发现端点并调用 v1 API

适用场景

  1. 01分流并回复支持工单
  2. 02搜索工单对话并导出回复
  3. 03管理模板和预设回复
  4. 04使用受限权限运行服务台报告

MCP 相关

通过 stdio 向 MCP 客户端提供 Tickiti API 工具。调用使用 Bearer 令牌,令牌权限决定允许执行的操作。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

tickiti-mcp

一个 MCP(Model Context Protocol)服务,用于向 Claude 等 AI 助手提供 Tickiti 服务台 API。它是 Tickiti Public API v1(/api/v1/...)的轻量封装:每个 MCP 工具都会转发到一个 v1 端点,并添加你的 bearer token;对于写操作,还会添加幂等键。Token 的权限就是安全边界:服务只转发调用,不会扩大权限,因此只读 token 会让助手保持只读。

📖 完整文档:https://www.tickiti.com/docs/topic/mcp_server/

工具

工单工具提供完整且经过验证的输入;API 的其余部分可通过两个通用工具访问,因此无需为每个端点单独提供工具,即可使用全部功能。

工单

工具权限用途
create_tickettickets:write创建工单(主题+内容、模板或干预),可设置负责人、优先级、状态和参与者;必须提供 is_public
respond_to_tickettickets:write发布回复;更改状态、暂缓状态、负责人、优先级、队列、主题和参与者;通过电子邮件发送完整回复时使用 send_full_email
close_tickettickets:write关闭工单,可选添加最终回复和解决方案
edit_responsetickets:write原位修改回复(完整正文、查找/替换、可见性),不发送通知;也可发布内部备注并发送通知
delete_responsetickets:write软删除回复
add_participants / remove_participantstickets:write更改参与者
delete_tickets / restore_tickettickets:write删除工单(按编号,或删除来自同一发件人的所有工单)并撤销删除
merge_ticketstickets:write合并两个工单(较早的工单会保留)
link_tickets / unlink_tickets / list_linked_ticketstickets:write / readLinked 面板
move_responses / copy_responses / split_tickettickets:write修复对话线程:移动或复制回复,或将其拆分到新的关联工单中
change_originatortickets:write更改工单的提出者
delete_attachmenttickets:write删除一个附件(例如恶意文件),同时保留记录
get_ticket / list_responsestickets:read工单的对话线程、参与者和关联项;使用 fields / max_body_chars 可精简较长的电子邮件对话线程
get_responsetickets:read按 ID 获取单条回复
query_ticketstickets:read搜索工单
query_responses / export_responsestickets:read跨工单查询回复;统计数量和分组汇总;将 NDJSON 导出到磁盘
get_attachment / download_attachmenttickets:read获取附件字节数据(下载会将任意大小的内容流式写入文件)
list_queues / list_teams / list_staff / list_resolutions / get_search_modestickets:read队列名称和设置、团队键、员工地址、解决方案类别、搜索词汇

设置、模板、邮件、管理

工具能力用途
list_perspectives / get_perspectivesettings:read已保存的视图,包含条件和排序方式
list_watchlistssettings:read关注列表
list_stock_responses / get_stock_responsesettings:read标准回复(搜索、正文)
create_stock_response / update_stock_response / delete_stock_responsesettings:write编辑标准回复
get_template / search_templates / render_templatetemplates:read模板和常见问题;使用数据渲染模板,但不发送
create_template / update_templatetemplates:write编辑模板(更新时只会更改提供的字段)
upload_template_imagetemplates:write / settings:write为模板或标准回复上传图片
send_email / search_sent_mailmail:write / mail:read发送邮件;搜索已发送的邮件
list_api_tokens / create_api_token / update_api_token / revoke_api_tokenadministration:*API 密钥(令牌只能授予其自身具备的能力)
list_workflowworkflow:read解决类别、干预措施、升级处理
run_reportreports:read分析报告
get_token_info任意此令牌可以执行的操作:能力、所有者角色、套餐
list_instances—已配置的 Tickiti 实例(见下文)
list_endpoints—所有 API 端点,包含能力、路径和正文参数
tickiti_call按端点而定按类别和操作调用任意 /api/v1 端点

对于命名工具(邮件、模板、工作流写入、管理、主管)之外的任何操作,助手会使用 list_endpoints 查找操作,然后使用 tickiti_call 执行——覆盖整个 v1 API。

要求

  • Node.js 20 或更高版本
  • Tickiti API 令牌,从 管理 → API 密钥创建,并限定为你希望助手具备的能力
  • 支持 MCP 的客户端,例如 Claude Code 或 Claude 桌面应用

安装

git clone https://github.com/tickiti/tickiti-mcp.git
cd tickiti-mcp
npm install
npm run build

构建后的服务为 dist/server.js。

配置

服务会读取两个环境变量(如果任一变量缺失,启动时会立即报错):

变量用途
TICKITI_API_BASETickiti 安装的公开地址,末尾不加斜杠,例如 https://support.example.com。服务会追加 /api/v1/…。
TICKITI_API_TOKENBearer 令牌。其能力决定助手可以执行的操作。
多个实例

要通过一个服务访问多个 Tickiti 安装实例(例如生产环境和预发布环境),请添加 TICKITI_INSTANCES:可以是 JSON,也可以是 JSON 文件的路径,将名称映射到 { "base", "token" }。 TICKITI_API_BASE / TICKITI_API_TOKEN 仍为默认实例,其名称由 TICKITI_INSTANCE_NAME 指定(默认为 default)。

TICKITI_INSTANCE_NAME=production
TICKITI_INSTANCES='{"staging": {"base": "https://staging.example.com", "token": "…"}}'

之后,每个工具都会接受可选的 instance 参数;list_instances 会显示实例名称。

与 Claude Code 配合使用

claude mcp add tickiti \
  --env TICKITI_API_BASE=https://support.example.com \
  --env TICKITI_API_TOKEN=YOUR_TICKITI_API_TOKEN \
  -- node /absolute/path/to/tickiti-mcp/dist/server.js

使用 claude mcp list(或在会话中使用 /mcp)确认。使用 claude mcp remove tickiti 移除。

其他 MCP 客户端会在各自的设置文件中配置服务,但格式相同: 将 node /absolute/path/to/tickiti-mcp/dist/server.js 作为 stdio 服务运行,并在其环境中设置 TICKITI_API_BASE 和 TICKITI_API_TOKEN。

权限与安全

该服务不添加任何自身权限。每次调用都以令牌所属的员工用户身份运行,并受令牌权限限制——与直接调用 API 完全相同。若要限制助手的操作能力,请创建权限范围较窄的令牌:

  • 只读令牌(例如 tickets:read、reports:read)可让助手查看内容,但无法进行任何更改。
  • 仅为助手需要操作的类别授予写入权限。
  • 如果调用被拒绝,服务会说明原因(缺少权限、角色或套餐)。

写入工单的工具每次调用都会发送幂等键,因此重试请求不会创建重复的工单或回复。

长文本正文可通过 content_path(本地文件)提供,而非使用 content;文件和图像始终通过路径传递:服务会读取它们,因此其字节不会经过模型。

工作原理

文件作用
src/client.ts请求核心:基础 URL、Bearer 身份验证、幂等处理、错误规范化
src/result.ts将 API 结果映射为 MCP 工具结果封装
src/manifest.ts基于生成的路由清单提供辅助功能(查找、路径构建)
src/generated/manifest.ts自动生成的路由表(请勿编辑)
src/tools/tickets.ts工单写入——经过验证的输入架构
src/tools/ticket-reads.ts工单、回复和附件读取
src/tools/ticket-operations.ts删除、合并、关联、移动、发起人、删除附件、查找
src/tools/settings-writes.ts预设回复和模板
src/tools/admin.ts邮件、模板渲染和图像、视图、API 密钥、实例
src/tools/reads.ts命名读取工具(设置 / 工作流 / 报告)
src/tools/generic.tslist_endpoints + tickiti_call
src/param-hints.ts对于没有专用工具的端点,list_endpoints 显示的正文参数
src/server.ts入口点:注册工具,连接 stdio 传输
scripts/build-manifest.mjs根据 Tickiti 路由表重新生成清单

维护者

src/generated/manifest.ts 根据 Tickiti 自身的路由表(php artisan route:list --json)生成,因此权限、角色、套餐限制和路径参数都无需手动维护。API 更改后,请基于 Tickiti 检出版本重新生成:

TICKITI_DIR=/path/to/tickiti npm run manifest

tests/all-paths.mjs 中提供了对每个端点进行端到端遍历的测试(npm run test:paths,需要基础 URL、针对临时实例的全权限令牌),而 tests/smoke-tools.mjs 中则提供了工具注册的离线检查(npm run build && node tests/smoke-tools.mjs)。

有几个工具会调用 2026 年 10 月添加到 Tickiti 的端点。在较旧的安装版本中,这些调用会返回 404;list_endpoints 会描述最新的 API。

许可证

MIT © Oxenic

评论

支持 Markdown

第一次接触 MCP?

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

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