- Home
- MCP servers
- Freshservice
Freshservice
- python
16
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"effytech-freshservice_mcp": {
"command": "uvx",
"args": [
"freshservice-mcp"
],
"env": {
"FRESHSERVICE_APIKEY": "<YOUR_FRESHSERVICE_APIKEY>",
"FRESHSERVICE_DOMAIN": "<YOUR_FRESHSERVICE_DOMAIN>"
}
}
}
}You can run a dedicated MCP server that lets Claude and other AI models interact with Freshservice to create, update, and manage IT service tickets, changes, assets, and more. This server streamlines ITSM workflows by bridging AI actions directly to Freshservice modules.
How to use
Use a client that supports MCP servers to connect to the Freshservice MCP Server. You will run the local server process and point your MCP client at it or configure your Claude Desktop to run the MCP server in stdio mode. Once connected, you can instruct the AI to perform operations such as creating tickets, updating changes, filtering tickets, and querying assets across the supported Freshservice modules.
How to install
Prerequisites you need before installing the Freshservice MCP Server are Node.js or Python environments if you plan to use package-based tools, and an active Freshservice account with an API key.
npx -y @smithery/cli install @effytech/freshservice_mcp --client claude
Additional setup and configuration
Generate your Freshservice API key from the Freshservice admin area: Profile Settings → API Settings. You will use this key together with your Freshservice domain to configure the MCP server in your client.
To run the MCP server with Claude Desktop, you configure the MCP server in Claude Desktop to invoke the stdio-based CLI. The required runtime command is uvx, with the server name freshservice-mcp and environment variables for your API key and domain.
Example to start the server manually for testing is shown below. Replace the placeholders with your actual values.
Examples for Claude Desktop configuration
"mcpServers": {
"freshservice-mcp": {
"command": "uvx",
"args": [
"freshservice-mcp"
],
"env": {
"FRESHSERVICE_APIKEY": "<YOUR_FRESHSERVICE_APIKEY>",
"FRESHSERVICE_DOMAIN": "<YOUR_FRESHSERVICE_DOMAIN>"
}
}
}
Testing the server locally
To test locally, run the following command. This starts the MCP server process that your MCP client can connect to.
uvx freshservice-mcp --env FRESHSERVICE_APIKEY=<your_api_key> --env FRESHSERVICE_DOMAIN=<your_domain>
Security and maintenance notes
Keep your Freshservice API key secure. Do not expose it in client configuration files that may be shared or stored in version control. Rotate keys regularly and apply least-privilege API permissions where possible.
Monitor API usage to stay within Freshservice rate limits and quotas. If you encounter 429 Too Many Requests, stagger requests and implement retries with backoff in your client.
Troubleshooting
- Verify the API key and domain are correct
- Ensure network access to Freshservice endpoints
- Confirm uvx is installed and in PATH
- Check required environment variables
Tools and capabilities overview
This MCP server provides tool-like capabilities to manage various Freshservice modules. You can create, update, delete, and query tickets; manage changes and change notes; retrieve and filter items like agents, requester groups, canned responses, and solution content; and access related assets and articles.
Available tools
create_ticket
Create a new Freshservice service ticket with subject, description, source, priority, status, and requester email.
update_ticket
Update an existing ticket with a set of updates.
delete_ticket
Remove a ticket by its ticket_id.
filter_tickets
Find tickets matching a specified query to filter results.
get_ticket_fields
Retrieve definitions for ticket fields.
get_tickets
List all tickets with pagination support.
get_ticket_by_id
Retrieve detailed information for a single ticket by its ID.
get_changes
List changes with pagination and optional query.
filter_changes
Filter changes with advanced queries.
get_change_by_id
Retrieve details for a single change by its change_id.
create_change
Create a new change request with key attributes like requester, subject, and priority.
update_change
Update an existing change with provided change fields.
close_change
Close a change with a result explanation.
delete_change
Remove a change by its change_id.
get_change_tasks
Retrieve tasks associated with a change.
create_change_note
Add a note to a change.
get_asset
Show asset details by identifier such as asset tag.
get_solution_article
Retrieve solution articles or related content like categories and folders.