Skip to content

Connectors · Service desk & support

Freshservice MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Freshservice and the rest of your systems. It gives your agent 520 Freshservice actions (238 reads, 196 writes and 86 that wait for a confirmation) and holds the Freshservice credential itself, so the agent never does. It paces Freshservice's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "freshservice.tickets.tickets_list",  intent: "check which Freshservice account is connected"}# View List of Tickets · read · 1 upstream call
  • 520actionsin one signed file
  • 238readlook, never change
  • 196writecreate and update
  • 86wait for a yesdestructive, confirmed first

Set up

Connect Freshservice in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect Freshservice.

    Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.

    • api_keyFreshservice API key
    • domain_hostWhere your Freshservice lives: your domain host
    account { op: "connections.requirements", service: "freshservice" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "freshservice.tickets.tickets_list" }# view list of tickets · read · 1 upstream callcheck { action: "freshservice.tickets.tickets_create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Freshservice at a glance

Sign-in
Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
You provide
api_key
Setup fields
domain_host
Limits we pace to
200 calls a minute, per connection
API covered
Freshservice API 2, at your Freshservice instance's API base URL, which you enter when connecting (path /api/v2)
Built from
Freshservice's documentation, read 8 September 2026api.freshservice.com
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
238 of 238 reads, for up to an hour; a write clears what it affects
Ready-made plans
10 in the store
Shared entities
16, so ask can line Freshservice up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Freshservice.

520 actions in 33 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 238readlook, never change
  • 196writecreate and update
  • 86destructivewait for a confirmation
  1. Itam

    49

    23 read · 18 write · 8 destructive

    View List of Assets · List all Associated Requests · List all associated Contracts · List all Asset Components

  2. Delivery

    48

    21 read · 17 write · 10 destructive

    List all Projects · List all Projects · Create a Project · Create a Project

  3. ITSM

    45

    15 read · 23 write · 7 destructive

    View List of Tickets · Create a Ticket · Create a Child Ticket · View all Tasks

  4. Status page

    39

    18 read · 14 write · 7 destructive

    List all status pages · List all incident statuses · List all maintenance statuses · Create a maintenance from a change

  5. Change

    35

    14 read · 15 write · 6 destructive

    View List of Changes · View all Tasks · Create a Change · Create a Task

  6. Oncall

    34

    23 read · 8 write · 3 destructive

    Create a schedule · Create an escalation policy · View all schedules · Filter schedules

  7. Solutions

    25

    8 read · 11 write · 6 destructive

    View List of Solution Article · Create Solution Article · Search Solution Articles · View Solution Article

  8. Release

    24

    10 read · 10 write · 4 destructive

    View all Tasks · Create a Task · List all Time Entries · Create a Time Entry

25 more areas · 221 actions
  • Problem 23
  • Admin 20
  • Software 17
  • Users 16
  • Catalogue 14
  • Groups 13
  • Alerts 13
  • Contracts 12
  • Cloud 11
  • Contacts 11
  • Major incident 10
  • Journeys 10
  • Departments 7
  • Procurement 6
  • Locations 6
  • Catalogue 5
  • Announcements 5
  • Vendors 5
  • Offboarding 5
  • Onboarding 5
  • Roles 2
  • Attachments 2
  • Approval 1
  • Audit 1
  • Sla 1

Top actions

