Skip to main content
Glama
effytech

Freshdesk MCP server

by effytech

create_agent

Create an agent within Freshdesk to manage support operations. Define agent details to streamline ticket handling and enhance customer support efficiency.

Instructions

Create an agent in Freshdesk.

Input Schema

NameRequiredDescriptionDefault
agent_fieldsYes

Input Schema (JSON Schema)

{ "properties": { "agent_fields": { "title": "Agent Fields", "type": "object" } }, "required": [ "agent_fields" ], "title": "create_agentArguments", "type": "object" }

Implementation Reference

  • The primary handler function for the 'create_agent' tool. It is decorated with @mcp.tool(), which registers it in the FastMCP server. Performs input validation for required fields (email, ticket_scope) and makes a POST request to the Freshdesk API to create a new agent.
    @mcp.tool() async def create_agent(agent_fields: Dict[str, Any]) -> Dict[str, Any]: """Create an agent in Freshdesk.""" # Validate mandatory fields if not agent_fields.get("email") or not agent_fields.get("ticket_scope"): return { "error": "Missing mandatory fields. Both 'email' and 'ticket_scope' are required." } if agent_fields.get("ticket_scope") not in [e.value for e in AgentTicketScope]: return { "error": "Invalid value for ticket_scope. Must be one of: " + ", ".join([e.name for e in AgentTicketScope]) } url = f"https://{FRESHDESK_DOMAIN}/api/v2/agents" headers = { "Authorization": f"Basic {base64.b64encode(f'{FRESHDESK_API_KEY}:X'.encode()).decode()}" } async with httpx.AsyncClient() as client: try: response = await client.post(url, headers=headers, json=agent_fields) response.raise_for_status() return response.json() except httpx.HTTPStatusError as e: return { "error": f"Failed to create agent: {str(e)}", "details": e.response.json() if e.response else None }
  • IntEnum defining the possible ticket scope values (GLOBAL_ACCESS=1, GROUP_ACCESS=2, RESTRICTED_ACCESS=3) used for validating the 'ticket_scope' field in the create_agent handler.
    class AgentTicketScope(IntEnum): GLOBAL_ACCESS = 1 GROUP_ACCESS = 2 RESTRICTED_ACCESS = 3

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/effytech/freshdesk_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server