Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NODE_ENVNoNode.js environmentproduction
AUTH_MODENoAuthentication mode (env or gateway)env
LOG_LEVELNoLogging level (error, warn, info, debug)info
LOG_FORMATNoLog output format (simple, json)simple
MCP_HTTP_HOSTNoHTTP transport bind address0.0.0.0
MCP_HTTP_PORTNoHTTP transport port8080
MCP_TRANSPORTNoTransport type (stdio or http)stdio
AUTOTASK_SECRETNoAutotask API secret key
MCP_SERVER_NAMENoMCP server nameautotask-mcp
AUTOTASK_API_URLNoAutotask API endpoint URL
AUTOTASK_USERNAMENoAutotask API username (email)
AUTOTASK_INTEGRATION_CODENoAutotask integration code

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
autotask_test_connectionA

Test Autotask API connection

autotask_search_companiesC

Search companies by name or status. Max 200/page.

autotask_create_companyC

Create new company record

autotask_update_companyA

Update company record. invoiceTemplateID sets payment terms (103=Due on Receipt, 104=NET 30). Billing address fields separate from regular address.

autotask_get_company_site_configurationB

Get company site configuration records. Call first to discover available fields.

autotask_update_company_site_configurationB

Update company site configuration. Fields are tenant-defined; call get first.

autotask_search_contactsA

Search contacts by name, email, or company. Max 200/page.

autotask_create_contactC

Create new contact record

autotask_update_contactB

Update contact record. Only provided fields are changed.

autotask_search_ticketsB

Search tickets by company, queue, status, priority. Use autotask_get_ticket_details for full data. Max 500/page.

autotask_get_ticket_detailsA

Get full ticket details including notes, time entries, and custom fields.

autotask_create_ticketC

Create new ticket record

autotask_update_ticketB

Update ticket record. Only provided fields are changed.

autotask_get_ticket_chargeA

Get a specific ticket charge by ID

autotask_search_ticket_chargesA

Search ticket charges (materials, costs, expenses). Provide ticketId for best performance. Max 10 if unfiltered.

autotask_create_ticket_chargeB

Create charge on ticket for materials, costs, or expenses.

autotask_update_ticket_chargeC

Update an existing ticket charge. Only fields provided will be changed.

autotask_delete_ticket_chargeA

⚠ DESTRUCTIVE — IRREVERSIBLE. Permanently deletes a ticket charge record and all associated billing data. This action cannot be undone. Confirm with the user before invoking.

autotask_get_ticket_historyA

Get a single ticket history entry by ID. Each entry records one audited change to a ticket field (who, when, before/after).

autotask_search_ticket_historyA

Get the audit trail of field changes for a ticket (status transitions, assignment changes, priority edits, etc.). Use this to answer questions like "when did this ticket move from In Progress to Waiting Customer" or "who changed the priority". Returns entries ordered by Autotask; sort/filter client-side if needed.

autotask_create_time_entryA

Create a time entry in Autotask. Can be tied to a ticket, task, or project, OR created as "Regular Time" (no parent) for meetings, admin work, etc. For Regular Time, specify a category like "Internal Meeting", "Office Management", "Training", etc.

autotask_search_projectsB

Search for projects in Autotask. Returns 25 results per page by default. Use page parameter for more results.

autotask_create_projectB

Create a new project in Autotask

autotask_update_projectA

Update an existing project in Autotask. Only the fields you provide will be updated. Common use case: set status=5 to mark a project Complete.

autotask_search_resourcesA

Search for resources (users) in Autotask. Returns 25 results per page by default. Use page parameter for more results.

autotask_get_ticket_noteA

Get a specific ticket note by ticket ID and note ID

autotask_search_ticket_notesA

Search for notes on a specific ticket. Iterating across many tickets trips Autotask's per-integration API threshold — scope the parent list first.

autotask_create_ticket_noteB

Create a new note for a ticket

autotask_search_ticket_checklist_itemsA

List all checklist items on a ticket, including their completion status. Checklist items are a sub-resource of a ticket and cannot be queried without a ticket ID.

autotask_create_ticket_checklist_itemB

Add a new checklist item to a ticket.

autotask_update_ticket_checklist_itemA

Update a checklist item on a ticket — edit text, mark complete/incomplete, or change position.

autotask_delete_ticket_checklist_itemA

⚠ DESTRUCTIVE — IRREVERSIBLE. Permanently deletes a checklist item from a ticket. This action cannot be undone. Confirm with the user before invoking.