The Freshservice API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 283 of Freshservice's 326 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
freshservice.tickets.tickets_listView List of TicketsView List of Tickets — GET /tickets on the Freshservice v2 API.readservice.ticket.list56 connectors
freshservice.agents.agents_listList all AgentsList all Agents — GET /agents on the Freshservice v2 API.readidentity.user.list474 connectors
freshservice.requesters.requesters_listList All Requesters/ContactsList All Requesters/Contacts — GET /requesters on the Freshservice v2 API.readcrm.contact.list177 connectors
freshservice.assets.assets_listView List of AssetsView List of Assets — GET /assets on the Freshservice v2 API.readasset.asset.list42 connectors
freshservice.assets.assets_requests_listList all Associated RequestsList all Associated Requests — GET /assets/[display_id]/requests on the Freshservice v2 API.readservice.ticket.list56 connectors
freshservice.tickets.tickets_createCreate a TicketCreate a Ticket — POST /tickets on the Freshservice v2 API.writeservice.ticket.create54 connectors
freshservice.tickets.tickets_create_child_ticket_createCreate a Child TicketCreate a Child Ticket — POST /tickets/[parent_id]/create_child_ticket on the Freshservice v2 API.writeservice.ticket.create54 connectors
freshservice.tickets.tickets_tasks_listView all TasksView all Tasks — GET /tickets/[id]/tasks on the Freshservice v2 API.readservice.ticket_task.list6 connectors
freshservice.changes.changes_listView List of ChangesView List of Changes — GET /changes on the Freshservice v2 API.readservice.change.list5 connectors
freshservice.tickets.tickets_time_entries_listList all Time Entries of a TicketList all Time Entries of a Ticket — GET /tickets/[ticket_id]/time_entries on the Freshservice v2 API.readwork.time_entry.list59 connectors
freshservice.agents.agents_createCreate an AgentCreate an Agent — POST /agents on the Freshservice v2 API.writeidentity.user.create262 connectors
freshservice.tickets.tickets_deleteDelete a TicketDelete a Ticket — DELETE /tickets/[id] on the Freshservice v2 API.destructiveservice.ticket.delete42 connectors

Try it

Prompts to paste into Claude.

Each one names the Freshservice actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Which Freshservice tickets have been open the longest? Show me the ten oldest with their status.

    callsfreshservice.tickets.tickets_list

  2. Plandestructive

    Offboard a leaver and revoke their delegation in Freshservice. Ask me before anything is sent or changed.

    callsfreshservice.offboarding.offboarding_requests_getfreshservice.offboarding.offboarding_requests_tickets_listfreshservice.delegation.users_delegation_getfreshservice.delegation.users_delegation_deletefreshservice.tickets.tickets_create

  3. Planwrite

    Create a new agent and confirm their setup in Freshservice.

    callsfreshservice.roles.roles_listfreshservice.agents.agents_fields_list_aliasfreshservice.agents.agents_createfreshservice.agents.agents_getfreshservice.tickets.tickets_create

  4. Writewrite

    Create a Ticket in Freshservice. Show me exactly what you will send before you save it.

    callsfreshservice.tickets.tickets_create

  5. Across systemsread

    Which contacts are in both Freshservice and HaloPSA, and how many are in only one of them?

    callsfreshservice.requesters.requesters_listhalopsa.users.list

Across your systems

Freshservice, joined to the rest of your business.

One ask fetches from Freshservice and another system, joins the rows on the same customer on our side, and hands your agent the answer, not every row.

  • Which contacts are in both Freshservice and HaloPSA, and how many are in only one of them?

    freshservice.requesters.requesters_list + halopsa.users.list, on crm.contact · HaloPSA

  • Which contacts are in both Freshservice and NetSuite, and how many are in only one of them?

    freshservice.requesters.requesters_list + netsuite.views.contacts, on crm.contact · NetSuite

Also mapped by other connectorsidentity.user 517identity.group 239crm.contact 192work.project 116service.ticket 62crm.location 49asset.asset 40work.time_entry 40
ask
ask {  intent: "which contacts are in both Freshservice and HaloPSA, and how many are in only one of them",  steps: [    { action: "freshservice.requesters.requesters_list", as: "people", input: {}, limit: 100, max_pages: 5 },    { action: "halopsa.users.list", as: "people2", input: {}, limit: 100, max_pages: 5 },    { join: {        left: "people",        right: "people2",        on: "crm.contact",        group_by: "people.email",        select: ["people.email", "count(people2.id) as in_halopsa"]    } }  ]}
Example. Run it through check first: it validates the steps and prices them, and it is free.

The plan store

Ready-made plans for Freshservice.

