Skip to content

Synchroteam MCP by usefulapi

by usefulapi.io · remote · no sign-in to list tools · v1.3.3 · published by io.usefulapi

Read Synchroteam jobs, customers, sites, equipment and parts; create, schedule and complete jobs.

Deletes · 8

33 tools: 8 can delete or cancel things and 25 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http synchroteam https://synchroteam.usefulapi.io/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

33 tools

Deletes or cancels 8Claude Code: deny
  • synchroteam_complete_jobWRITE: mark a job as completed, optionally with the real start and end times (give actual_start and actual_end together: Synchroteam may refuse the call with only one of them).No findings

    Why it is in this group

    • The description's first verb is "write": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: mark a job as completed, optionally with the real start and end times (give actual_start and actual_end together: Synchroteam may refuse the call with only one of them). Completing may trigger the account's 'job completed' notifications (email/SMS/webhook to managers, technicians or the customer), as configured in Synchroteam. Identify the job by exactly one of id, my_id or num. POST /job/complete.

    Annotations the server declares

    • title: Complete job
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • synchroteam_create_customerWRITE: create a new customer (name and an address are required).No findings

    Why it is in this group

    • The name "synchroteam_create_customer" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create a new customer (name and an address are required). If you pass myId and a customer with that myId already exists, nothing is created and an error is returned (use synchroteam_update_customer). POST /customer/send.

    Annotations the server declares

    • title: Create customer
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • synchroteam_create_equipmentWRITE: create a new piece of equipment under a site or a customer (give exactly one of site or customer; both is refused).No findings

    Why it is in this group

    • The name "synchroteam_create_equipment" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create a new piece of equipment under a site or a customer (give exactly one of site or customer; both is refused). If myId already exists nothing is created and an error is returned. POST /equipment/send.

    Annotations the server declares

    • title: Create equipment
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • synchroteam_create_jobWRITE: create a new job for a customer (status created, not yet scheduled; use synchroteam_schedule_job to assign a technician and time).No findings

    Why it is in this group

    • The name "synchroteam_create_job" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create a new job for a customer (status created, not yet scheduled; use synchroteam_schedule_job to assign a technician and time). The customer is required (id, myId or exact name); site, equipment and job type are optional. If myId already exists nothing is created and an error is returned. Synchroteam may send the account's 'job created' notifications (email/SMS/webhook, possibly to the customer), as configured. POST /job/send.

    Annotations the server declares

    • title: Create job
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • synchroteam_create_siteWRITE: create a new site (a location of a customer).No findings

    Why it is in this group

    • The name "synchroteam_create_site" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create a new site (a location of a customer). Needs a name, an address and the customer (id or myId). If myId already exists nothing is created and an error is returned. POST /site/send.

    Annotations the server declares

    • title: Create site
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • synchroteam_schedule_jobWRITE: schedule a job for a technician between two times (also re-schedules a scheduled or paused job).No findings

    Why it is in this group

    • The name "synchroteam_schedule_job" says "schedule": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: schedule a job for a technician between two times (also re-schedules a scheduled or paused job). Synchroteam may notify technicians and/or customers (email/SMS/webhook) as configured in the account's notification settings (SMS uses the account's paid credits). Identify the job by exactly one of id, my_id or num. POST /job/schedule.

    Annotations the server declares

    • title: Schedule job
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • synchroteam_start_jobWRITE: mark a job as started (status started, actual start now).No findings

    Why it is in this group

    • The name "synchroteam_start_job" says "start": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: mark a job as started (status started, actual start now). If the job's technician already has another started job, Synchroteam pauses that one. Starting may trigger the account's 'job started' notifications (email/SMS/webhook to managers, technicians or the customer). Identify the job by exactly one of id, my_id or num. POST /job/start.

    Annotations the server declares

    • title: Start job
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • synchroteam_update_customerWRITE: change fields of an existing customer by its numeric id.No findings

    Why it is in this group

    • The name "synchroteam_update_customer" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: change fields of an existing customer by its numeric id. Only the fields you pass are changed; nothing is cleared. The customer id must exist (an unknown id fails). POST /customer/send.

    Annotations the server declares

    • title: Update customer
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
Only reads 25Claude Code: allow
  • synchroteam_get_customerOne customer by id, myId, exact name or e-mail, with address, contact, custom fields and tags.No findings

    Why it is in this group

    • The name "synchroteam_get_customer" says "get": a word for reading.
    Description, as the server wrote it
    One customer by id, myId, exact name or e-mail, with address, contact, custom fields and tags. GET /customer/details.

    Annotations the server declares

    • title: Get customer
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_depotOne stock depot by id, with the quantity of each part it holds.No findings

    Why it is in this group

    • The name "synchroteam_get_depot" says "get": a word for reading.
    Description, as the server wrote it
    One stock depot by id, with the quantity of each part it holds. GET /depot/details.

    Annotations the server declares

    • title: Get depot
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_equipmentOne piece of equipment by id, myId or exact name, with its customer and site.No findings

    Why it is in this group

    • The name "synchroteam_get_equipment" says "get": a word for reading.
    Description, as the server wrote it
    One piece of equipment by id, myId or exact name, with its customer and site. GET /equipment/details.

    Annotations the server declares

    • title: Get equipment
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_invoiceOne invoice by id, reference or number, with its lines.No findings

    Why it is in this group

    • The name "synchroteam_get_invoice" says "get": a word for reading.
    Description, as the server wrote it
    One invoice by id, reference or number, with its lines. GET /invoice/details.

    Annotations the server declares

    • title: Get invoice
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_jobOne job by num (the job number shown in the app), id or myId: status, customer/site/equipment, technician(s), schedule, actual times, time entries, parts used, report and custom fi…No findings

    Why it is in this group

    • The name "synchroteam_get_job" says "get": a word for reading.
    Description, as the server wrote it
    One job by num (the job number shown in the app), id or myId: status, customer/site/equipment, technician(s), schedule, actual times, time entries, parts used, report and custom fields. GET /job/details.

    Annotations the server declares

    • title: Get job
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_job_photosPhoto links of a job (url, file name, comment, report iteration).No findings

    Why it is in this group

    • The name "synchroteam_get_job_photos" says "get": a word for reading.
    Description, as the server wrote it
    Photo links of a job (url, file name, comment, report iteration). Image bytes are never returned. GET /job/photos.

    Annotations the server declares

    • title: Get job photos
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_partOne part or service by id or reference.No findings

    Why it is in this group

    • The name "synchroteam_get_part" says "get": a word for reading.
    Description, as the server wrote it
    One part or service by id or reference. GET /part/details.

    Annotations the server declares

    • title: Get part
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_quotationOne quotation by id, reference or number, with its lines.No findings

    Why it is in this group

    • The name "synchroteam_get_quotation" says "get": a word for reading.
    Description, as the server wrote it
    One quotation by id, reference or number, with its lines. GET /quotation/details.

    Annotations the server declares

    • title: Get quotation
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_siteOne site by id, myId or exact name: address, contact, customer, custom fields, tags.No findings

    Why it is in this group

    • The name "synchroteam_get_site" says "get": a word for reading.
    Description, as the server wrote it
    One site by id, myId or exact name: address, contact, customer, custom fields, tags. GET /site/details.

    Annotations the server declares

    • title: Get site
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_get_userOne user by login or id.No findings

    Why it is in this group

    • The name "synchroteam_get_user" says "get": a word for reading.
    Description, as the server wrote it
    One user by login or id. GET /user/details.

    Annotations the server declares

    • title: Get user
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_activitiesList time entries and unavailabilities (travel, at work, clock, unavailable) of technicians.No findings

    Why it is in this group

    • The name "synchroteam_list_activities" says "list": a word for reading.
    Description, as the server wrote it
    List time entries and unavailabilities (travel, at work, clock, unavailable) of technicians. start_date and end_date go together and return anything overlapping that range. GET /activity/list.

    Annotations the server declares

    • title: List activities
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_contractsList service contracts by name, customer, site, period or active flag.No findings

    Why it is in this group

    • The name "synchroteam_list_contracts" says "list": a word for reading.
    Description, as the server wrote it
    List service contracts by name, customer, site, period or active flag. GET /contract/list.

    Annotations the server declares

    • title: List contracts
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_customersList or search customers (name wildcard, e-mail, active flag, change time).No findings

    Why it is in this group

    • The name "synchroteam_list_customers" says "list": a word for reading.
    Description, as the server wrote it
    List or search customers (name wildcard, e-mail, active flag, change time). Returns name, address, contact, custom fields, tags. GET /customer/list.

    Annotations the server declares

    • title: List customers
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_depotsList stock depots (warehouses and technician vans).No findings

    Why it is in this group

    • The name "synchroteam_list_depots" says "list": a word for reading.
    Description, as the server wrote it
    List stock depots (warehouses and technician vans). The part quantities of one depot come from synchroteam_get_depot. GET /depot/list.

    Annotations the server declares

    • title: List depots
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_equipmentList or search pieces of equipment (assets) by name, customer, site, active flag, change time.No findings

    Why it is in this group

    • The name "synchroteam_list_equipment" says "list": a word for reading.
    Description, as the server wrote it
    List or search pieces of equipment (assets) by name, customer, site, active flag, change time. GET /equipment/list.

    Annotations the server declares

    • title: List equipment
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_invoicesList invoices (read only): number, status, customer, job, lines, totals.No findings

    Why it is in this group

    • The name "synchroteam_list_invoices" says "list": a word for reading.
    Description, as the server wrote it
    List invoices (read only): number, status, customer, job, lines, totals. Filter by status, customer, site, job or time. GET /invoice/list.

    Annotations the server declares

    • title: List invoices
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_job_typesList job types (name, default duration, priority, skills, default report).No findings

    Why it is in this group

    • The name "synchroteam_list_job_types" says "list": a word for reading.
    Description, as the server wrote it
    List job types (name, default duration, priority, skills, default report). Use their id or name when creating a job. GET /jobtype/list.

    Annotations the server declares

    • title: List job types
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_jobsList jobs (simplified: no report, parts or time entries) filtered by status, schedule window, technician, team, customer, site, equipment, job type or project.No findings

    Why it is in this group

    • The name "synchroteam_list_jobs" says "list": a word for reading.
    Description, as the server wrote it
    List jobs (simplified: no report, parts or time entries) filtered by status, schedule window, technician, team, customer, site, equipment, job type or project. Use synchroteam_get_job for the full record. GET /job/list.

    Annotations the server declares

    • title: List jobs
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_part_requestsList technicians' part requests (urgent, sent, completed, deleted flags).No findings

    Why it is in this group

    • The name "synchroteam_list_part_requests" says "list": a word for reading.
    Description, as the server wrote it
    List technicians' part requests (urgent, sent, completed, deleted flags). GET /partrequest/list.

    Annotations the server declares

    • title: List part requests
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_partsList the parts and services catalog (reference, name, price, category, tax, tracked/serialized flags, type).No findings

    Why it is in this group

    • The name "synchroteam_list_parts" says "list": a word for reading.
    Description, as the server wrote it
    List the parts and services catalog (reference, name, price, category, tax, tracked/serialized flags, type). GET /part/list.

    Annotations the server declares

    • title: List parts
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_projectsList projects (groups of jobs) by customer, site, equipment or project type.No findings

    Why it is in this group

    • The name "synchroteam_list_projects" says "list": a word for reading.
    Description, as the server wrote it
    List projects (groups of jobs) by customer, site, equipment or project type. GET /project/list.

    Annotations the server declares

    • title: List projects
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_quotationsList quotations (read only): number, status, customer, job, lines, totals.No findings

    Why it is in this group

    • The name "synchroteam_list_quotations" says "list": a word for reading.
    Description, as the server wrote it
    List quotations (read only): number, status, customer, job, lines, totals. GET /quotation/list.

    Annotations the server declares

    • title: List quotations
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_sitesList or search sites (a customer's locations): by name, customer, active flag, change time.No findings

    Why it is in this group

    • The name "synchroteam_list_sites" says "list": a word for reading.
    Description, as the server wrote it
    List or search sites (a customer's locations): by name, customer, active flag, change time. GET /site/list.

    Annotations the server declares

    • title: List sites
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_teamsList teams with member counts and tags.No findings

    Why it is in this group

    • The name "synchroteam_list_teams" says "list": a word for reading.
    Description, as the server wrote it
    List teams with member counts and tags. GET /team/list.

    Annotations the server declares

    • title: List teams
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • synchroteam_list_usersList users: login, name, profile (technician, manager, administrator), teams, skills, last known location.No findings

    Why it is in this group

    • The name "synchroteam_list_users" says "list": a word for reading.
    Description, as the server wrote it
    List users: login, name, profile (technician, manager, administrator), teams, skills, last known location. Passwords are never returned. GET /user/list.

    Annotations the server declares

    • title: List users
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.3.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http synchroteam https://synchroteam.usefulapi.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__synchroteam__synchroteam_list_customers",
      "mcp__synchroteam__synchroteam_get_customer",
      "mcp__synchroteam__synchroteam_list_sites",
      "mcp__synchroteam__synchroteam_get_site",
      "mcp__synchroteam__synchroteam_list_equipment",
      "mcp__synchroteam__synchroteam_get_equipment",
      "mcp__synchroteam__synchroteam_list_jobs",
      "mcp__synchroteam__synchroteam_get_job",
      "mcp__synchroteam__synchroteam_get_job_photos",
      "mcp__synchroteam__synchroteam_list_job_types",
      "mcp__synchroteam__synchroteam_list_users",
      "mcp__synchroteam__synchroteam_get_user",
      "mcp__synchroteam__synchroteam_list_teams",
      "mcp__synchroteam__synchroteam_list_parts",
      "mcp__synchroteam__synchroteam_get_part",
      "mcp__synchroteam__synchroteam_list_depots",
      "mcp__synchroteam__synchroteam_get_depot",
      "mcp__synchroteam__synchroteam_list_part_requests",
      "mcp__synchroteam__synchroteam_list_invoices",
      "mcp__synchroteam__synchroteam_get_invoice",
      "mcp__synchroteam__synchroteam_list_quotations",
      "mcp__synchroteam__synchroteam_get_quotation",
      "mcp__synchroteam__synchroteam_list_contracts",
      "mcp__synchroteam__synchroteam_list_projects",
      "mcp__synchroteam__synchroteam_list_activities"
    ],
    "ask": [],
    "deny": [
      "mcp__synchroteam__synchroteam_create_customer",
      "mcp__synchroteam__synchroteam_update_customer",
      "mcp__synchroteam__synchroteam_create_site",
      "mcp__synchroteam__synchroteam_create_equipment",
      "mcp__synchroteam__synchroteam_create_job",
      "mcp__synchroteam__synchroteam_schedule_job",
      "mcp__synchroteam__synchroteam_start_job",
      "mcp__synchroteam__synchroteam_complete_job"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as synchroteam. Review it before you use it.