SyncroMSP MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_AUTH | No | Enable or disable OAuth authentication (true or false) | true |
| MCP_PORT | No | HTTP listen port (used when MCP_TRANSPORT=http) | 8080 |
| MCP_BASE_URL | No | Public HTTPS URL for Docker deployment (e.g., https://mcp.yourcompany.com) | |
| MCP_TOOL_MODE | No | Tool mode: 'flat' (all tools) or 'navigation' (lazy domains) | flat |
| MCP_TRANSPORT | No | Transport mode: 'stdio' (local) or 'http' (Docker/remote) | stdio |
| SYNCRO_API_KEY | Yes | Your Syncro API token | |
| MCP_AUTH_SECRET | No | Access key for OAuth; minimum 32 characters, required for Docker | |
| SYNCRO_SUBDOMAIN | Yes | Your Syncro subdomain (the part before .syncromsp.com) | |
| MCP_I_UNDERSTAND_INSECURE | No | Must be 'true' to disable auth (foot-gun guard) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| tickets_listA | List tickets with optional filters. Returns paginated results. |
| tickets_getB | Get a single ticket by ID with full details |
| tickets_createA | Create a new ticket. Requires customer_id and subject at minimum. Note: line_items cannot be added inline during creation -- use tickets_add_line_item after the ticket is created. |
| tickets_updateB | Update an existing ticket. Only provided fields will be changed. |
| tickets_deleteA | DELETE a ticket permanently. This action cannot be undone. The user MUST confirm before executing this. |
| tickets_get_commentsC | Get all comments on a ticket |
| tickets_commentA | Add a comment to a ticket. Three comment modes: (1) Email reply: hidden=false, do_not_email=false sends email to customer. (2) Public note: hidden=false, do_not_email=true is visible on portal/invoice but no email sent. (3) Private note: hidden=true, do_not_email=true is tech-only and invisible to customer. Note: subject is REQUIRED or the API returns 422. |
| tickets_add_line_itemA | Add a line item (product/service charge) to a ticket. Note: name and description are REQUIRED even when using product_id (unlike invoices/estimates which auto-fill from catalog). |
| tickets_remove_line_itemA | Remove a line item from a ticket. The user MUST confirm before executing this. |
| tickets_update_line_itemB | Update a line item on a ticket |
| tickets_add_timerA | Add a timer entry to a ticket for time tracking. Note: start_at is REQUIRED (API returns 422 without it). duration_minutes auto-calculates end_time from start_at. |
| tickets_update_timerC | Update a timer entry on a ticket |
| tickets_delete_timerA | Delete a timer entry from a ticket. The user MUST confirm. |
| tickets_charge_timerB | Charge a timer entry on a ticket (convert to billable line item) |
| tickets_attach_fileA | Attach a file to a ticket via URL |
| tickets_delete_attachmentA | Delete an attachment from a ticket. The user MUST confirm. |
| tickets_printB | Generate a printable PDF for a ticket |
| tickets_settingsA | Get ticket system settings |
| tickets_list_commentsA | List ticket comments across multiple tickets as a flat paginated feed (distinct from tickets_get_comments which is scoped to one ticket). Sorted by ticket_id ASC, created_at DESC. Scope via ticket_search_id, ticket_id, customer_id, contact_id, user_id, status, mine, or date filters. comment_created_after/before filter at the comment level; the other date filters operate on the parent ticket. |
| tickets_blueprints_listA | List Ticket Blueprints available for ticket creation (hidden ones are excluded). Returns id, name, role, and children_count for each blueprint. |
| tickets_blueprints_applyA | Create tickets from a Blueprint -- spawns the parent ticket and any child tickets defined by the blueprint, all assigned to the given customer. Returns { ticket_id, child_ticket_ids }. |
| customers_listA | List customers with optional filters. Returns paginated results. |
| customers_getA | Get a single customer by ID with full details |
| customers_createA | Create a new customer. Note: phone and mobile fields auto-create entries in the phones sub-resource. |
| customers_updateB | Update an existing customer. Only provided fields will be changed. |
| customers_deleteA | DELETE a customer permanently. The user MUST confirm before executing. |
| customers_latestB | Get the most recently created customers |
| customers_autocompleteB | Autocomplete search for customers by name or business |
| customers_list_phonesA | List phone numbers for a customer |
| customers_create_phoneB | Add a phone number to a customer |
| customers_update_phoneC | Update a phone number for a customer |
| customers_delete_phoneA | Delete a phone number from a customer. The user MUST confirm. |
| assets_listB | List customer assets with optional filters. Returns paginated results. |
| assets_getA | Get a single asset by ID with full details |
| assets_createA | Create a new customer asset. Note: asset_type_name must match an existing type in the account. Custom properties on create are IGNORED -- set them via assets_update after creation. |
| assets_updateA | Update an existing asset. Use this to set asset properties (hdd, manufacturer, model, os, cpu_name, ram, last_boot) after creation, as properties on create are ignored. Pass policy_folder_id to move the asset to a same-customer policy folder (see policies_list_folders). |
| assets_get_patchesB | Get patch information for an asset (available OS/software patches) |
| assets_get_installed_applicationsA | Get the paginated list of software applications installed on an asset. Returns name, vendor, version, and installed_at (falls back to first-seen date when no explicit install date is recorded). |
| assets_chat_infoB | Get chat information for assets by IDs |
| contacts_listC | List contacts with optional filters |
| contacts_getA | Get a single contact by ID |
| contacts_createB | Create a new contact for a customer |
| contacts_updateB | Update an existing contact |
| contacts_deleteA | DELETE a contact permanently. The user MUST confirm. |
| invoices_listB | List invoices with optional filters |
| invoices_getA | Get a single invoice by ID |
| invoices_createA | Create a new invoice. Note: line_items in the create body are IGNORED by the API -- add line items via invoices_add_line_item after creation. |
| invoices_updateB | Update an existing invoice |
| invoices_deleteA | DELETE an invoice permanently. The user MUST confirm. |
| invoices_get_ticketC | Get the ticket associated with an invoice |
| invoices_printB | Generate a printable PDF for an invoice |
| invoices_emailC | Email an invoice to the customer |
| invoices_add_line_itemA | Add a line item to an invoice. When using product_id, only product_id + quantity are needed -- the API auto-fills name, cost, and price from the product catalog. |
| invoices_update_line_itemB | Update a line item on an invoice |
| invoices_delete_line_itemB | Delete a line item from an invoice. The user MUST confirm. |
| estimates_listB | List estimates with optional filters |
| estimates_getB | Get a single estimate by ID |
| estimates_createA | Create a new estimate. Note: line_items array in the create body is IGNORED by the API -- add line items via estimates_add_line_item after creation. |
| estimates_updateB | Update an existing estimate |
| estimates_deleteA | DELETE an estimate permanently. The user MUST confirm. |
| estimates_printB | Generate a printable PDF for an estimate |
| estimates_emailC | Email an estimate to the customer |
| estimates_convert_to_invoiceB | Convert an estimate to an invoice |
| estimates_add_line_itemA | Add a line item to an estimate. When using product_id, only product_id + quantity are needed -- the API auto-fills name, cost, and price from the product catalog. |
| estimates_update_line_itemC | Update a line item on an estimate |
| estimates_delete_line_itemB | Delete a line item from an estimate. The user MUST confirm. |
| appointments_listC | List appointments with optional date range filter |
| appointments_getB | Get a single appointment by ID |
| appointments_createA | Create a new appointment. When possible, link to a ticket via ticket_id -- this auto-populates the description with ticket details and the location from the customer address. |
| appointments_updateC | Update an existing appointment |
| appointments_deleteA | DELETE an appointment. The user MUST confirm. |
| appointments_list_typesA | List appointment types |
| appointments_get_typeB | Get an appointment type by ID |
| appointments_create_typeB | Create a new appointment type. Note: location_type is REQUIRED (API returns 422 without it). Integer value where 0 = 'customer'. |
| appointments_update_typeC | Update an appointment type |
| appointments_delete_typeA | DELETE an appointment type. The user MUST confirm. |
| products_listC | List products/inventory items |
| products_getB | Get a product by ID |
| products_createA | Create a new product. Note: products have no DELETE endpoint -- use products_update with disabled=true instead. Custom properties on create may be ignored -- set via products_update after creation. |
| products_updateC | Update a product |
| products_barcodeB | Look up a product by barcode/UPC |
| products_categoriesB | List product categories |
| products_add_imagesB | Add images to a product |
| products_delete_imageC | Delete an image from a product. The user MUST confirm. |
| products_update_location_qtyC | Update product quantity at a location |
| products_list_serialsB | List serial numbers for a product |
| products_create_serialB | Create a serial number for a product |
| products_update_serialC | Update a product serial |
| products_attach_serial_to_line_itemC | Attach serial numbers to a line item |
| products_list_skusC | List SKUs for a product |
| products_create_skuB | Create a SKU for a product |
| products_update_skuC | Update a product SKU |
| payments_listC | List payments |
| payments_getA | Get a single payment by ID |
| payments_createC | Record a payment. Use apply_payments to distribute a payment across multiple invoices. |
| payments_list_methodsA | List available payment methods |
| payments_list_profilesA | List stored payment profiles for a customer |
| payments_get_profileC | Get a payment profile by ID |
| payments_create_profileB | Create a stored payment profile for a customer |
| payments_update_profileC | Update a payment profile |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/advenimus/syncromsp-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server