Freshdesk MCP 服务器
一个与 Freshdesk 集成的 MCP 服务器实现,使 AI 模型能够与 Freshdesk 模块交互并执行各种支持操作。
功能
- Freshdesk 集成:与 Freshdesk API 端点无缝交互
- AI 模型支持:使 AI 模型能够通过 Freshdesk 执行支持操作
- 自动工单管理:处理工单创建、更新和回复
组件
工具
该服务器提供多种 Freshdesk 操作工具:
-
create_ticket:创建新的支持工单- 输入:
subject(字符串, 必填):工单主题description(字符串, 必填):工单描述source(数字, 必填):工单来源代码priority(数字, 必填):工单优先级status(数字, 必填):工单状态代码email(字符串, 可选):请求者的邮箱requester_id(数字, 可选):请求者的 IDcustom_fields(对象, 可选):设置在工单上的自定义字段additional_fields(对象, 可选):额外的顶层字段
- 输入:
-
update_ticket:更新现有工单- 输入:
ticket_id(数字, 必填):要更新的工单 IDticket_fields(对象, 必填):要更新的字段
- 输入:
-
delete_ticket:删除工单- 输入:
ticket_id(数字, 必填):要删除的工单 ID
- 输入:
-
search_tickets:根据条件搜索工单- 输入:
query(字符串, 必填):搜索查询字符串
- 输入:
-
get_ticket_fields:获取所有工单字段- 输入:
- None
- 输入:
-
get_tickets:获取所有工单- 输入:
page(数字, 可选):要获取的页码per_page(数字, 可选):每页工单数量
- 输入:
-
get_ticket:获取单个工单- 输入:
ticket_id(数字, 必填):要获取的工单 ID
- 输入:
-
get_ticket_conversation:获取工单对话- 输入:
ticket_id(数字, 必填):工单 ID
- 输入:
-
create_ticket_reply:回复工单- 输入:
ticket_id(数字, 必填):工单 IDbody(字符串, 必填):回复内容
- 输入:
-
create_ticket_note:为工单添加备注- 输入:
ticket_id(数字, 必填):工单 IDbody(字符串, 必填):备注内容
- 输入:
-
update_ticket_conversation:更新对话- 输入:
conversation_id(数字, 必填):对话 IDbody(字符串, 必填):更新内容
- 输入:
-
view_ticket_summary:获取工单摘要- 输入:
ticket_id(数字, 必填):工单 ID
- 输入:
-
update_ticket_summary:更新工单摘要- 输入:
ticket_id(数字, 必填):工单 IDbody(字符串, 必填):新的摘要内容
- 输入:
-
delete_ticket_summary:删除工单摘要- 输入:
ticket_id(数字, 必填):工单 ID
- 输入:
-
get_agents:获取所有代理- 输入:
page(数字, 可选):页码per_page(数字, 可选):每页代理数量
- 输入:
-
view_agent:获取单个代理- 输入:
agent_id(数字, 必填):代理 ID
- 输入:
-
create_agent:创建新代理- 输入:
agent_fields(对象, 必填):代理详情
- 输入:
-
update_agent:更新代理- 输入:
agent_id(数字, 必填):代理 IDagent_fields(对象, 必填):要更新的字段
- 输入:
-
search_agents:搜索代理- 输入:
query(字符串, 必填):搜索查询
- 输入:
-
list_contacts:获取所有联系人- 输入:
page(数字, 可选):页码per_page(数字, 可选):每页联系人数量
- 输入:
-
get_contact:获取单个联系人- 输入:
contact_id(数字, 必填):联系人 ID
- 输入:
-
search_contacts:搜索联系人- 输入:
query(字符串, 必填):搜索查询
- 输入:
-
update_contact:更新联系人- 输入:
contact_id(数字, 必填):联系人 IDcontact_fields(对象, 必填):要更新的字段
- 输入:
-
list_companies:获取所有公司- 输入:
page(数字, 可选):页码per_page(数字, 可选):每页公司数量
- 输入:
-
view_company:获取单个公司- 输入:
company_id(数字, 必填):公司 ID
- 输入:
-
search_companies:搜索公司- 输入:
query(字符串, 必填):搜索查询
- 输入:
-
find_company_by_name:按名称查找公司- 输入:
name(字符串, 必填):公司名称
- 输入:
-
list_company_fields:获取所有公司字段- 输入:
- None
- 输入:
入门指南
通过 Smithery 安装
要自动通过 Smithery 安装 freshdesk_mcp for Claude Desktop:
npx -y @smithery/cli install @effytech/freshdesk_mcp --client claude
前置条件
- 一个 Freshdesk 账户(在 freshdesk.com 注册)
- Freshdesk API 密钥
- 安装了
uvx(pip install uv或brew install uv)
配置
- 从 Freshdesk 管理面板生成您的 Freshdesk API 密钥
- 设置您的域名和认证详细信息
与 Claude Desktop 一起使用
- 如果尚未安装,请安装 Claude Desktop
- 将以下配置添加到您的
claude_desktop_config.json:
"mcpServers": {
"freshdesk-mcp": {
"command": "uvx",
"args": [
"freshdesk-mcp"
],
"env": {
"FRESHDESK_API_KEY": "<YOUR_FRESHDESK_API_KEY>",
"FRESHDESK_DOMAIN": "<YOUR_FRESHDESK_DOMAIN>"
}
}
}
重要提示:
- 将
YOUR_FRESHDESK_API_KEY替换为您的实际 Freshdesk API 密钥 - 将
YOUR_FRESHDESK_DOMAIN替换为您的 Freshdesk 域名(例如yourcompany.freshdesk.com)
示例操作
配置完成后,您可以要求 Claude 执行类似以下操作:
- "创建一个主题为 '客户 A101 的支付问题' 且描述为 '联系客户 A101 一个月内的支付问题' 的新工单,客户邮箱为 a101@acme.com,并设置优先级为高"
- "将工单 #12345 的状态更新为 '已解决'"
- "列出所有分配给代理 John Doe 的高优先级工单"
- "列出客户 A101 过去 30 天内的所有工单"
测试
为测试目的,您可以手动启动服务器:
uvx freshdesk-mcp --env FRESHDESK_API_KEY=<your_api_key> --env FRESHDESK_DOMAIN=<your_domain>
故障排除
- 验证您的 Freshdesk API 密钥和域名是否正确
- 确保与 Freshdesk 服务器的网络连接正常
- 检查 API 速率限制和配额
- 验证
uvx命令是否存在于您的 PATH 中
许可证
此 MCP 服务器根据 MIT 许可证授权。有关完整详细信息,请参阅项目存储库中的 LICENSE 文件。