Skip to main content
Glama

Create ticket

create_ticket

Create incident or service-request tickets in Freshservice by supplying subject and description; use get_ticket_fields to resolve missing required fields reported by the API.

Instructions

Create an incident or service-request ticket. Some ticket forms make fields such as group_id, responder_id, category or custom fields mandatory; check get_ticket_fields when the API reports missing_field.

Input Schema

NameRequiredDescriptionDefault
nameNoRequester name, used with phone
tagsNoTags
typeNoDefault Incident
emailNoRequester email (one of email/requester_id/phone needed)
phoneNoRequester phone; creates the contact if new (needs name)
assetsNoAssets to link, e.g. [{'display_id': 14}]
due_byNoResolution due, ISO-8601
impactNo1 Low, 2 Medium, 3 High
sourceNo1 Email, 2 Portal, 3 Phone, 4 Chat, 5 Feedback widget, 6 Yammer, 7 AWS Cloudwatch, 8 Pagerduty, 9 Walkup, 10 Slack, 11 Chatbot, 12 Workplace, 13 Employee Onboarding, 14 Alerts, 15 MS Teams, 18 Employee Offboarding (custom sources: see list_ticket_sources)
statusNo2 Open, 3 Pending, 4 Resolved, 5 Closed
subjectYesTicket subject
urgencyNo1 Low, 2 Medium, 3 High
categoryNoCategory
group_idNoAgent group to assign
priorityNo1 Low, 2 Medium, 3 High, 4 Urgent
cc_emailsNoEmail addresses
fr_due_byNoFirst response due, ISO-8601
attachmentsNoLocal file paths to attach (max 15 files / 40 MB total). Only files inside the folders in FRESHSERVICE_ATTACHMENT_DIRS are allowed; attachments are refused until that is set
descriptionYesTicket body (HTML allowed)
requester_idNoRequester user ID
responder_idNoAgent to assign
sub_categoryNoSub-category
workspace_idNoWorkspace ID (multi-workspace accounts). Defaults to $FRESHSERVICE_WORKSPACE_ID; 0 means all workspaces where supported.
custom_fieldsNoCustom field values keyed by the field's API name (see *_fields tools)
department_idNoDepartment ID
item_categoryNoItem category

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.1.0

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the write, non-idempotent, non-destructive, open-world profile, so the baseline is lower. The description adds real value by disclosing that some ticket forms impose conditional mandatory fields and how to recover from missing_field. It does not disclose side effects such as requester notifications or what happens to defaults like source/status/priority.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no waste, with the core purpose front-loaded and the conditional requirement caveat following. Every clause conveys actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists and the 26-parameter schema is fully documented, so the description need not explain returns or field formats. The conditional-required and error-recovery notes cover the main ambiguity for this tool; missing is any mention of downstream effects (notifications, SLA timers) on ticket creation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage the baseline is 3, and the schema already documents enum-like value lists (source, status, impact) and attachment restrictions. The description adds meaning the schema cannot: that group_id, responder_id, category and custom fields may become mandatory depending on the form in use, which changes how an agent should populate them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Create an incident or service-request ticket'), which is more precise than the title 'Create ticket'. It does not, however, distinguish itself from nearby siblings like create_child_ticket or create_service_request, so an agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives one explicit routing rule: consult get_ticket_fields when the API reports missing_field, which is genuinely useful error-recovery guidance. But there is no guidance on when to choose this over create_child_ticket or create_service_request, which are the closest alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools