Kickserv MCP by usefulapi

io.usefulapi/kickserv

Look up Kickserv customers, jobs, notes and time entries, and create jobs, tasks and charges.

Yes, your AI can use this right now.Answered a live MCP handshake in 227 ms with no sign-in needed and exposes 20 tools.

Connect it

Settings → Connectors → Add custom connector
URL: https://kickserv.usefulapi.io/mcp

20 tools, verified live

Pulled straight from the server with tools/list on 2026-10-17.
kickserv_list_customersread-only

List or search customers, 30 per page. Every filter is an exact match on that field. Use `only` to keep the response small. Kickserv: GET /{account}/customers.xml.

kickserv_get_customerread-only

Fetch one customer by customer number, optionally with related contacts, jobs, tasks and notes. The result's `id` is what job/task create calls need as `customer_id`. Kickserv: GET /{account}/customers/{customer_number}.xml.

kickserv_list_customer_jobsread-only

List the jobs for one customer, 30 per page. Kickserv: GET /{account}/customers/{customer_number}/jobs.xml.

kickserv_list_jobsread-only

List jobs (work orders, estimates, invoices), 30 per page, filterable by schedule window, status, assigned employee, category (job type) or job status. Kickserv: GET /{account}/jobs.xml.

kickserv_get_jobread-only

Fetch one job by job number, optionally with its customer, assigned employees, job charges (line items), time entries and notes. Kickserv: GET /{account}/jobs/{job_number}.xml.

kickserv_list_customer_notesread-only

List the notes on one customer. Kickserv: GET /{account}/customers/{customer_number}/notes.xml.

kickserv_list_job_notesread-only

List the notes on one job. Kickserv: GET /{account}/jobs/{job_number}/notes.xml.

kickserv_list_job_time_entriesread-only

List the time entries (hours logged by technicians) on one job. Kickserv: GET /{account}/jobs/{job_number}/time_entries.xml.

kickserv_get_taskread-only

Fetch one task (appointment / to-do attached to a job) by id. Kickserv: GET /{account}/tasks/{task_id}.xml.

kickserv_list_employeesread-only

List all employees (technicians and office staff), active and inactive. Use their `id` for job/task assignment and time entries, and `employee_number` to filter jobs. Kickserv: GET /{account}/employees.xml.

kickserv_list_itemsread-only

List products/services (the price list used for job charges), 30 per page. Active items only by default. Kickserv: GET /{account}/items.xml.

kickserv_create_customercan modify

WRITE: create a new customer. Kickserv assigns the customer number. Kickserv: POST /{account}/customers.xml.

kickserv_update_customercan modify

WRITE: update fields on an existing customer. Only the fields you pass change. Balances, credit limit and custom fields are not settable here. Kickserv: PATCH /{account}/customers/{customer_number}.xml.

kickserv_add_customer_notecan modify

WRITE: add a note to a customer. Set `public` to true to make it visible to the customer. Kickserv: POST /{account}/customers/{customer_number}/notes.xml.

kickserv_create_jobcan modify

WRITE: create a job (work order) for a customer. `customer_id` is the customer's internal `id` (from kickserv_get_customer), not the customer number; `job_type_id` is the job category. Set `estimate` to create it as an estimate. Kickserv: POST /{account}/jobs.xml.

kickserv_update_jobcan modify

WRITE: update an existing job — reschedule it, rename it, change its description, category or custom job status, or reassign employees (employee_ids replaces the assignment). Totals, tax and payment fields are not settable here. Kickserv: PATCH /{account}/jobs/{job_number}.xml.

kickserv_add_job_notecan modify

WRITE: add a note to a job. Set `public` to true to make it visible to the customer. Kickserv: POST /{account}/jobs/{job_number}/notes.xml.

kickserv_create_taskcan modify

WRITE: create a task (appointment / to-do) on a job and optionally assign employees. `job_id` is the job's internal `id` (from kickserv_get_job), not the job number. Kickserv: POST /{account}/tasks.xml.

kickserv_log_time_entrycan modify

WRITE: log hours worked by an employee on a job. `employee_id` is the employee's `id` from kickserv_list_employees. Kickserv: POST /{account}/jobs/{job_number}/time_entries.xml.

kickserv_add_job_chargecan modify

WRITE: add a charge (line item — a product, service or part) to a job. This changes the job's estimate/invoice total; it does NOT charge the customer's card. Pick `item_id` from kickserv_list_items. Kickserv: POST /{account}/jobs/{job_number}/job_charges.xml.

Alternatives in Productivity

Compare →
Try “Notion”, “Stripe”, “create invoice”, “browser”