Skip to content
Agentmart
Submit a tool

Autotask

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

Connector by wyre-technology · GitHub account verified by the MCP Registry

IndexedApache-2.0Local (stdio)★ 58
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/wyre-technology-autotask-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

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

Use cases: project-management, customer-support

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
64 read · 37 write · 6 delete · 3 not yet classified
Secrets
2 (API keys, tokens or passwords)
Install scripts
None found
Runs as
Docker image

Tools by what they do 110

Read from the source code; the running server may list different tools.

Read 64 · Look things up without changing anything.

  • autotask_get_billing_item
  • autotask_get_company_note
  • autotask_get_company_site_configuration
  • autotask_get_contract
  • autotask_get_contract_recurring_lines
  • autotask_get_expense_report
  • autotask_get_field_info
  • autotask_get_invoice_details
  • autotask_get_opportunity
  • autotask_get_product
  • autotask_get_project_note
  • autotask_get_quote
Show 52 more tools
  • autotask_get_quote_item
  • autotask_get_service
  • autotask_get_service_bundle
  • autotask_get_service_call
  • autotask_get_ticket_attachment
  • autotask_get_ticket_charge
  • autotask_get_ticket_details
  • autotask_get_ticket_history
  • autotask_get_ticket_note
  • autotask_get_ticket_note_attachment
  • autotask_list_categories
  • autotask_list_category_tools
  • autotask_list_expiring_contracts
  • autotask_list_phases
  • autotask_list_queues
  • autotask_list_ticket_priorities
  • autotask_list_ticket_statuses
  • autotask_search_billing_item_approval_levels
  • autotask_search_billing_items
  • autotask_search_companies
  • autotask_search_company_notes
  • autotask_search_configuration_items
  • autotask_search_contacts
  • autotask_search_contract_service_bundle_units
  • autotask_search_contract_service_bundles
  • autotask_search_contract_service_units
  • autotask_search_contract_services
  • autotask_search_contracts
  • autotask_search_expense_reports
  • autotask_search_invoices
  • autotask_search_opportunities
  • autotask_search_products
  • autotask_search_project_notes
  • autotask_search_projects
  • autotask_search_quote_items
  • autotask_search_quotes
  • autotask_search_resource_roles
  • autotask_search_resources
  • autotask_search_service_bundles
  • autotask_search_service_call_ticket_resources
  • autotask_search_service_call_tickets
  • autotask_search_service_calls
  • autotask_search_services
  • autotask_search_tasks
  • autotask_search_ticket_attachments
  • autotask_search_ticket_charges
  • autotask_search_ticket_checklist_items
  • autotask_search_ticket_history
  • autotask_search_ticket_note_attachments
  • autotask_search_ticket_notes
  • autotask_search_tickets
  • autotask_search_time_entries

Write 37 · Create, change, send or run things.

  • autotask_create_company
  • autotask_create_company_note
  • autotask_create_contact
  • autotask_create_contract
  • autotask_create_contract_service
  • autotask_create_contracts_bulk
  • autotask_create_expense_item
  • autotask_create_expense_report
  • autotask_create_opportunity
  • autotask_create_phase
  • autotask_create_project
  • autotask_create_project_note
Show 25 more tools
  • autotask_create_quote
  • autotask_create_quote_item
  • autotask_create_service_call
  • autotask_create_service_call_ticket
  • autotask_create_service_call_ticket_resource
  • autotask_create_task
  • autotask_create_ticket
  • autotask_create_ticket_attachment
  • autotask_create_ticket_charge
  • autotask_create_ticket_checklist_item
  • autotask_create_ticket_note
  • autotask_create_time_entry
  • autotask_execute_tool
  • autotask_update_company
  • autotask_update_company_site_configuration
  • autotask_update_contact
  • autotask_update_contract
  • autotask_update_contract_service
  • autotask_update_opportunity
  • autotask_update_project
  • autotask_update_quote_item
  • autotask_update_service_call
  • autotask_update_ticket
  • autotask_update_ticket_charge
  • autotask_update_ticket_checklist_item

Delete 6 · Delete, drop, revoke or wipe things.

  • autotask_delete_quote_item
  • autotask_delete_service_call
  • autotask_delete_service_call_ticket
  • autotask_delete_service_call_ticket_resource
  • autotask_delete_ticket_charge
  • autotask_delete_ticket_checklist_item

Not yet classified 3 · We could not tell from the name and description.

  • autotask_raw_request
  • autotask_router
  • autotask_test_connection

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • AUTOTASK_INTEGRATION_CODE
  • AUTOTASK_SECRET

Other settings (environment variables or headers).

  • AUTH_MODE
  • AUTOTASK_API_URL
  • AUTOTASK_USERNAME
  • LOG_LEVEL
  • MCP_TRANSPORT