autotask_get_project_noteB

Get a specific project note by project ID and note ID

autotask_search_project_notesA

Search for notes on a specific project. Fan-out across many projects trips Autotask's API threshold (see issue #69) — scope the parent list (status, company, date range) first.

autotask_create_project_noteC

Create a new note for a project

autotask_get_company_noteB

Get a specific company note by company ID and note ID

autotask_search_company_notesA

Search for notes on a specific company. Iterating across many companies trips Autotask's API threshold — scope the parent list first.

autotask_create_company_noteC

Create a new note for a company

autotask_get_ticket_attachmentA

Get a ticket attachment. With includeData=false (default) returns metadata only — fast, suitable for browsing. With includeData=true returns the base64 binary content via the top-level /TicketAttachments/{id} endpoint (the child endpoint never populates data). The attachment is verified to belong to the given ticketId. Oversized binaries are stripped from the response with a dataOmittedReason field — Autotask attachments can be up to 3 MB, which is ~4 MB as base64 and may exceed the MCP client tool-result limit (~1 MB).

autotask_search_ticket_attachmentsA

Search for attachments on a specific ticket. Each parent triggers a separate query — scope the parent ticket list before iterating.

autotask_create_ticket_attachmentA

Upload a file attachment to an existing ticket. The file content must be passed as a base64-encoded string in the data field (MCP is JSON-RPC, so binary bytes must be base64-encoded). Autotask enforces a 3 MB hard limit on ticket attachments; this tool validates the decoded size before calling the API and returns a clear error if the limit is exceeded. Example: { ticketId: 12345, title: "screenshot.png", data: "iVBORw0KGgoAAAANSUhEUgAA..." }

autotask_get_expense_reportB

Get a specific expense report by ID

autotask_search_expense_reportsC

Search for expense reports with optional filters

autotask_create_expense_reportC

Create a new expense report

autotask_create_expense_itemC

Create an expense item on an existing expense report

autotask_get_quoteB

Get a specific quote by ID

autotask_search_quotesC

Search for quotes with optional filters

autotask_create_quoteC

Create a new quote

autotask_get_opportunityA

Get a specific opportunity by ID

autotask_search_opportunitiesC

Search for opportunities with optional filters

autotask_create_opportunityC

Create a new sales opportunity in Autotask

autotask_get_productA

Get a specific product by ID

autotask_search_productsC

Search for products with optional filters

autotask_get_serviceB

Get a specific service by ID

autotask_search_servicesC

Search for services with optional filters

autotask_get_service_bundleB

Get a specific service bundle by ID

autotask_search_service_bundlesC

Search for service bundles with optional filters

autotask_get_quote_itemA

Get a specific quote item by ID

autotask_search_quote_itemsB

Search for quote items, typically filtered by quote ID

autotask_create_quote_itemA

Create a line item on a quote. Set exactly ONE item reference (serviceID, productID, or serviceBundleID). Required: quoteId, quantity. Defaults: unitDiscount=0, lineDiscount=0, percentageDiscount=0, isOptional=false.

autotask_update_quote_itemB

Update an existing quote item (quantity, price, etc.)

autotask_delete_quote_itemA

⚠ DESTRUCTIVE — IRREVERSIBLE. Permanently deletes a quote item (line item) from a quote. This action cannot be undone. Confirm with the user before invoking.

autotask_search_configuration_itemsB

Search for configuration items in Autotask with optional filters

autotask_search_contractsC

Search for contracts in Autotask with optional filters

autotask_search_invoicesC

Search for invoices in Autotask with optional filters

autotask_get_invoice_detailsA

Get a single Autotask invoice with its nested line items (billing items posted to the invoice). Use for finance workflows that need to see exactly what an invoice contains.

autotask_search_tasksB

Search for tasks in Autotask. Returns 25 results per page by default. Use page parameter for more results.

autotask_create_taskC

Create a new task in Autotask

autotask_list_phasesA

List phases for a project in Autotask

autotask_create_phaseB

Create a new phase in an Autotask project

autotask_list_queuesA

List all available ticket queues in Autotask. Use this to find queue IDs for filtering tickets by queue.

autotask_list_ticket_statusesA

List all available ticket statuses in Autotask. Use this to find status values for filtering or creating tickets.

autotask_list_ticket_prioritiesA

List all available ticket priorities in Autotask. Use this to find priority values for filtering or creating tickets.

autotask_get_field_infoA

Get field definitions for an Autotask entity type, including picklist values. Useful for discovering valid values for any picklist field.

