Skip to main content
Glama
asachs01

Autotask MCP Server

create_company_note

Add notes to company records in Autotask PSA to document interactions, track issues, or record important information for future reference.

Instructions

Create a new note for a company

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
companyIdYesThe company ID to add the note to
titleNoNote title
descriptionYesNote content
actionTypeNoAction type for the note

Implementation Reference

  • Defines the tool schema including input parameters (companyId required, title, description, actionType) and description for the create_company_note MCP tool.
    {
      name: 'create_company_note',
      description: 'Create a new note for a company',
      inputSchema: {
        type: 'object',
        properties: {
          companyId: {
            type: 'number',
            description: 'The company ID to add the note to'
          },
          title: {
            type: 'string',
            description: 'Note title'
          },
          description: {
            type: 'string',
            description: 'Note content'
          },
          actionType: {
            type: 'number',
            description: 'Action type for the note'
          }
        },
        required: ['companyId', 'description']
      }
    },
  • Handler logic in callTool() method that validates args and delegates to autotaskService.createCompanyNote, formats success message.
    case 'create_company_note':
      result = await this.autotaskService.createCompanyNote(args.companyId, {
        title: args.title,
        description: args.description,
        actionType: args.actionType
      });
      message = `Successfully created company note with ID: ${result}`;
      break;
  • Core implementation: creates note using autotask-node client.notes.create API, maps companyId to accountId, handles logging and error propagation.
    async createCompanyNote(companyId: number, note: Partial<AutotaskCompanyNote>): Promise<number> {
      const client = await this.ensureClient();
      
      try {
        this.logger.debug(`Creating company note for company ${companyId}:`, note);
        const noteData = {
          ...note,
          accountId: companyId
        };
        const result = await client.notes.create(noteData as any);
        const noteId = (result.data as any)?.id;
        this.logger.info(`Company note created with ID: ${noteId}`);
        return noteId;
      } catch (error) {
        this.logger.error(`Failed to create company note for company ${companyId}:`, error);
        throw error;
      }
    }

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