How to connect Freshdesk to Hermes Agent
Connect Freshdesk to Hermes Agent with ClawLink: paste your Freshdesk key once and 178 tools work from chat. No MCP server to run, nothing stored on your machine. Rate-limit and 403 fixes included.


Handle support tickets, contacts, and helpdesk operations. Once connected, Hermes Agent can read and act on Freshdesk from chat — pairing, token refresh, and tool wiring handled for you.
Most guides for giving Hermes Agent Freshdesk access start with registering your own OAuth app or pasting API keys into env files, then leave the token refresh and tool wiring to you. ClawLink gives Hermes a more practical Freshdesk setup: pair once in the browser and your always-on Hermes agent can act on Freshdesk for you, reading and doing real work on your behalf with no auth, token refresh, or tool wiring to build yourself.
Copy this prompt into Hermes to install the plugin and pair your account.
Set up ClawLink for Hermes and tell me when it's ready.
1. Install the plugin:
hermes plugins install ClawLink-HQ/hermes-plugin --enable
2. Start pairing. It prints an approval link, so show me the link and stop, don't wait:
hermes clawlink begin
3. I'll approve it in my browser, then reply "approved".
4. When I say approved, finish setup:
hermes clawlink finish
5. Then run `hermes clawlink test` and tell me whether ClawLink is ready.Setup
It takes three steps to connect Hermes to Freshdesk.
1Install and pair
Install the ClawLink plugin, then pair Hermes with a one-time browser approval:
hermes plugins install ClawLink-HQ/hermes-plugin --enable- 2
Connect Freshdesk
Paste your API key in the dashboard.
- 3
Use it from chat
Ask Hermes Agent: "What can you do with Freshdesk?"
Install by command
The prompt above walks Hermes through this. By hand, it is four commands and a browser approval:
hermes plugins install ClawLink-HQ/hermes-plugin --enable
hermes clawlink begin # prints an approval link — open it and approve
hermes clawlink finish # after approving in the browser
hermes clawlink testThen connect Freshdesk in the ClawLink dashboard — paste your Freshdesk API key once.
Verify the connection by asking Hermes:
Search my open tickets with freshdesk_get_search for status 2 (open), and for each one tell me the subject, requester, and how long it has been open. Do not add notes or change anything.
Using a different agent?
The Hermes plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:
npx -y @useclawlink/cli loginlogin opens the same browser approval and stores a credential locally. Once Freshdesk is connected in the dashboard, that agent calls the same 178 Freshdesk tools over MCP. Full setup for MCP clients and shell agents: connect apps to any AI agent.
Freshdesk MCP for Hermes
Looking for a Freshdesk MCP server for Hermes Agent? ClawLink connects Freshdesk to Hermes Agent and exposes 178 Freshdesk tools your agent can call over MCP, with hosted auth and nothing to run or maintain yourself. Using OpenClaw instead? The OpenClaw Freshdesk integration runs on the same hosted Freshdesk provider and the same 178 tools; OpenClaw installs ClawLink through a ClawHub skill instead of the Hermes pairing commands.
Freshdesk authenticates with an API key, so you do paste one: generate it in your Freshdesk profile, enter it once on the hosted setup page, and the 178 tools below are callable from Hermes chat. The description search results use for this flow, "hosted OAuth alternative", is a looser way of saying the same thing: the key lives server-side, no MCP server runs on your machine, no config file is edited, and nothing is stored on the machine you happen to be using. Two things make this route distinctive right now. Freshworks's own official Freshdesk MCP server is still an early-access Enterprise product and still requires an API key, so the "no MCP server to run" framing is not available from them. And searches for "Freshdesk AI agent without API key" are answered with Freshworks's in-product AI Agent Studio, which is a native bot, not an external agent; this integration is the external-agent route with the key held where no prompt can leak it.
What the Hermes Agent Freshdesk integration can do
178 Freshdesk tools are ready for Hermes Agent once the account is connected. The 30 below are the ones people reach for most; your agent can call all 178.
30 of 178 Freshdesk tools for Hermes
| Tool | What it does |
|---|---|
Add note to ticket freshdesk_add_note_to_ticket | Add a private or public note to a ticket |
Add ticket user access freshdesk_add_ticket_user_access | Add agent access to a specific ticket |
Add watcher freshdesk_add_watcher | Add the authenticated user as a watcher to a ticket |
Bulk update tickets freshdesk_bulk_update_tickets | Update multiple tickets simultaneously in bulk |
Create admin group freshdesk_create_admin_group | Create a new admin-level support agent group |
Create agents freshdesk_create_agents | Create multiple agents in Freshdesk |
Create canned response freshdesk_create_canned_response | Create a new canned response in Freshdesk |
Create companies freshdesk_create_companies | Create a new company in Freshdesk |
Create contact freshdesk_create_contact | Create a new contact in Freshdesk |
Currently authenticated agent freshdesk_currently_authenticated_agent | Retrieve profile information for the currently authenticated agent |
Get account freshdesk_get_account | View Freshdesk account information |
Get agent freshdesk_get_agent | Retrieve detailed information about a specific agent by ID |
Get agent availability freshdesk_get_agent_availability | Retrieve availability information for a specific agent |
Get agents freshdesk_get_agents | Search for agents using autocomplete functionality in Freshdesk |
Get business hours freshdesk_get_business_hours | Retrieves all business hours configurations from Freshdesk |
Get canned response folders freshdesk_get_canned_response_folders | Retrieve all canned response folders from Freshdesk |
Get companies freshdesk_get_companies | Retrieve all companies from a Freshdesk account with pagination support |
Get company freshdesk_get_company | Retrieve detailed information about a specific company by ID |
Get company fields freshdesk_get_company_fields | Retrieve all company fields configured in Freshdesk |
Get contact freshdesk_get_contact | Retrieve detailed information about a specific contact by ID |
Get contact fields freshdesk_get_contact_fields | Retrieve all contact fields configured in Freshdesk |
Get contacts freshdesk_get_contacts | Retrieve all contacts from a Freshdesk account |
Get discussion category freshdesk_get_discussion_category | View details of a specific forum category in Freshdesk |
Get discussion topic freshdesk_get_discussion_topic | Retrieve detailed information about a specific discussion topic by ID |
Get email mailbox freshdesk_get_email_mailbox | Retrieve detailed information about a specific email mailbox by ID |
Get folder responses freshdesk_get_folder_responses | Retrieve all canned responses within a specific folder in Freshdesk |
Get imported contacts freshdesk_get_imported_contacts | Retrieve details of all contact import operations in Freshdesk |
Get job freshdesk_get_job | View the status of a bulk job operation |
Get scenario automations json freshdesk_get_scenario_automations_json | List all scenario-based automations in Freshdesk |
Get search freshdesk_get_search | Search and filter tickets in Freshdesk using flexible query syntax |
Try it: find the Freshdesk tool you need
Browse the 30 Freshdesk tools
Click any tool to see exactly what Hermes can do and copy a ready-to-use prompt.
Example prompts
Search my open tickets with freshdesk_get_search for status 2 (open), and for each one tell me the subject, requester, and how long it has been open. Do not add notes or change anything.
For ticket <ticket id>, add a note with freshdesk_add_note_to_ticket summarizing this thread: <paste thread>. Mark the note as private unless I say otherwise.
Show me the tickets that match <criteria> using freshdesk_get_search, then draft the bulk update with freshdesk_bulk_update_tickets: new group, status, and the note to append. Do not execute it until I approve the draft.
Add the current user as a watcher on ticket <ticket id> with freshdesk_add_watcher, then tell me who the current assignee is and when the ticket was last updated.
How the Freshdesk tools behave
Details that decide whether a Freshdesk prompt is a quick answer or a customer-visible write.
- Notes are customer-visible depending on your settings.
freshdesk_add_note_to_ticketsupports a private flag; say "private note" in the prompt or the agent may pick the wrong default. - Search is the entry point.
freshdesk_get_searchis how tickets and contacts are found by anything other than a known id, and it is the tool to call before an id-based tool 403s on an invented id. - Bulk updates are one call with wide effect.
freshdesk_bulk_update_ticketschanges many tickets at once, which is powerful and worth an explicit approval step in the prompt. - Agents and availability are readable.
freshdesk_get_agentsandfreshdesk_get_agent_availabilityanswer staffing questions without touching Freshdesk's admin UI. - Business hours and mailboxes are data.
freshdesk_get_business_hoursandfreshdesk_get_email_mailboxlet an agent reason about SLA-ish questions like "is anyone on duty".
ClawLink vs. building it yourself
The alternative to ClawLink is usually manual API key setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Freshdesk working from chat.
| Manual | ClawLink | |
|---|---|---|
| Credential handling | Collect, validate, store, and rotate the Freshdesk API key yourself, then make sure every tool call uses the right account. | Users complete the hosted ClawLink setup once and the connected Freshdesk account becomes available to the agent without you building credential management. |
| Ongoing maintenance | You own refresh logic, permission debugging, environment config, and every provider-specific edge case for Freshdesk. | ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure. |
| Agent usability | You still need to expose the right Freshdesk actions to the runtime in a format your agent can reliably use. | 178 tools for Freshdesk are already exposed through ClawLink, so the agent can read and act from chat immediately. |
ClawLink vs. Composio
Composio also exposes Freshdesk to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for Hermes Agent users instead. You install the plugin once, connect Freshdesk in the browser, and the 178 tools above work from chat. There is no SDK and no config file, and the Freshdesk key you paste at setup is stored server-side rather than kept in your environment. Choosing between them? Read the full Composio alternatives comparison.
Troubleshooting
Hermes paired but still can't use Freshdesk
Pairing is a two-step handshake: run hermes clawlink begin, approve the link in your browser, then run hermes clawlink finish. If you ran finish before approving, or the approval link expired, run hermes clawlink begin again to get a fresh link. Confirm the plugin was installed with --enable, then verify with hermes clawlink test.
Connection succeeds but no tools appear
Reconnect Freshdesk from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.
"Tool schema not loaded yet" error when calling Freshdesk tools
Freshdesk tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every Freshdesk call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.
Freshdesk returns 403 or "permission denied" on one action while others work
Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.
Freshdesk returns 403 insufficient permissions although the account is connected
Freshdesk answers with permission errors in two situations, and the diagnosis order matters. First, the connected user's role and scope: an agent key whose Freshdesk user lacks access to a ticket, group, or company returns 403 for exactly those objects, and Freshdesk's own support article names this error class as "you are not allowed to access this page". Second, the arguments: a placeholder or invented ticket or contact id returns the same permission-shaped error because Freshdesk hides what the account cannot see. Check the id the agent sent before reissuing credentials, and only reconnect after both are ruled out.
Ask the agent to diagnose it:
Call freshdesk_currently_authenticated_agent and freshdesk_get_account. Tell me which Freshdesk user this connection acts as and which plan the account is on, then quote the exact error from the failed call. Do not retry it yet.Freshdesk starts returning 429 or the agent stalls mid-bulk-update
Freshworks documents rate limits of 1000 requests per hour on higher plans and per-minute limits on lower ones, and a bulk update of many tickets is the traffic shape that meets them: the API accepts the call and the allowance drains in one sweep. A 429 is the hour being spent, so retrying immediately is wasted traffic. Change the shape of the work: split a large update into batches across turns, and have the agent report how many requests it has made when it hits a 429 rather than retrying in a loop.
Ask the agent to diagnose it:
Tell me how many Freshdesk requests you have made in the last hour and what the last bulk call touched. Quote any rate-limit text from the last response. Do not call Freshdesk again until I reply.Freshdesk tools are missing, or one tool name is not found
Two different failures. If Hermes shows no Freshdesk tools at all, the connection or the pairing is incomplete: confirm the plugin was installed with --enable, that both hermes clawlink begin and hermes clawlink finish ran, and that Freshdesk shows as connected in the dashboard, then start a fresh chat. If most tools work and a single name fails, the name is wrong rather than missing, and the error lists the closest real ones. Search results teach "verify your API key and domain" for this symptom, which is the self-hosted version of the same failure; here the key is already verified at setup, so the name check is the relevant one. There is also a first-call timing case unique to this setup: schemas load on demand, so the opening Freshdesk call in a fresh session can arrive before the catalog and needs one retry.
Ask the agent to diagnose it:
List the Freshdesk tools you actually have access to. If there are none, say so plainly. If there are, tell me which one searches tickets and use that exact name.API key setup works but results look incomplete
Double-check that the API key for Freshdesk has the right scopes or account access. A valid key can still be too limited for some reads or writes.
FAQ
Is there a Hermes Agent Freshdesk integration?
Yes. ClawLink is the fastest way to connect Hermes to Freshdesk: link your Freshdesk account once in the browser and Hermes Agent can call the Freshdesk API through 178 ready-made tools — no custom code or token handling.
How do I connect Freshdesk to Hermes with ClawLink?
Install the plugin with hermes plugins install ClawLink-HQ/hermes-plugin --enable, then pair once: run hermes clawlink begin, approve the link in your browser, and run hermes clawlink finish. Connect Freshdesk in the dashboard and Hermes can use it from the next message — no config files, and the Freshdesk key you paste is stored server-side instead of in your environment.
How long does it take to connect Freshdesk to Hermes Agent?
About two minutes. Sign in, click Connect next to Freshdesk in the dashboard, authenticate, and Hermes Agent can use it from the next chat message.
Why use ClawLink instead of wiring Freshdesk up myself?
The alternative to ClawLink is usually manual API key setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Freshdesk working from chat.
Why does this page say "paste one key" instead of "no API keys"?
Because Freshdesk's API is key-authenticated, and an honest page says so. The key is entered once on the hosted setup page and held server-side; the agent never sees it, it is not written to any .env or config file on your machine, and it can be revoked from the dashboard at any time. The AI Overview that quotes ClawLink calls this "one-click hosted OAuth", which is the same flow described loosely: the key is the credential, the hosting is what removes the setup. The claim that matters, and the one the winning citations repeat, is that no configuration files are involved and nothing runs locally.
What can the agent do in Freshdesk?
The ticket surface is the core: add notes and watchers, bulk-update tickets, create canned responses, and search tickets, contacts, companies, and agents. The read side covers agents and their availability, business hours, email mailboxes, discussion topics, and the account's company and contact fields. The writes to be deliberate about are notes on tickets, which customers can see depending on your Freshdesk settings, and bulk updates, which touch many tickets in one call.
Is this Freshdesk's own AI agent, or something separate?
Separate. Freshworks sells its own in-product AI Agent Studio (an Omni-plan feature) and an API Actions library, and those are what searches for "Freshdesk AI agent without API key" surface first. They are native to Freshdesk and configure through the product. This integration is the external-agent route: Hermes is the agent, Freshdesk is one connected account, and the same 178 tools are callable alongside your other integrations.
Does the official Freshdesk MCP server make this unnecessary?
No, and the comparison is worth being exact about. Freshdesk's official MCP server is in early access, targets Enterprise plans, and still authenticates with an API key, so it does not remove the setup this page removes: the key still has to be created and stored somewhere you run a server. This integration holds the key for you, exposes 178 tools from chat, and needs nothing running. If you are on a plan where the official EAP is available and want a vendor-managed MCP endpoint, that is a real option; for an agent that works across apps, the hosted route is the one without the server.
Is it safe to connect Freshdesk to an AI agent?
Judge it by the mechanics. The credential is an API key held server-side, never shown to the agent and never written to your machine, and revoking it in the dashboard kills access immediately. The permission question is a Freshdesk account question: connect a key whose user has the roles the agent should act with, and check the "you are not allowed to access this page" error class when a tool fails, since Freshdesk answers restricted objects with permission errors rather than not-found. For writes like notes and bulk updates, tell the agent to draft before it changes anything.
Hermes paired but still can't use Freshdesk
Pairing is a two-step handshake: run hermes clawlink begin, approve the link in your browser, then run hermes clawlink finish. If you ran finish before approving, or the approval link expired, run hermes clawlink begin again to get a fresh link. Confirm the plugin was installed with --enable, then verify with hermes clawlink test.
Related
Connect Gleap
Gleap is an all-in-one customer feedback tool for apps and websites, enabling direct communication with users to build better software by discovering their everyday pain points.
Intercom tools
Manage conversations, contacts, companies, and support articles
Gorgias
E-commerce helpdesk for managing customer support tickets