Skip to main content
Glama

create_ticket_note

Add notes to Autotask tickets to document updates, track progress, and maintain communication records for support cases.

Instructions

Create a new note for a ticket

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
descriptionYesNote content
noteTypeNoNote type (1=General, 2=Appointment, 3=Task, 4=Ticket, 5=Project, 6=Opportunity)
publishNoPublish level (1=Internal Only, 2=All Autotask Users, 3=Everyone)
ticketIdYesThe ticket ID to add the note to
titleNoNote title

Implementation Reference

  • Core handler implementation that creates the ticket note via the Autotask API client.notes.create
    async createTicketNote(ticketId: number, note: Partial<AutotaskTicketNote>): Promise<number> { const client = await this.ensureClient(); try { this.logger.debug(`Creating ticket note for ticket ${ticketId}:`, note); const noteData = { ...note, ticketId: ticketId }; const result = await client.notes.create(noteData as any); const noteId = (result.data as any)?.id; this.logger.info(`Ticket note created with ID: ${noteId}`); return noteId; } catch (error) { this.logger.error(`Failed to create ticket note for ticket ${ticketId}:`, error); throw error; } }
  • JSON schema definition and tool metadata used for MCP tool registration
    name: 'create_ticket_note', description: 'Create a new note for a ticket', inputSchema: { type: 'object', properties: { ticketId: { type: 'number', description: 'The ticket ID to add the note to' }, title: { type: 'string', description: 'Note title' }, description: { type: 'string', description: 'Note content' }, noteType: { type: 'number', description: 'Note type (1=General, 2=Appointment, 3=Task, 4=Ticket, 5=Project, 6=Opportunity)' }, publish: { type: 'number', description: 'Publish level (1=Internal Only, 2=All Autotask Users, 3=Everyone)' } }, required: ['ticketId', 'description'] }
  • Tool registration within the listTools() method that returns all available MCP tools
    { name: 'get_ticket_note', description: 'Get a specific ticket note by ticket ID and note ID', inputSchema: { type: 'object', properties: { ticketId: { type: 'number', description: 'The ticket ID' }, noteId: { type: 'number', description: 'The note ID to retrieve' } }, required: ['ticketId', 'noteId'] } }, { name: 'search_ticket_notes', description: 'Search for notes on a specific ticket', inputSchema: { type: 'object', properties: { ticketId: { type: 'number', description: 'The ticket ID to search notes for' }, pageSize: { type: 'number', description: 'Number of results to return (default: 25, max: 100)', minimum: 1, maximum: 100 } }, required: ['ticketId'] } }, { name: 'create_ticket_note', description: 'Create a new note for a ticket', inputSchema: { type: 'object', properties: { ticketId: { type: 'number', description: 'The ticket ID to add the note to' }, title: { type: 'string', description: 'Note title' }, description: { type: 'string', description: 'Note content' }, noteType: { type: 'number', description: 'Note type (1=General, 2=Appointment, 3=Task, 4=Ticket, 5=Project, 6=Opportunity)' }, publish: { type: 'number', description: 'Publish level (1=Internal Only, 2=All Autotask Users, 3=Everyone)' } }, required: ['ticketId', 'description'] } },
  • MCP tool handler dispatch case in callTool() method that invokes the service
    case 'create_ticket_note': result = await this.autotaskService.createTicketNote(args.ticketId, { title: args.title, description: args.description, noteType: args.noteType, publish: args.publish }); message = `Successfully created ticket note with ID: ${result}`; break;
  • Instantiation of the tool handler in MCP server constructor for tool registration in the MCP protocol server
    this.toolHandler = new EnhancedAutotaskToolHandler(this.autotaskService, logger);

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/asachs01/autotask-mcp'

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