Network hosts it talks to 8

  • bedrock.us-east-1.amazonaws.com · found in code
  • github.com · found in code
  • glama.ai · found in code
  • opencode.ai · found in code
  • webservices.autotask.net · found in code
  • ww1.autotask.net · found in code
  • wyre-ai.github.io · found in code
  • your-endpoint.openai.azure.com · found in code

Files it touches

  • Any path the agent passes to its tools

Tools (110)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • autotask_create_company

    Create new company record

  • autotask_create_company_note

    Create a new note for a company

  • autotask_create_contact

    Create new contact record

  • autotask_create_contract

    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_create_contract_service

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

  • autotask_create_contracts_bulk

    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.

  • autotask_create_expense_item

    Create an expense item on an existing expense report

  • autotask_create_expense_report

    Create a new expense report

  • autotask_create_opportunity

    Create a new sales opportunity in Autotask

  • autotask_create_phase

    Create a new phase in an Autotask project

  • autotask_create_project

    Create a new project in Autotask

  • autotask_create_project_note

    Create a new note for a project

  • autotask_create_quote

    Create a new quote

  • autotask_create_quote_item

    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_create_service_call

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

Show 95 more tools
  • autotask_create_service_call_ticket

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

  • autotask_create_service_call_ticket_resource

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

  • autotask_create_task

    Create a new task in Autotask

  • autotask_create_ticket

    Create new ticket record

  • autotask_create_ticket_attachment

    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_create_ticket_charge

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

  • autotask_create_ticket_checklist_item

    Add a new checklist item to a ticket.

  • autotask_create_ticket_note

    Create a new note for a ticket

  • autotask_create_time_entry

    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.

  • autotask_delete_quote_itemDelete quote item (irreversible)can change or delete data

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

  • autotask_delete_service_callDelete service call (irreversible)can change or delete data

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

  • autotask_delete_service_call_ticketDelete service call ticket association (irreversible)can change or delete data

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

  • autotask_delete_service_call_ticket_resourceDelete service call ticket resource assignment (irreversible)can change or delete data

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

  • autotask_delete_ticket_chargeDelete ticket charge (irreversible)can change or delete data

    ⚠ 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_delete_ticket_checklist_itemDelete ticket checklist item (irreversible)can change or delete data

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

  • autotask_execute_tool

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

  • autotask_get_billing_item

    Get detailed information for a specific billing item by ID

  • autotask_get_company_note

    Get a specific company note by company ID and note ID

  • autotask_get_company_site_configuration

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

  • autotask_get_contract

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

  • autotask_get_contract_recurring_lines

    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.

  • autotask_get_expense_report

    Get a specific expense report by ID

  • autotask_get_field_info

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

  • autotask_get_invoice_details

    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_get_opportunity

    Get a specific opportunity by ID

  • autotask_get_product

    Get a specific product by ID

  • autotask_get_project_note

    Get a specific project note by project ID and note ID

  • autotask_get_quote

    Get a specific quote by ID

  • autotask_get_quote_item

    Get a specific quote item by ID

  • autotask_get_service

    Get a specific service by ID

  • autotask_get_service_bundle

    Get a specific service bundle by ID

  • autotask_get_service_call

    Get a specific service call by ID

  • autotask_get_ticket_attachment

    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_get_ticket_charge

    Get a specific ticket charge by ID

  • autotask_get_ticket_details

    Get a ticket's details: description, status, priority, queue, company, assignee, dates, linked configuration item, resolution and recent notes. Set fullDetails:true for untruncated description/resolution and custom (UDF) fields.

  • autotask_get_ticket_history

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

  • autotask_get_ticket_note

    Get a specific ticket note by ticket ID and note ID

  • autotask_get_ticket_note_attachment

    Get an uploaded file attachment on a ticket note (distinct from attachments on the ticket itself). With includeData=false (default) returns metadata only — any file bytes Autotask included are omitted. With includeData=true returns the base64 file bytes from GET /TicketNotes/{ticketNoteId}/Attachments/{attachmentId}, which is parent-scoped and is the call that populates data for note attachments. If that response omits data, falls back to GET /TicketNoteAttachments/{id} and uses those bytes only when ticketNoteID or parentID matches the note; if the bytes cannot be verified, returns an error i…

  • autotask_list_categories

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

  • autotask_list_category_tools

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

  • autotask_list_expiring_contracts

    List contracts whose end date falls within the next N days (expiring-contracts report). Optionally include already-expired contracts, and scope to one company or the whole org.

  • autotask_list_phases

    List phases for a project in Autotask

  • autotask_list_queues

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

  • autotask_list_ticket_priorities

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

  • autotask_list_ticket_statuses

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

  • autotask_raw_request

    Escape hatch for Autotask REST endpoints not yet wrapped by a typed tool. Prefer typed tools. The path is relative to the zone v1.0 base (https://webservices<N>.autotask.net/ATServicesRest/v1.0) and must not start with /v1.0. Searches are POST /{Entity}/query with a body of {"filter":[...]}. Example: POST /Companies/query {"filter":[{"op":"eq","field":"id","value":175}]}. Auth headers are added automatically. queryParams is a flat object of string/number/boolean values appended to the path.

  • autotask_router

    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_search_billing_item_approval_levels

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

  • autotask_search_billing_items

    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_search_companies

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

  • autotask_search_company_notes

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

  • autotask_search_configuration_items

    Search for configuration items in Autotask with optional filters

  • autotask_search_contacts

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

  • autotask_search_contract_service_bundle_units

    Billed unit rows for bundle lines on a contract (ContractServiceBundleUnits), active on a given day (default today). Read-only.

  • autotask_search_contract_service_bundles

    List the service-bundle line items on a contract (ContractServiceBundles). Read-only.

  • autotask_search_contract_service_units

    Billed unit rows for a contract (ContractServiceUnits): the quantity and contract price of each service line over a date range. By default returns only rows active today, i.e. what is currently being invoiced. Read-only.

  • autotask_search_contract_services

    List the service line items on a contract (ContractServices): which catalog services are on the contract and at what contract-specific unit price. Read-only. Pair with autotask_search_contract_service_units for billed quantities, or use autotask_get_contract_recurring_lines for both in one call.

  • autotask_search_contracts

    Search for contracts in Autotask with optional filters

  • autotask_search_expense_reports

    Search for expense reports with optional filters

  • autotask_search_invoices

    Search for invoices in Autotask with optional filters

  • autotask_search_opportunities

    Search for opportunities with optional filters

  • autotask_search_products

    Search for products with optional filters

  • autotask_search_project_notes

    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_search_projects

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

  • autotask_search_quote_items

    Search for quote items, typically filtered by quote ID

  • autotask_search_quotes

    Search for quotes with optional filters

  • autotask_search_resource_rolesread-only

    List the billing roles a resource (user) holds in Autotask, with names and role IDs. A ticket assigned to a resource and every ticket/task time entry need one of these role IDs; this is where to find them instead of guessing. Give resourceId or resourceName. Active roles only unless includeInactive is true.

  • autotask_search_resources

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

  • autotask_search_service_bundles

    Search for service bundles with optional filters

  • autotask_search_service_call_ticket_resources

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

  • autotask_search_service_call_tickets

    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_search_service_calls

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

  • autotask_search_services

    Search for services with optional filters

  • autotask_search_tasks

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

  • autotask_search_ticket_attachments

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

  • autotask_search_ticket_charges

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

  • autotask_search_ticket_checklist_items

    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_search_ticket_history

    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_search_ticket_note_attachments

    Search for attachments on a specific ticket note — use this when autotask_search_ticket_notes returns a note with an empty or unhelpful `description`, since the real content is often a pasted image or file living on the note rather than in its text. Each note triggers a separate query — scope the parent note list before iterating.

  • autotask_search_ticket_notes

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

  • autotask_search_tickets

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

  • autotask_search_time_entries

    Search for time entries in Autotask. Returns 25 results per page by default. Time entries can be filtered by resource, ticket, task, date range, or approval status. Use approvalStatus="unapproved" to find entries not yet posted. Each entry includes summaryNotes and internalNotes. There is no project filter — Autotask time entries have no project field; to get a project's time, call autotask_search_tasks with that projectID and filter by the returned taskId values. Common fan-out target — scope by date range first to avoid Autotask's API threshold.

  • autotask_test_connection

    Test Autotask API connection

  • autotask_update_company

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

  • autotask_update_company_site_configuration

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

  • autotask_update_contact

    Update contact record. Only provided fields are changed.

  • autotask_update_contract

    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_update_contract_service

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

  • autotask_update_opportunity

    Update an existing opportunity in Autotask. Only the fields you provide will be updated. Autotask derives amount (total revenue) and cost from the per-period fields (onetimeRevenue, monthlyRevenue, onetimeCost, monthlyCost, etc.), so change revenue and cost through those. Setting amount or cost directly replaces the whole breakdown: the total becomes one-time and any recurring revenue or cost is cleared. Setting useQuoteTotals=true replaces revenue and cost with the primary quote's totals.

  • autotask_update_project

    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_update_quote_item

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

  • autotask_update_service_call

    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_update_ticket

    Update ticket record. Only provided fields are changed.

  • autotask_update_ticket_charge

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

  • autotask_update_ticket_checklist_item

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

Signals

Stars
58
Forks
68
Open issues
3
Contributors
18
Last commit
Oct 20, 2026 (8 days ago)
Last release
Oct 20, 2026 (8 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.wyre-technology/autotask-mcp
Version
2.32.10
Auth
API key
Packages
oci ghcr.io/wyre-technology/autotask-mcp:v2.32.10
License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from wyre-technology

Cite this page

Autotask MCP server. Agent Mart. https://agentmart.dev/connectors/wyre-technology-autotask-mcp (last updated 2026-10-24)