Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Autotask

OCI · GHCR.IO/WYRE-AI/AUTOTASK-MCP:V2.38.1 · SCANNED SEP 20

MCP server for Kaseya Autotask PSA — companies, tickets, projects, time entries, and more.

41 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security0
  • Malware scan not yet available for this package.Unverified
  • Known CVEs could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
  • Install-script risk not yet assessed.Unverified
  • Dependency health could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
Provenance & Transparency45
Schema Quality & AI Usability82
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 14486 tokens (~123/item across 117 items; 109 tools + 8 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage97
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 92% of tool parameters carry a description.Partial
Tool Safety90
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 6 of 10 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "autotask_get_ticket_charge" implies "charge" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Partial
  • An AI judge read all 111 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
  • Supports UI / widget rendering.Pass

Unverified: 2 categories

Categories scored 0 because we could not verify them: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Install

How do I install the Autotask MCP server?

Autotask runs locally as a container image, launched with docker run --rm -i ghcr.io/wyre-ai/autotask-mcp:v2.38.1. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

oci · ghcr.io/wyre-ai/autotask-mcp:v2.38.1

# add to Claude Code
claude mcp add wyre-ai-autotask-mcp -- docker run --rm -i ghcr.io/wyre-ai/autotask-mcp:v2.38.1
// .cursor/mcp.json
{
  "mcpServers": {
    "wyre-ai-autotask-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/autotask-mcp:v2.38.1"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "wyre-ai-autotask-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/autotask-mcp:v2.38.1"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add wyre-ai-autotask-mcp -- docker run --rm -i ghcr.io/wyre-ai/autotask-mcp:v2.38.1
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "wyre-ai-autotask-mcp": {
      "type": "local",
      "command": [
        "docker",
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/autotask-mcp:v2.38.1"
      ],
      "enabled": true
    }
  }
}
# ~/.hermes/config.yaml
mcp_servers:
  wyre-ai-autotask-mcp:
    command: "docker"
    args: ["run", "--rm", "-i", "ghcr.io/wyre-ai/autotask-mcp:v2.38.1"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "wyre-ai-autotask-mcp": {
      "Transport": "stdio",
      "Command": "docker",
      "Arguments": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/autotask-mcp:v2.38.1"
      ]
    }
  }
}
// mcp.json
{
  "mcpServers": {
    "wyre-ai-autotask-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/autotask-mcp:v2.38.1"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 41

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed oci/ghcr.io/wyre-ai/autotask-mcp:v2.38.1

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem oci
Reason No attestation published

Background: How many MCP packages publish verified provenance →

MCP tools · 109 exposed · ~13,832 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
autotask_create_company ~85

Create new company record

NameTypeReqDescription
address1string
citystring
companyNamestringyes
companyTypenumberyes
isActiveboolean
ownerResourceIDnumber
phonestring
postalCodestring
statestring

No output schema declared.

No examples provided.

autotask_create_company_note ~66

Create a new note for a company

NameTypeReqDescription
actionTypenumberAction type for the note
companyIDnumberyesThe company ID to add the note to
descriptionstringyesNote content
titlestringNote title

No output schema declared.

No examples provided.

autotask_create_contact ~66

Create new contact record

NameTypeReqDescription
companyIDnumberyesCompany ID for the contact
emailAddressstring
firstNamestringyes
lastNamestringyes
phonestring
titlestring

No output schema declared.

No examples provided.

autotask_create_contract ~486

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).

NameTypeReqDescription
billToCompanyContactIDnumberBill-to contact ID
billToCompanyIDnumberBill-to company ID
billingPreferencenumberBilling preference picklist ID
companyIDnumberyesCompany ID the contract is associated with
contactIDnumberPrimary contact ID for the contract
contractCategorynumberyesContract category picklist ID
contractExclusionSetIDnumberContract exclusion set ID
contractNamestringyesContract name
contractNumberstringExternal-facing contract number
contractPeriodTypenumberPeriod type picklist ID
contractTypenumberyesContract type picklist ID
descriptionstringContract description / notes
endDatestringyesContract end date (ISO YYYY-MM-DD)
estimatedCostnumberEstimated cost
estimatedHoursnumberEstimated hours
estimatedRevenuenumberEstimated revenue
exclusionContractIDnumberExclusion contract ID
internalCurrencyOverageBillingRatenumberOverage rate in internal currency
internalCurrencySetupFeenumberSetup fee in internal currency
isDefaultContractbooleanWhether this is the default contract for the company
opportunityIDnumberOriginating opportunity ID
organizationalLevelAssociationIDnumberOrg level association ID
overageBillingRatenumberOverage billing rate
purchaseOrderNumberstringCustomer purchase order number
renewedContractIDnumberID of the contract this renewed
serviceLevelAgreementIDnumberSLA ID
setupFeenumberSetup fee amount
setupFeeBillingCodeIDnumberBilling code ID for the setup fee
startDatestringyesContract start date (ISO YYYY-MM-DD)
statusnumberContract status (1=In Effect, 0=Inactive)
timeReportingRequiresStartAndStopTimesnumberWhether time entries require start/stop times

No output schema declared.

No examples provided.

autotask_create_contract_service ~137

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

NameTypeReqDescription
adjustedPricenumberAdjusted price
contractIDnumberyesParent Contract ID
internalCurrencyUnitPricenumberUnit price in internal currency
invoiceDescriptionstringOverride invoice description for this line
quoteItemIDnumberOriginating quote item ID, if any
serviceIDnumberyesService catalog ID being attached to the contract
unitCostnumberUnit cost for the service line
unitPricenumberyesUnit price for the service line

No output schema declared.

No examples provided.

autotask_create_contracts_bulk ~92

Create multiple contract shells (header records, no service lines) in one call — e.g. onboarding a customer with several location-based contracts. Shells are created one at a time; a failure on one shell does not stop the rest, and each item reports its own success or error.

NameTypeReqDescription
contractsarrayyesContract shells to create, in order. Same fields as autotask_create_contract.

No output schema declared.

No examples provided.

autotask_create_expense_item ~163

Create an expense item on an existing expense report

NameTypeReqDescription
amountnumberyesExpense amount
companyIDnumberAssociated company ID (0 for internal)
descriptionstringyesLine item description
expenseCategorynumberyesExpense category picklist ID
expenseDatestringyesDate of expense (YYYY-MM-DD format)
expenseReportIdnumberyesThe expense report ID to add the item to
haveReceiptbooleanWhether a receipt is attached
isBillableToCompanybooleanWhether billable to company
isReimbursablebooleanWhether this expense is reimbursable
paymentTypenumberPayment type picklist ID

No output schema declared.

No examples provided.

autotask_create_expense_report ~71

Create a new expense report

NameTypeReqDescription
descriptionstringExpense report description
namestringyesExpense report name
submitterIdnumberyesThe resource ID of the submitter
weekEndingDatestringyesWeek ending date (YYYY-MM-DD format)

No output schema declared.

No examples provided.

autotask_create_opportunity ~291

Create a new sales opportunity in Autotask

NameTypeReqDescription
amountnumberRevenue amount (default: 0, set useQuoteTotals=true to calculate from quotes)
companyIDnumberyesCompany ID for the opportunity
contactIdnumberContact ID for the opportunity
costnumberCost amount (default: 0)
descriptionstringOpportunity description
opportunityCategoryIDnumberOpportunity category picklist value ID
ownerResourceIdnumberyesOwner resource ID (the sales rep or account manager)
probabilitynumberWin probability percentage (0-100, default: 50)
projectedCloseDatestringyesProjected close date (YYYY-MM-DD)
stagenumberyesStage picklist value ID (use autotask_get_field_info to find valid values)
startDatestringyesStart date (YYYY-MM-DD)
statusnumberyesStatus: 0=Not Ready To Buy, 1=Active, 2=Lost, 3=Closed, 4=Implemented
titlestringyesOpportunity name/title
totalAmountMonthsnumberNumber of months to calculate totals for (e.g., 12 for annual)
useQuoteTotalsbooleanWhether to calculate totals from linked quotes (default: true)

No output schema declared.

No examples provided.

autotask_create_phase ~93

Create a new phase in an Autotask project

NameTypeReqDescription
descriptionstringPhase description
dueDatestringPhase due date (ISO format)
estimatedHoursnumberEstimated hours for the phase
projectIDnumberyesProject ID for the phase
startDatestringPhase start date (ISO format)
titlestringyesPhase title

No output schema declared.

No examples provided.

autotask_create_project ~168

Create a new project in Autotask

NameTypeReqDescription
companyIDnumberyesCompany ID for the project
descriptionstringProject description
endDatestringProject end date (YYYY-MM-DD)
estimatedHoursnumberEstimated hours for the project
projectLeadResourceIDnumberProject manager resource ID
projectNamestringyesProject name
projectTypenumberyesProject type (2=Proposal, 3=Template, 4=Internal, 5=Client, 8=Baseline). Required.
startDatestringProject start date (YYYY-MM-DD)
statusnumberyesProject status (1=New, 2=In Progress, 5=Complete)

No output schema declared.

No examples provided.

autotask_create_project_note ~145

Create a new note for a project

NameTypeReqDescription
descriptionstringyesNote content
isAnnouncementbooleanWhether this note is an announcement. Defaults to false.
noteTypenumberNote type (1=General, 2=Appointment, 3=Task, 4=Ticket, 5=Project, 6=Opportunity)
projectIdnumberyesThe project ID to add the note to
publishnumberPublish visibility (1=All Autotask Users, 2=Internal Project Team, 3=Project Team). Defaults to 1.
titlestringNote title

No output schema declared.

No examples provided.

autotask_create_quote ~101

Create a new quote

NameTypeReqDescription
companyIDnumberyesCompany ID for the quote
contactIdnumberContact ID for the quote
descriptionstringQuote description
effectiveDatestringEffective date (YYYY-MM-DD format)
expirationDatestringExpiration date (YYYY-MM-DD format)
namestringQuote name
opportunityIdnumberAssociated opportunity ID

No output schema declared.

No examples provided.

autotask_create_quote_item ~345

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.

NameTypeReqDescription
descriptionstringItem description
isOptionalbooleanWhether this is an optional line item (default: false)
lineDiscountnumberLine-level discount amount (default: 0)
namestringItem name (auto-populated for service/product types)
percentageDiscountnumberPercentage discount (default: 0)
productIDnumberProduct ID to link (mutually exclusive with serviceID/serviceBundleID)
quantitynumberyesQuantity of the item
quoteIdnumberyesThe quote ID to add this item to
quoteItemTypenumberQuote item type (auto-determined if omitted): 1=Product, 2=Cost, 3=Labor, 4=Expense, 6=Shipping, 11=Service, 12=ServiceBundle
serviceBundleIDnumberService Bundle ID to link (mutually exclusive with serviceID/productID)
serviceIDnumberService ID to link (mutually exclusive with productID/serviceBundleID)
sortOrderIDnumberSort order for display
unitCostnumberUnit cost for the item
unitDiscountnumberPer-unit discount amount (default: 0)
unitPricenumberUnit price for the item

No output schema declared.

No examples provided.

autotask_create_service_call ~176

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

NameTypeReqDescription
companyIDnumberCompany ID this service call is for
companyLocationIDnumberCompany location ID (optional)
completebooleanWhether this service call is complete (default: false)
descriptionstringyesDescription of the service call
endDateTimestringyesScheduled end date/time (ISO 8601 format)
startDateTimestringyesScheduled start date/time (ISO 8601 format, e.g. 2026-03-22T09:00:00Z)
statusnumberStatus picklist ID (use autotask_get_field_info with entityType "ServiceCalls" to find valid values)

No output schema declared.

No examples provided.

autotask_create_service_call_ticket ~67

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

NameTypeReqDescription
serviceCallIDnumberyesThe service call ID to link the ticket to
ticketIDnumberyesThe ticket ID to link to the service call

No output schema declared.

No examples provided.

autotask_create_service_call_ticket_resource ~83

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

NameTypeReqDescription
resourceIDnumberyesThe resource (technician) ID to assign
roleIDnumberThe role ID for the resource on this service call (optional)
serviceCallTicketIDnumberyesThe service call ticket ID to assign the resource to

No output schema declared.

No examples provided.

autotask_create_task ~157

Create a new task in Autotask

NameTypeReqDescription
assignedResourceIDnumberAssigned resource ID
descriptionstringTask description
endDateTimestringTask end date/time (ISO format)
estimatedHoursnumberEstimated hours for the task
projectIDnumberyesProject ID for the task
startDateTimestringTask start date/time (ISO format)
statusnumberyesTask status (1=New, 2=In Progress, 5=Complete)
taskTypenumberTask type (1=FixedWork, 2=FixedDuration). Defaults to 1.
titlestringyesTask title

No output schema declared.

No examples provided.

autotask_create_ticket ~675

Create new ticket record

NameTypeReqDescription
assignedResourceIDnumberAssigned resource ID. Autotask also requires that resource's role: pass assignedResourceRoleID or assignedResourceRoleName, or omit both and the resource's only active role is used (several roles = a…
assignedResourceRoleIDnumberRole ID for the assigned resource — one of that resource's roles (see autotask_search_resource_roles). Resolved automatically when omitted.
assignedResourceRoleNamestringName of the assigned resource's role, e.g. "Help Desk", used instead of assignedResourceRoleID when the resource holds several roles.
billingCodeIDnumberWork type / billing code ID used for billing this ticket.
companyIDnumberyesCompany ID for the ticket
contactIDnumberContact ID for the ticket
descriptionstringyes
dueDateTimestringDue date and time in ISO 8601 format (e.g. 2026-03-15T17:00:00Z). Autotask REQUIRES this on every new ticket unless the ticket category (or the API user's default category) supplies a default due dat…
estimatedHoursnumberEstimated hours of work for the ticket.
issueTypenumberFirst-level issue type ID (picklist). Required context for subIssueType. Use autotask_get_field_info (entityType "Tickets", fieldName "issueType") to discover valid values.
prioritynumber
projectIDnumberProject ID to associate the ticket with. Links the ticket to an existing project.
queueIDnumberQueue ID to route the ticket to. Use autotask_list_queues to discover valid IDs.
resolutionstringTicket-level resolution text. This is the Resolution field on the ticket itself, NOT a ticket note.
serviceLevelAgreementIDnumberService Level Agreement (SLA) ID to apply to the ticket.
sourcenumberTicket source ID (picklist, e.g. Phone, Email, Portal). Use autotask_get_field_info (entityType "Tickets", fieldName "source") to discover valid values.
statusnumber
subIssueTypenumberSub issue type ID (picklist). Must be valid for the selected issueType. Use autotask_get_field_info (entityType "Tickets", fieldName "subIssueType") to discover valid values.
ticketAdditionalContactsarrayAdditional contact IDs to associate with the ticket (beyond the primary contactID).
ticketCategorynumberTicket category ID (picklist). Use autotask_get_field_info with entityType "Tickets" and fieldName "ticketCategory" to discover valid values.
ticketTypenumberTicket type ID (picklist, e.g. Service Request, Incident, Problem, Change).
titlestringyes
userDefinedFieldsarrayUser-defined (custom) fields for the ticket, as an array of { name, value } objects matching the Autotask REST API shape.

No output schema declared.

No examples provided.

autotask_create_ticket_attachment ~283

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..." }

NameTypeReqDescription
contentTypestringMIME type of the file (e.g. "image/png", "application/pdf"). Optional.
datastringyesBase64-encoded file content. Maximum decoded size: 3 MB (Autotask ticket attachment limit). Example: read a file and pass its base64 representation here.
fullPathstringOriginal filename including any path. Defaults to `title` if not provided.
publishnumberVisibility: 1 = All Autotask Users (default), 2 = Internal Users Only
ticketIdnumberyesThe ticket ID to attach the file to
titlestringyesDisplay title for the attachment (typically the filename, e.g. "screenshot.png")

No output schema declared.

No examples provided.

autotask_create_ticket_charge ~202

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

NameTypeReqDescription
billableToAccountbooleanWhether this charge is billable to the client (default: true)
billingCodeIDnumberBilling code ID for categorization
chargeTypenumberyesCharge type picklist ID (use autotask_get_field_info with entityType "TicketCharges" to find valid values)
datePurchasedstringDate the charge was incurred (YYYY-MM-DD format)
descriptionstringCharge description
namestringyesCharge name/title
productIDnumberAssociated product ID (optional)
statusnumberCharge status picklist ID
ticketIDnumberyesTicket ID to add the charge to
unitCostnumberCost per unit
unitPricenumberPrice per unit
unitQuantitynumberQuantity of units

No output schema declared.

No examples provided.

autotask_create_ticket_checklist_item ~84

Add a new checklist item to a ticket.

NameTypeReqDescription
isCompletedbooleanWhether the item starts in the completed state (default: false)
itemNamestringyesThe checklist item text
positionnumberOptional ordering position for the item
ticketIdnumberyesThe ticket ID to add the checklist item to

No output schema declared.

No examples provided.

autotask_create_ticket_note ~188

Create a new note for a ticket

NameTypeReqDescription
descriptionstringyesNote content
noteTypenumberyesNote type picklist ID. Tenant-specific — call autotask_get_field_info with entityType "TicketNotes" and fieldName "noteType" to discover the exact label-to-ID mapping before calling this tool. Do not…
publishnumberyesPublish/visibility picklist ID. Tenant-specific and security-sensitive (controls whether the note is visible to clients). Call autotask_get_field_info with entityType "TicketNotes" and fieldName "pub…
ticketIdnumberyesThe ticket ID to add the note to
titlestringNote title

No output schema declared.

No examples provided.

autotask_create_time_entry ~455

Create a time entry in Autotask. Can be tied to a ticket or task, 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.

NameTypeReqDescription
categorystringCategory name for Regular Time entries (e.g., "Internal Meeting", "Office Management", "Training", "Research", "HR/Recruiting", "Travel Time", "Holiday", "PTO"). Required for Regular Time entries (wh…
dateWorkedstringyesDate worked (YYYY-MM-DD format)
endDateTimestringEnd date/time (ISO format)
hoursWorkednumberyesNumber of hours worked
internalNotesstringInternal notes for the time entry
resourceIDnumberResource ID (user) logging the time. Can be omitted if resourceName is provided.
resourceNamestringName of the resource/user (e.g., "Will Spence"). Will be resolved to a resourceID automatically. Use this instead of resourceID for convenience.
roleIDnumberRole ID for a ticket/task time entry — must be one of the logging resource's active roles (see autotask_search_resource_roles). Optional: when omitted, the parent ticket/task's assigned role is used…
roleNamestringName of the logging resource's role, e.g. "Help Desk", used instead of roleID. Case-insensitive; must match exactly one of the resource's active roles.
startDateTimestringStart date/time (ISO format)
summaryNotesstringyesSummary notes for the time entry
taskIDnumberTask ID for the time entry (for project work, omit for Regular Time)
ticketIDnumberTicket ID for the time entry (omit for Regular Time)

No output schema declared.

No examples provided.

autotask_delete_quote_item ~76

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

NameTypeReqDescription
quoteIdnumberyesThe parent quote ID
quoteItemIdnumberyesThe quote item ID to delete

No output schema declared.

No examples provided.

autotask_delete_service_call ~61

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

NameTypeReqDescription
serviceCallIdnumberyesThe service call ID to delete

No output schema declared.

No examples provided.

autotask_delete_service_call_ticket ~65

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

NameTypeReqDescription
serviceCallTicketIdnumberyesThe service call ticket record ID to delete

No output schema declared.

No examples provided.

autotask_delete_service_call_ticket_resource ~69

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

NameTypeReqDescription
serviceCallTicketResourceIdnumberyesThe service call ticket resource record ID to delete

No output schema declared.

No examples provided.

autotask_delete_ticket_charge ~73

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

NameTypeReqDescription
chargeIdnumberyesThe charge ID to delete
ticketIdnumberyesThe parent ticket ID

No output schema declared.

No examples provided.

autotask_delete_ticket_checklist_item ~73

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

NameTypeReqDescription
itemIdnumberyesThe checklist item ID to delete
ticketIdnumberyesThe parent ticket ID

No output schema declared.

No examples provided.

autotask_execute_tool ~67

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

NameTypeReqDescription
argumentsobjectArguments to pass to the tool
toolNamestringyesThe tool name to execute (e.g., "autotask_search_tickets")

No output schema declared.

No examples provided.

autotask_get_billing_item ~38

Get detailed information for a specific billing item by ID

NameTypeReqDescription
billingItemIdnumberyesThe billing item ID to retrieve

No output schema declared.

No examples provided.

autotask_get_company_note ~47

Get a specific company note by company ID and note ID

NameTypeReqDescription
companyIDnumberyesThe company ID
noteIdnumberyesThe note ID to retrieve

No output schema declared.

No examples provided.

autotask_get_company_site_configuration ~43

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

NameTypeReqDescription
companyIDnumberyesThe company ID whose site configuration records should be returned

No output schema declared.

No examples provided.

autotask_get_contract ~34

Get a single contract by ID (header fields only, no service lines)

NameTypeReqDescription
idnumberyesContract ID

No output schema declared.

No examples provided.

autotask_get_contract_recurring_lines ~143

Recurring-revenue roll-up for one contract: every service and bundle line with units active on a day, joined to the catalog (service name, vendor, billing period) and normalized to a monthly total. Returns { contractID, contractName, companyID, companyName, activeOn, lines[], monthlyTotal, monthlyCost, unresolvedPeriodTypes[] }. Use this for MRR, licensing reconciliation, and "what does this client pay for" questions. Read-only.

NameTypeReqDescription
activeOnstringISO date (YYYY-MM-DD) the lines must be active on. Default: today.
contractIDnumberyesContract ID

No output schema declared.

No examples provided.

autotask_get_expense_report ~34

Get a specific expense report by ID

NameTypeReqDescription
reportIdnumberyesThe expense report ID to retrieve

No output schema declared.

No examples provided.

autotask_get_field_info ~119

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

NameTypeReqDescription
entityTypestringyesThe Autotask entity type (e.g., "Tickets", "Companies", "Contacts", "Projects", "ProjectTasks", "TicketNotes"). Note: project tasks use "ProjectTasks" (or "Tasks" which auto-maps). See Autotask REST…
fieldNamestringOptional: filter to a specific field name

No output schema declared.

No examples provided.

autotask_get_invoice_details ~58

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.

NameTypeReqDescription
invoiceIdnumberyesThe invoice ID to fetch

No output schema declared.

No examples provided.

autotask_get_opportunity ~31

Get a specific opportunity by ID

NameTypeReqDescription
opportunityIdnumberyesThe opportunity ID to retrieve

No output schema declared.

No examples provided.

autotask_get_product ~30

Get a specific product by ID

NameTypeReqDescription
productIdnumberyesThe product ID to retrieve

No output schema declared.

No examples provided.

autotask_get_project_note ~47

Get a specific project note by project ID and note ID

NameTypeReqDescription
noteIdnumberyesThe note ID to retrieve
projectIdnumberyesThe project ID

No output schema declared.

No examples provided.

autotask_get_quote ~30

Get a specific quote by ID

NameTypeReqDescription
quoteIdnumberyesThe quote ID to retrieve

No output schema declared.

No examples provided.

autotask_get_quote_item ~34

Get a specific quote item by ID

NameTypeReqDescription
quoteItemIdnumberyesThe quote item ID to retrieve

No output schema declared.

No examples provided.

autotask_get_service ~30

Get a specific service by ID

NameTypeReqDescription
serviceIdnumberyesThe service ID to retrieve

No output schema declared.

No examples provided.

autotask_get_service_bundle ~34

Get a specific service bundle by ID

NameTypeReqDescription
serviceBundleIdnumberyesThe service bundle ID to retrieve

No output schema declared.

No examples provided.

autotask_get_service_call ~34

Get a specific service call by ID

NameTypeReqDescription
serviceCallIdnumberyesThe service call ID to retrieve

No output schema declared.

No examples provided.

autotask_get_ticket_attachment ~228

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).

NameTypeReqDescription
attachmentIdnumberyesThe attachment ID to retrieve
includeDatabooleanSet true to fetch the base64-encoded file bytes. Default false returns metadata only.
maxInlineBase64BytesnumberCap on base64 string length before data is stripped (default 750_000, ~560 KB raw). Only relevant when includeData=true. Raise carefully — your MCP client may reject oversized tool results.
ticketIdnumberyesThe ticket ID the attachment belongs to

No output schema declared.

No examples provided.

autotask_get_ticket_charge ~33

Get a specific ticket charge by ID

NameTypeReqDescription
chargeIdnumberyesThe ticket charge ID to retrieve

No output schema declared.

No examples provided.

autotask_get_ticket_details ~58

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

NameTypeReqDescription
fullDetailsbooleanWhether to return full ticket details (default: false for optimized data)
ticketIDnumberyesTicket ID to retrieve

No output schema declared.

No examples provided.

Common questions

What is the Autotask MCP server?

Autotask is an MCP server listed in the public MCP registry as io.github.WYRE-AI/autotask-mcp. MCP server for Kaseya Autotask PSA, companies, tickets, projects, time entries, and more. This page covers its container image (ghcr.io/wyre-ai/autotask-mcp:v2.38.1).

Is the Autotask MCP server safe to use?

Autotask scores 41 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Autotask MCP server expose?

Autotask exposes 109 tools: autotask_test_connection, autotask_search_companies, autotask_create_company, autotask_update_company, autotask_get_company_site_configuration, and 104 more. Their descriptions and schemas cost roughly 13,832 tokens of context every time the server is loaded.

Is the Autotask MCP server still maintained?

Autotask is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Autotask MCP server under?

Autotask declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.