
Freshdesk
io.github.wyre-technology由 GitHub 账号 wyre-technology 发布v1.0.8更新于 Oct 24, 2026
MCP server for Freshdesk — tickets, contacts, companies, agents, groups, and knowledge base.
概览
让助手以结构化方式访问 Freshdesk 支持平台的数据,包括工单、联系人、公司、客服人员、小组和知识库。
- 可以做什么
- 封装 Freshdesk 客户支持平台,使助手可以搜索、列出、获取、创建和更新工单、联系人、公司、客服人员、小组以及解决方案文章。还覆盖工单回复和备注、会话、SLA 策略、工作时间和预设回复。工具通过决策树导航暴露:顶层导航工具一次展示一个领域的工具,返回工具可回到顶层。状态工具会执行实时连通性检查。
- 适用场景
- 当助手需要读取或操作 Freshdesk 支持数据时适用,例如查询工单或联系人、起草回复或内部备注、浏览知识库内容。对于已经使用 Freshdesk 的支持与客服工作流,值得添加。
- 运行要求
- 以本地进程通过 stdio 运行(也发布了 OCI 镜像)。需要 Freshdesk 账户子域名(FRESHDESK_DOMAIN)和 API 密钥(FRESHDESK_API_KEY),密钥可在 Freshdesk 门户的 Profile Settings 中找到。AUTH_MODE 选择本地环境凭据或网关请求头注入;MCP_TRANSPORT 和 LOG_LEVEL 为可选项。需要访问 Freshdesk 的网络连接。
安装
在 SourceWeft 中
- 打开 控制台中的 Freshdesk,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Freshdesk MCP Server
[Build Status] [License] [Node.js]
A Model Context Protocol (MCP) server that provides AI assistants with structured access to the Freshdesk customer support platform — tickets, contacts, companies, agents, groups, the knowledge base, and SLA/business-hours configuration.
Note: This project is maintained by Wyre Technology. It wraps the published
@wyre-technology/node-freshdeskSDK.
Quick Start
The primary deployment is through the WYRE MCP Gateway, which hosts the containerized server and injects per-request credentials. To run it yourself:
Claude Code (CLI):
FRESHDESK_DOMAIN is the part before .freshdesk.com (for https://acme.freshdesk.com it is acme). Find your FRESHDESK_API_KEY in the Freshdesk portal under Profile Settings.
Features
- 🔌 MCP Protocol Compliance: Tools, prompts, and elicitation support
- 🎫 Full Helpdesk Coverage: Tickets, contacts, companies, agents, groups, solutions, SLA policies, business hours, and canned responses
- 🌳 Decision-Tree Navigation: Start at
freshdesk_navigate, enter a domain to reveal its tools, andfreshdesk_backto return — keeping the tool list small and focused - ⚠️ Destructive-Action Guardrails: Irreversible and high-impact tools are clearly flagged and confirmed via elicitation before they run
- 🔒 Secure Authentication: HTTP Basic Auth with your Freshdesk API key (domain + key)
- 🌐 Dual Transport: stdio (local) and Streamable HTTP (remote/Docker/gateway)
- 🐳 Docker Ready: Containerized deployment with HTTP transport and health checks
Connecting via the Gateway
When AUTH_MODE=gateway, every /mcp request must include credentials injected by the WYRE MCP Gateway. A request missing either header returns 401 and does not fall back to FRESHDESK_DOMAIN or FRESHDESK_API_KEY in the process environment.
Each request is stateless: the gateway provides the credentials, and the server rebuilds its Freshdesk client for that request only. When CONDUIT_S2S_SECRET is set, the request must also include a valid X-Gateway-S2S header.
Configuration
Copy .env.example and set the variables below. The stdio transport reads FRESHDESK_DOMAIN and FRESHDESK_API_KEY and does not use CONDUIT_S2S_SECRET.
/health stays unauthenticated and does not read credentials.
HTTP authentication
With MCP_TRANSPORT=http and CONDUIT_S2S_SECRET set, every /mcp request must include X-Gateway-S2S:
v1 is the lowercase hex HMAC-SHA256 of the ASCII message t=<unix seconds>, keyed by CONDUIT_S2S_SECRET. The timestamp must be within 300 seconds of the server clock. A missing or invalid header returns 401 before any vendor credential is read. The secret is never written to logs or error bodies.
In AUTH_MODE=gateway, /mcp also requires x-freshdesk-domain and x-freshdesk-api-key. Those headers are the only credential source for the request. A missing header returns 401. The server does not fall back to FRESHDESK_DOMAIN or FRESHDESK_API_KEY in the process environment.
Single-tenant HTTP (AUTH_MODE=env) still requires a valid X-Gateway-S2S header. Vendor credentials then come from FRESHDESK_DOMAIN and FRESHDESK_API_KEY.
Tool Overview
The server uses decision-tree navigation. At the top level you see only freshdesk_navigate, freshdesk_back, and freshdesk_status. Call freshdesk_navigate with a domain to reveal that domain's tools; call freshdesk_back to return to the top.
* = Tier A (irreversible delete) — flagged ⚠ DESTRUCTIVE — IRREVERSIBLE, requires confirmation.
† = Tier B (high-impact reversible) — flagged ⚠ HIGH-IMPACT, requires confirmation.
Read tools (search/list/get/autocomplete/status) carry no warning and are marked read-only.
freshdesk_status performs a live connectivity check by calling agents/me.
Docker Deployment
The image listens on 0.0.0.0 inside the container (MCP_HTTP_HOST) and defaults to AUTH_MODE=gateway. Publish the port on loopback and pass the S2S secret. In gateway mode the domain and API key arrive on each request as x-freshdesk-domain and x-freshdesk-api-key. They are not read from the environment.
Compose refuses to start when CONDUIT_S2S_SECRET is unset, sets AUTH_MODE=gateway, publishes 127.0.0.1:8080:8080, and does not set FRESHDESK_DOMAIN, FRESHDESK_API_KEY, or env_file:
Single-tenant HTTP (AUTH_MODE=env) still requires the S2S secret, then uses FRESHDESK_DOMAIN and FRESHDESK_API_KEY:
Local HTTP without a secret is development-only. It binds 127.0.0.1 even when MCP_HTTP_HOST is 0.0.0.0, and logs a warning. A known placeholder secret still refuses to start:
See docker-compose.yml. The build installs @wyre-technology/node-freshdesk from GitHub Packages via a
BuildKit npmrc secret (never baked into a layer):
Development
Testing
Contributing
See CONTRIBUTING.md for guidelines.
License
Apache 2.0 — Copyright WYRE Technology
来源:README.md,提交 fd1ba0d
工具
0版本历史
1- v1.0.8最新Sep 16, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。