10 plans in the store. Install one and your agent runs it by name; the reply says which connections are still missing. A schedule can run a plan on a timetable. There are no triggers or webhooks, by design.

  1. Log an agent's time against a batch of tickets

    Use it when An agent needs time booked against every ticket matching a filter in one pass.

    Effect
    write
    Steps
    2 · loops
    Needs
    agent id, filter, note and time spent
    Install
    freshservice-log-time-across-tickets
  2. Triage stale tickets and log a chase note

    Use it when An agent needs to chase tickets that have gone quiet and leave a visible follow-up on each one.

    Effect
    write
    Steps
    2 · loops
    Needs
    chase body, since and workspace id
    Install
    freshservice-triage-stale-tickets
  3. Create a new agent and confirm their setup

    Use it when A new helpdesk agent is joining and needs an account plus an onboarding ticket raised for them.

    Effect
    write
    Steps
    5
    Needs
    email, first name, group id and last name
    Install
    freshservice-onboard-new-agent
  4. Publish a major incident to the status page

    Use it when A major incident has started and customers need it announced on the public status page.

    Effect
    write
    Steps
    5
    Needs
    description, status page id and subject
    Install
    freshservice-publish-incident-status-update
  5. Spin up a delivery project for an approved change

    Use it when A change has been approved and the work behind it needs a project with tasks rather than a single ticket.

    Effect
    write
    Steps
    5 · loops
    Needs
    manager id, member ids, project name and workstreams
    Install
    freshservice-spin-up-project-from-change
  6. Remind a change approver and note the nudge

    Use it when A change is blocked on one approver and someone wants them reminded with the chase recorded on the change.

    Effect
    write
    Steps
    6
    Needs
    approval id and change id
    Install
    freshservice-remind-change-approvers
  7. Raise a purchase order from a renewing contract

    Use it when A contract is renewing and procurement needs a purchase order raised against its vendor with sign-off on the cost.

    A person decidesRaise a purchase order with name to renew contract name at cost.

    Effect
    write
    Steps
    7
    Needs
    contract id, po name and vendor id
    Install
    freshservice-raise-purchase-order-for-contract
  8. Merge duplicate requesters after sign-off

    Use it when The same person exists several times in the requester list and the records must be merged into one.

    A person decidesMerge requesters secondary requesters into requester requester id for email. This cannot be undone.

    Effect
    destructive
    Steps
    4
    Needs
    email, requester id and secondary requesters
    Install
    freshservice-merge-duplicate-requesters
  9. Review a problem record and delete it after sign-off

    Use it when Someone wants a duplicate or invalid problem record removed but a human must confirm the deletion first.

    A person decidesPermanently delete problem id — subject — and everything attached to it.

    Effect
    destructive
    Steps
    6
    Needs
    problem id
    Install
    freshservice-close-problem-with-approval
  10. Offboard a leaver and revoke their delegation

    Use it when Someone is leaving and their delegated access must be revoked with HR confirming first.

    A person decidesRevoke all delegated access held by user user id as part of offboarding request offboarding request id.

    Effect
    destructive
    Steps
    6
    Needs
    offboarding request id and user id
    Install
    freshservice-offboard-leaver-access
install a plan
account { op: "plans.install", slug: "freshservice-log-time-across-tickets" }
# then ask for it by name; a schedule can run it on a timetable

Governance for Freshservice

Destructive actions wait for a yes.

86 Freshservice actions are destructive. The first 10:

  • Delete a Ticketfreshservice.tickets.tickets_delete
  • Forget an Agentfreshservice.agents.agents_forget_delete
  • Forget a Requester/Contactfreshservice.requesters.requesters_forget_delete
  • Delete an Assetfreshservice.assets.assets_delete
  • Delete an Asset Permanentlyfreshservice.assets.assets_delete_forever_update
  • Delete a Taskfreshservice.changes.changes_tasks_delete
  • Delete a Taskfreshservice.tickets.tickets_tasks_delete
  • Delete a Taskfreshservice.problems.problems_tasks_delete
  • Delete a Changefreshservice.changes.changes_delete
  • Delete a Time Entryfreshservice.changes.changes_time_entries_delete

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

dofreshservice.tickets.tickets_deleteconfirm_policy: human

Delete a Ticket?

intent: the user asked me to delete a Ticket