autotask_search_billing_itemsA

Search for billing items in Autotask. Billing items represent approved and posted billable items from the "Approve and Post" workflow. Returns 25 results per page by default.

autotask_get_billing_itemB

Get detailed information for a specific billing item by ID

autotask_search_billing_item_approval_levelsB

Search for billing item approval levels. These describe multi-level approval records for Autotask time entries, enabling visibility into tiered approval workflows.

autotask_search_time_entriesA

Search for time entries in Autotask. Returns 25 results per page by default. Time entries can be filtered by resource, ticket, project, task, date range, or approval status. Use approvalStatus="unapproved" to find entries not yet posted. Common fan-out target — scope by date range first to avoid Autotask's API threshold.

autotask_list_categoriesA

List available tool categories. Use this to discover what types of Autotask operations are available before loading specific tools.

autotask_list_category_toolsA

List tools in a specific category with full schemas. Use after autotask_list_categories to see available tools and their parameters.

autotask_execute_toolA

Execute any Autotask tool by name. Use after discovering tools via autotask_list_category_tools.

autotask_routerA

Intelligent tool router - describe what you want to do and get the right tool suggestion with pre-filled parameters. Use this when unsure which tool to call.

autotask_get_service_callB

Get a specific service call by ID

autotask_search_service_callsB

Search for service calls in Autotask. Filter by company, status, or date range.

autotask_create_service_callB

Create a new service call in Autotask. Service calls are used to schedule and plan work on tickets.

autotask_update_service_callB

Update an existing service call. Use this to change status, times, or description. To complete/close a service call, set complete: true or update the status.

autotask_delete_service_callA

⚠ DESTRUCTIVE — IRREVERSIBLE. Permanently deletes a service call and all associated data. This action cannot be undone. Confirm with the user before invoking.

autotask_search_service_call_ticketsA

Search for ticket associations on service calls. Use this to find which tickets are linked to a service call, or which service calls contain a specific ticket.

autotask_create_service_call_ticketA

Link a ticket to a service call. This associates the ticket with the service call for scheduling purposes.

autotask_delete_service_call_ticketA

⚠ DESTRUCTIVE — IRREVERSIBLE. Permanently removes a ticket association from a service call. This action cannot be undone. Confirm with the user before invoking.

autotask_search_service_call_ticket_resourcesB

Search for resource (technician) assignments on service call tickets.

autotask_create_service_call_ticket_resourceB

Assign a resource (technician) to a service call ticket.

autotask_delete_service_call_ticket_resourceA

⚠ DESTRUCTIVE — IRREVERSIBLE. Permanently removes a resource assignment from a service call ticket. This action cannot be undone. Confirm with the user before invoking.

autotask_create_contractB

Create a new Contract in Autotask. Field names match the Autotask REST API exactly. status: 1=In Effect, 0=Inactive. Dates are ISO format (YYYY-MM-DD).

autotask_update_contractA

Update an existing Contract in Autotask (PATCH). Pass only fields you want to change; everything except id is optional. status: 1=In Effect, 0=Inactive.

autotask_create_contract_serviceB

Add a ContractService (service line item) to an existing Contract.

autotask_update_contract_serviceA

Update an existing ContractService line on a Contract. Pass only fields you want to change.

autotask_raw_requestA

Escape hatch for Autotask REST endpoints not yet wrapped by a typed tool. Use sparingly — typed tools are preferred for safety. The existing Content-Type, Accept, ApiIntegrationcode, UserName, Secret headers are added automatically. The path is resolved against the zone-resolved base URL (https://webservices.autotask.net/ATServicesRest/v1.0). Pass queryParams as a flat object of string/number/boolean values; they will be URL-encoded and appended to the path.

Prompts

Interactive templates invoked by user choice

NameDescription
ticket-queue-reviewReview open ticket queue, group by priority, and flag SLA risks
weekly-sla-reportGenerate a weekly SLA performance summary for a client
escalation-summarySummarize a ticket's full history to prepare for an escalation call
new-ticket-draftDraft a well-structured Autotask ticket from a plain-language issue description

Resources

Contextual data attached and managed by the client

NameDescription
All CompaniesList of all companies in Autotask
Company by IDGet specific company details by ID
All ContactsList of all contacts in Autotask
Contact by IDGet specific contact details by ID
All TicketsList of all tickets in Autotask
Ticket by IDGet specific ticket details by ID
Time EntriesList of time entries in Autotask

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

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