run suspended · waiting for a named person · key freshservice-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "freshservice-agent",  allowed_actions: ["freshservice.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "freshservice.tickets.tickets_delete", approver: "[email protected]" },    { match: "freshservice.agents.agents_forget_delete", approver: "[email protected]" },    { match: "freshservice.requesters.requesters_forget_delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to Freshservice only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Freshservice costs on actionlake.

Every Freshservice action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Freshservice refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 520 Freshservice actions
  • 152actions pageeach page of a long list is one call
  • 238reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Freshservice action.

520 actions by area: the id your agent calls, what it does, and its effect.

Itam49
  • freshservice.assets.assets_components_listList all Asset Componentsread
  • freshservice.assets.assets_contracts_listList all associated Contractsread
  • freshservice.assets.assets_listView List of Assetsread
  • freshservice.assets.assets_requests_listList all Associated Requestsread
  • freshservice.asset_types.asset_types_createCreate an Asset Typewrite
  • freshservice.asset_types.asset_types_deleteDelete an Asset Typedestructive
  • and 43 more in this area
Delivery48
  • freshservice.pm_projects.pm_projects_createCreate a Projectwrite
  • freshservice.pm_projects.pm_projects_listList all Projectsread
  • freshservice.projects.projects_createCreate a Projectwrite
  • freshservice.projects.projects_listList all Projectsread
  • freshservice.pm_projects.pm_project_fields_listView Project Fieldsread
  • freshservice.pm_projects.pm_project_templates_listView Project Templatesread
  • and 42 more in this area
ITSM45
  • freshservice.tickets.tickets_createCreate a Ticketwrite
  • freshservice.tickets.tickets_create_child_ticket_createCreate a Child Ticketwrite
  • freshservice.tickets.tickets_listView List of Ticketsread
  • freshservice.tickets.tickets_tasks_listView all Tasksread
  • freshservice.conversations.conversations_attachments_deleteDelete a Conversation Attachmentdestructive
  • freshservice.conversations.conversations_deleteDelete a Conversationdestructive
  • and 39 more in this area
Status page39
  • freshservice.status_page.changes_status_pages_maintenances_createCreate a maintenance from a changewrite
  • freshservice.status_page.status_pages_incidents_statuses_listList all incident statusesread
  • freshservice.status_page.status_pages_listList all status pagesread
  • freshservice.status_page.status_pages_maintenances_statuses_listList all maintenance statusesread
  • freshservice.status_page.changes_status_pages_maintenances_deleteDelete a maintenance from a changedestructive
  • freshservice.status_page.changes_status_pages_maintenances_getView a maintenance from a changeread
  • and 33 more in this area
Change35
  • freshservice.changes.changes_createCreate a Changewrite
  • freshservice.changes.changes_listView List of Changesread
  • freshservice.changes.changes_tasks_createCreate a Taskwrite
  • freshservice.changes.changes_tasks_listView all Tasksread
  • freshservice.cabs.cabs_createCreate a CABwrite
  • freshservice.cabs.cabs_deleteDelete a CABdestructive
  • and 29 more in this area
Oncall34
  • freshservice.oncall.oncall_ws_schedules_createCreate a schedulewrite
  • freshservice.oncall.oncall_ws_schedules_escalation_policies_createCreate an escalation policywrite
  • freshservice.oncall.oncall_ws_schedules_listView all schedulesread
  • freshservice.oncall.oncall_ws_schedules_queryFilter schedulesread
  • freshservice.oncall.oncall_shift_events_current_listView who is oncallread
  • freshservice.oncall.oncall_shift_events_events_by_scheduleView oncall calendar events for a scheduleread
  • and 28 more in this area
Solutions25
  • freshservice.solution_articles.solutions_articles_createCreate Solution Articlewrite
  • freshservice.solution_articles.solutions_articles_getView Solution Articleread
  • freshservice.solution_articles.solutions_articles_listView List of Solution Articleread
  • freshservice.solution_articles.solutions_articles_search_querySearch Solution Articlesread
  • freshservice.solution_articles.solutions_articles_bulk_restore_updateBulk Restore Solution Articleswrite
  • freshservice.solution_articles.solutions_articles_deleteDelete Solution Articledestructive
  • and 19 more in this area
Release24
  • freshservice.releases.releases_tasks_createCreate a Taskwrite
  • freshservice.releases.releases_tasks_listView all Tasksread
  • freshservice.releases.releases_time_entries_createCreate a Time Entrywrite
  • freshservice.releases.releases_time_entries_listList all Time Entriesread
  • freshservice.releases.release_form_fields_listView all Release Fieldsread
  • freshservice.releases.releases_createCreate a Releasewrite
  • and 18 more in this area
Problem23
  • freshservice.problems.problems_tasks_createCreate a Taskwrite
  • freshservice.problems.problems_tasks_listView all Tasksread
  • freshservice.problems.problems_time_entries_createCreate a Time Entrywrite
  • freshservice.problems.problems_time_entries_listList all Time Entriesread
  • freshservice.problems.problem_form_fields_listList all Problem Fieldsread
  • freshservice.problems.problems_createCreate a Problemwrite
  • and 17 more in this area
Admin20
  • freshservice.business_hours.business_hours_listView List of Business Hours Configurationsread
  • freshservice.canned_responses.canned_response_folders_canned_responses_listList all Canned Responses In a Folderread
  • freshservice.canned_responses.canned_responses_getShow a Canned Responseread
  • freshservice.canned_responses.canned_responses_listView List of Canned Responsesread
  • freshservice.business_hours.business_hours_getView a Business Hours Configurationread
  • freshservice.canned_responses.canned_response_folders_getShow a Canned Response Folderread
  • and 14 more in this area
Software17
  • freshservice.software.applications_createCreate a Softwarewrite
  • freshservice.software.applications_getView a Softwareread
  • freshservice.software.applications_licenses_listList all Licensesread
  • freshservice.software.applications_listList all Softwareread
  • freshservice.software.applications_deleteDelete a Softwaredestructive
  • freshservice.software.applications_delete_2Delete multiple Softwaredestructive
  • and 11 more in this area
Users16
  • freshservice.agents.agents_convert_to_requester_updateConvert To Requesterwrite
  • freshservice.agents.agents_createCreate an Agentwrite
  • freshservice.agents.agents_getView an Agentread
  • freshservice.agents.agents_listList all Agentsread
  • freshservice.agents.agent_fields_fields_list_aliasList all Agent Fieldsread
  • freshservice.agents.agents_deleteDeactivate an Agentdestructive
  • and 10 more in this area
Catalogue14
  • freshservice.service_catalog.service_catalog_items_createCreate Service Catalog itemwrite
  • freshservice.service_catalog.service_catalog_items_listView List of Service Itemsread
  • freshservice.service_catalog.service_catalog_items_search_querySearch Service Itemsread
  • freshservice.service_catalog.service_catalog_items_updateUpdate a Service Catalog Itemwrite
  • freshservice.service_catalog.service_catalog_categories_listView List of Service Categoriesread
  • freshservice.service_catalog.service_catalog_items_deleteDelete a Service Catalog Itemdestructive
  • and 8 more in this area
Groups13
  • freshservice.groups.groups_createCreate a Groupwrite
  • freshservice.groups.groups_listList all Groupsread
  • freshservice.groups.requester_groups_createCreate a Requester Group/Contact Groupwrite
  • freshservice.groups.requester_groups_listList All Requester Groups/Contact Groupsread
  • freshservice.groups.groups_deleteDelete a Groupdestructive
  • freshservice.groups.groups_getView a Groupread
  • and 7 more in this area
Alerts13
  • freshservice.alerts.ams_alerts_getView an alertread
  • freshservice.alerts.ams_alerts_notes_createCreate an Alert Notewrite
  • freshservice.alerts.ams_alerts_notes_listView all alert notesread
  • freshservice.alerts.ams_alerts_queryView Multiple Alerts using Filtersread
  • freshservice.alerts.ams_alerts_acknowledge_updateAcknowledge an alertwrite
  • freshservice.alerts.ams_alerts_deleteDelete an Alertdestructive
  • and 7 more in this area
Contracts12
  • freshservice.contracts.contracts_associated_assets_listList all associated assets of a contractread
  • freshservice.contracts.contracts_createCreate a Contractwrite
  • freshservice.contracts.contracts_getView a contractread
  • freshservice.contracts.contracts_listList all contractsread
  • freshservice.contracts.contract_types_fields_listList all fields of a contract typeread
  • freshservice.contracts.contract_types_listList all contract typesread
  • and 6 more in this area
Cloud11
  • freshservice.itam_resource_relationships.itam_resource_relationships_listView list of all cloud resource relationshipsread
  • freshservice.itam_resources.itam_resources_deleteDelete a cloud resourcedestructive
  • freshservice.itam_resources.itam_resources_getView a cloud resourceread
  • freshservice.itam_resources.itam_resources_listView list of all cloud resourcesread
  • freshservice.itam_cloud_infrastructure.itam_cloud_infrastructures_createUpdate cloud detailswrite
  • freshservice.itam_cloud_infrastructure.itam_cloud_infrastructures_deleteDelete cloud detailsdestructive
  • and 5 more in this area
Contacts11
  • freshservice.requesters.requesters_convert_to_agent_updateConvert To Agentwrite
  • freshservice.requesters.requesters_createCreate a Requester/Contactwrite
  • freshservice.requesters.requesters_getView a Requester/Contactread
  • freshservice.requesters.requesters_listList All Requesters/Contactsread
  • freshservice.requesters.requester_fields_listList All Requester/Contact Fieldsread
  • freshservice.requesters.requesters_deleteDeactivate a Requester/Contactdestructive
  • and 5 more in this area
Major incident10
  • freshservice.communications.tickets_communications_createTrigger email for a major incidentwrite
  • freshservice.communications.tickets_communications_listRetrieve emails related to a ticketread
  • freshservice.post_incident_reports.post_incident_reports_templates_createCreate new templates for post-incident reportswrite
  • freshservice.post_incident_reports.post_incident_reports_templates_listGet all post-incident report templatesread
  • freshservice.communications.tickets_communications_getRetrieve specific emails using IDread
  • freshservice.post_incident_reports.post_incident_reports_templates_deleteDelete an existing post-incident report templatedestructive
  • and 4 more in this area
Journeys10
  • freshservice.journeys.journeys_configs_data_fields_listView Journey Initiator Config Form Fieldsread
  • freshservice.journeys.journeys_configs_listView List of Published Journeys Configsread
  • freshservice.journeys.journeys_requests_activities_listView Journey Request Activitiesread
  • freshservice.journeys.journeys_requests_createCreate a Journey Requestwrite
  • freshservice.journeys.journeys_requests_cancel_cancelCancel a Journey Requestdestructive
  • freshservice.journeys.journeys_requests_deleteDelete a Journey Requestdestructive
  • and 4 more in this area
Departments7
  • freshservice.departments.departments_createCreate a Departmentwrite
  • freshservice.departments.departments_getView a Departmentread
  • freshservice.departments.departments_listList all Departmentsread
  • freshservice.departments.departments_queryFilter Departmentsread
  • freshservice.departments.department_fields_listList all Department Fieldsread
  • freshservice.departments.departments_deleteDelete a Departmentdestructive
  • and 1 more in this area
Procurement6
  • freshservice.purchase_orders.purchase_orders_createCreate a new Purchase Orderwrite
  • freshservice.purchase_orders.purchase_orders_getView a Purchase Orderread
  • freshservice.purchase_orders.purchase_orders_listList all Purchase Ordersread
  • freshservice.purchase_orders.purchase_orders_move_workspace_updateMove a Purchase Orderwrite
  • freshservice.purchase_orders.purchase_orders_deleteDelete a Purchase Orderdestructive
  • freshservice.purchase_orders.purchase_orders_updateUpdate a Purchase Orderwrite
Locations6
  • freshservice.locations.locations_createCreate a Locationwrite
  • freshservice.locations.locations_getView a Locationread
  • freshservice.locations.locations_listList all Locationsread
  • freshservice.locations.locations_updateUpdate a Locationwrite
  • freshservice.locations.locations_deleteDelete a Locationdestructive
  • freshservice.locations.locations_queryFilter Locationsread
Catalogue5
  • freshservice.products.products_createCreate a Productwrite
  • freshservice.products.products_getView a Productread
  • freshservice.products.products_listList all Productsread
  • freshservice.products.products_updateUpdate a Productwrite
  • freshservice.products.products_deleteDelete a Productdestructive
Announcements5
  • freshservice.announcements.announcements_createCreate an Announcementwrite
  • freshservice.announcements.announcements_getView an Announcementread
  • freshservice.announcements.announcements_listList all Announcementsread
  • freshservice.announcements.announcements_updateEdit an Announcementwrite
  • freshservice.announcements.announcements_deleteDelete an Announcementdestructive
Vendors5
  • freshservice.vendors.vendors_createCreate a Vendorwrite
  • freshservice.vendors.vendors_getView a Vendorread
  • freshservice.vendors.vendors_listList all Vendorsread
  • freshservice.vendors.vendors_updateUpdate a Vendorwrite
  • freshservice.vendors.vendors_deleteDelete a Vendordestructive
Offboarding5
  • freshservice.offboarding.offboarding_requests_createCreate an Offboarding Requestwrite
  • freshservice.offboarding.offboarding_requests_form_listView Offboarding Form Fieldsread
  • freshservice.offboarding.offboarding_requests_listView all Offboarding Requestsread
  • freshservice.offboarding.offboarding_requests_tickets_listView Offboarding Ticketsread
  • freshservice.offboarding.offboarding_requests_getView an Offboarding Requestread
Onboarding5
  • freshservice.onboarding.onboarding_requests_createCreate an Onboarding Requestwrite
  • freshservice.onboarding.onboarding_requests_form_listView Onboarding Form Fieldsread
  • freshservice.onboarding.onboarding_requests_listView all Onboarding Requestsread
  • freshservice.onboarding.onboarding_requests_tickets_listView Onboarding Ticketsread
  • freshservice.onboarding.onboarding_requests_getView an Onboarding Requestread
Roles2
  • freshservice.roles.roles_getView a Roleread
  • freshservice.roles.roles_listList all Rolesread
Attachments2
  • freshservice.attachments.attachments_getDownload Attachmentread
  • freshservice.attachments.itil_attachments_getDownload Purchase order and Contracts Attachmentread
Approval1
  • freshservice.approvals.approvals_listList all Approvalsread
Audit1
  • freshservice.audit_logs.audit_log_export_createAudit Log Exportwrite
Sla1
  • freshservice.sla_policies.sla_policies_listView List of SLAsread

This index shows a sample of each area. All 520 actions, with their inputs and prices, are in the catalogue, which a free sandbox key can search.

Questions

The Freshservice MCP server, answered.

Is there a Freshservice MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 520 Freshservice actions across itam, delivery, ITSM and status page, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Freshservice.

What do I need to connect Freshservice?

Freshservice API key. Plus your domain host. The free call account { op: "connections.requirements", service: "freshservice" } lists exactly what to paste.

Can an AI agent delete or change things in Freshservice?

Only if its key allows it, and only with an explicit confirmation. 86 Freshservice actions are destructive, including delete a Ticket, forget an Agent and forget a Requester/Contact. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my Freshservice API limit?

actionlake paces every call to the limits in the Freshservice service file: 200 calls a minute per connection. Repeated reads are answered from cache (238 Freshservice actions can be), which never reaches Freshservice.

What does a Freshservice action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (152 Freshservice actions page). Cache hits, searches, dry runs and calls Freshservice refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which Freshservice API does it cover?

The Freshservice API 2 at your Freshservice instance's API base URL, which you enter when connecting (path /api/v2). It is built from Freshservice's documentation as read on 8 September 2026. 520 actions in 33 areas, each one in the signed service file (version 1.0.0).

Can I combine Freshservice with my other systems?

Yes. ask joins Freshservice to HaloPSA or NetSuite on the same customer and returns the answer rather than every row. Freshservice maps crm.contact, which 192 other connectors also map.

Does actionlake keep my Freshservice data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Freshservice credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent Freshservice today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.