Skip to content

Housecall Pro MCP by usefulapi

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

Manage Housecall Pro customers, jobs, estimates and leads; schedule and dispatch jobs.

Deletes · 9

25 tools: 9 can delete or cancel things and 16 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 housecall-pro https://housecall-pro.usefulapi.io/mcp

Tools

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

25 tools

Deletes or cancels 9Claude Code: deny
  • housecall_add_job_noteAdd a text note to a job.No findings

    Why it is in this group

    • The name "housecall_add_job_note" says "add": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Add a text note to a job. Housecall Pro: POST /jobs/{job_id}/notes.

    Annotations the server declares

    • title: Add a note to a job
    • destructiveHint: true
  • housecall_create_customerCreate a new customer, optionally with one or more addresses.No findings

    Why it is in this group

    • The name "housecall_create_customer" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create a new customer, optionally with one or more addresses. Housecall Pro: POST /customers.

    Annotations the server declares

    • title: Create a customer
    • destructiveHint: true
  • housecall_create_customer_addressAdd a service address to an existing customer.No findings

    Why it is in this group

    • The name "housecall_create_customer_address" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Add a service address to an existing customer. Returns the address id to use when creating a job or estimate. Housecall Pro: POST /customers/{customer_id}/addresses.

    Annotations the server declares

    • title: Add an address to a customer
    • destructiveHint: true
  • housecall_create_estimateCreate an estimate for a customer with one or more options (e.g.No findings

    Why it is in this group

    • The name "housecall_create_estimate" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create an estimate for a customer with one or more options (e.g. Good / Better / Best), each with line items priced in cents. Give an existing address_id or a new address. Housecall Pro: POST /estimates.

    Annotations the server declares

    • title: Create an estimate
    • destructiveHint: true
  • housecall_create_jobCreate a job for an existing customer at one of their existing addresses, optionally scheduled, assigned, tagged and with line items (prices in cents).No findings

    Why it is in this group

    • The name "housecall_create_job" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create a job for an existing customer at one of their existing addresses, optionally scheduled, assigned, tagged and with line items (prices in cents). Get address ids from housecall_get_customer. Housecall Pro: POST /jobs.

    Annotations the server declares

    • title: Create a job
    • destructiveHint: true
  • housecall_create_leadCreate a lead, either for an existing customer (customer_id) or with a new customer inline (customer).No findings

    Why it is in this group

    • The name "housecall_create_lead" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create a lead, either for an existing customer (customer_id) or with a new customer inline (customer). Optionally with an address, lead source, assigned employee, tags, note and line items priced in cents. Housecall Pro: POST /leads.

    Annotations the server declares

    • title: Create a lead
    • destructiveHint: true
  • housecall_dispatch_jobSet which employees a job is dispatched to.No findings

    Why it is in this group

    • The description's first verb is "set": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Set which employees a job is dispatched to. This REPLACES the current dispatch list — pass everyone who should be on the job. Housecall Pro: PUT /jobs/{job_id}/dispatch.

    Annotations the server declares

    • title: Dispatch a job to employees
    • destructiveHint: true
  • housecall_update_customerChange a customer's name, contact details, tags, lead source, notes or notification setting.No findings

    Why it is in this group

    • The name "housecall_update_customer" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Change a customer's name, contact details, tags, lead source, notes or notification setting. Only the fields you pass are sent. Housecall Pro: PUT /customers/{customer_id}.

    Annotations the server declares

    • title: Update a customer
    • destructiveHint: true
  • housecall_update_job_scheduleSet or change a job's scheduled start/end and arrival window, optionally dispatching employees and notifying the customer and/or the pro.No findings

    Why it is in this group

    • The name "housecall_update_job_schedule" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Set or change a job's scheduled start/end and arrival window, optionally dispatching employees and notifying the customer and/or the pro. Jobs with more than one appointment (multi-day) cannot be rescheduled here. Housecall Pro: PUT /jobs/{job_id}/schedule.

    Annotations the server declares

    • title: Reschedule a job
    • destructiveHint: true
Only reads 16Claude Code: allow
  • housecall_get_companyFetch the Housecall Pro company this key belongs to — name, contact details, address, time zone, service-area zip codes and (multi-location) its locations.No findings

    Why it is in this group

    • The name "housecall_get_company" says "get": a word for reading.
    Description, as the server wrote it
    Fetch the Housecall Pro company this key belongs to — name, contact details, address, time zone, service-area zip codes and (multi-location) its locations. A cheap way to confirm the key works. Housecall Pro: GET /company.

    Annotations the server declares

    • title: Get the company
    • readOnlyHint: true
  • housecall_get_customerFetch a single customer by id, including their addresses (whose ids you need to create a job or estimate).No findings

    Why it is in this group

    • The name "housecall_get_customer" says "get": a word for reading.
    Description, as the server wrote it
    Fetch a single customer by id, including their addresses (whose ids you need to create a job or estimate). Housecall Pro: GET /customers/{customer_id}.

    Annotations the server declares

    • title: Get one customer
    • readOnlyHint: true
  • housecall_get_estimateFetch a single estimate by id, including its options and each option's approval status.No findings

    Why it is in this group

    • The name "housecall_get_estimate" says "get": a word for reading.
    Description, as the server wrote it
    Fetch a single estimate by id, including its options and each option's approval status. Housecall Pro: GET /estimates/{estimate_id}.

    Annotations the server declares

    • title: Get one estimate
    • readOnlyHint: true
  • housecall_get_jobFetch a single job by id — customer, address, work status and timestamps, schedule, assigned employees, notes and totals.No findings

    Why it is in this group

    • The name "housecall_get_job" says "get": a word for reading.
    Description, as the server wrote it
    Fetch a single job by id — customer, address, work status and timestamps, schedule, assigned employees, notes and totals. Housecall Pro: GET /jobs/{id}.

    Annotations the server declares

    • title: Get one job
    • readOnlyHint: true
  • housecall_get_leadFetch a single lead by id — its customer, address, lead source, tags, assigned employee, status and pipeline status.No findings

    Why it is in this group

    • The name "housecall_get_lead" says "get": a word for reading.
    Description, as the server wrote it
    Fetch a single lead by id — its customer, address, lead source, tags, assigned employee, status and pipeline status. Housecall Pro: GET /leads/{id}.

    Annotations the server declares

    • title: Get one lead
    • readOnlyHint: true
  • housecall_list_customersList or search customers, with their phone numbers, tags and addresses.No findings

    Why it is in this group

    • The name "housecall_list_customers" says "list": a word for reading.
    Description, as the server wrote it
    List or search customers, with their phone numbers, tags and addresses. `q` searches name, email, mobile number and address. Housecall Pro: GET /customers.

    Annotations the server declares

    • title: List customers
    • readOnlyHint: true
  • housecall_list_employeesList the company's active employees with their role, contact details and permissions.No findings

    Why it is in this group

    • The name "housecall_list_employees" says "list": a word for reading.
    Description, as the server wrote it
    List the company's active employees with their role, contact details and permissions. Use their ids to assign or dispatch jobs. Housecall Pro: GET /employees.

    Annotations the server declares

    • title: List employees
    • readOnlyHint: true
  • housecall_list_estimatesList estimates, filterable by scheduled window, customer, assigned employees and work status.No findings

    Why it is in this group

    • The name "housecall_list_estimates" says "list": a word for reading.
    Description, as the server wrote it
    List estimates, filterable by scheduled window, customer, assigned employees and work status. Each carries its customer, address, schedule and options. Housecall Pro: GET /estimates.

    Annotations the server declares

    • title: List estimates
    • readOnlyHint: true
  • housecall_list_invoicesList invoices across the company, filterable by status, customer, and created / due / paid date ranges — e.g.No findings

    Why it is in this group

    • The name "housecall_list_invoices" says "list": a word for reading.
    Description, as the server wrote it
    List invoices across the company, filterable by status, customer, and created / due / paid date ranges — e.g. everything open and overdue. Amounts are in cents. Housecall Pro: GET /invoices.

    Annotations the server declares

    • title: List invoices
    • readOnlyHint: true
  • housecall_list_job_invoicesList the invoices raised for one job, with status, amounts, due and paid dates, items, taxes, discounts and payments.No findings

    Why it is in this group

    • The name "housecall_list_job_invoices" says "list": a word for reading.
    Description, as the server wrote it
    List the invoices raised for one job, with status, amounts, due and paid dates, items, taxes, discounts and payments. Housecall Pro: GET /jobs/{job_id}/invoices.

    Annotations the server declares

    • title: List a job's invoices
    • readOnlyHint: true
  • housecall_list_job_line_itemsList the line items (services, materials, labor, discounts) on one job, with unit price, cost, quantity and amount in cents.No findings

    Why it is in this group

    • The name "housecall_list_job_line_items" says "list": a word for reading.
    Description, as the server wrote it
    List the line items (services, materials, labor, discounts) on one job, with unit price, cost, quantity and amount in cents. Housecall Pro: GET /jobs/{job_id}/line_items.

    Annotations the server declares

    • title: List a job's line items
    • readOnlyHint: true
  • housecall_list_job_typesList the company's job types (e.g.No findings

    Why it is in this group

    • The name "housecall_list_job_types" says "list": a word for reading.
    Description, as the server wrote it
    List the company's job types (e.g. Repair, Install, Maintenance). Use an id as job_type_id when creating a job or estimate. Housecall Pro: GET /job_fields/job_types.

    Annotations the server declares

    • title: List job types
    • readOnlyHint: true
  • housecall_list_jobsList jobs, filterable by scheduled window, customer, assigned employees and work status.No findings

    Why it is in this group

    • The name "housecall_list_jobs" says "list": a word for reading.
    Description, as the server wrote it
    List jobs, filterable by scheduled window, customer, assigned employees and work status. Each job carries its customer, address, notes, schedule, assigned employees and totals. Housecall Pro: GET /jobs.

    Annotations the server declares

    • title: List jobs
    • readOnlyHint: true
  • housecall_list_leadsList leads, filterable by status (open / won / lost), customer, assigned employees, tags and lead source.No findings

    Why it is in this group

    • The name "housecall_list_leads" says "list": a word for reading.
    Description, as the server wrote it
    List leads, filterable by status (open / won / lost), customer, assigned employees, tags and lead source. Housecall Pro: GET /leads.

    Annotations the server declares

    • title: List leads
    • readOnlyHint: true
  • housecall_list_price_book_servicesList or search the price book's services — name, task number, price and cost (cents), taxable and online-booking flags; optionally with their materials and labor rates.No findings

    Why it is in this group

    • The name "housecall_list_price_book_services" says "list": a word for reading.
    Description, as the server wrote it
    List or search the price book's services — name, task number, price and cost (cents), taxable and online-booking flags; optionally with their materials and labor rates. Housecall Pro: GET /api/price_book/services.

    Annotations the server declares

    • title: List price book services
    • readOnlyHint: true
  • housecall_list_tagsList the tags defined in the company.No findings

    Why it is in this group

    • The name "housecall_list_tags" says "list": a word for reading.
    Description, as the server wrote it
    List the tags defined in the company. Housecall Pro: GET /tags.

    Annotations the server declares

    • title: List tags
    • readOnlyHint: 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.16.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http housecall-pro https://housecall-pro.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__housecall-pro__housecall_get_company",
      "mcp__housecall-pro__housecall_list_customers",
      "mcp__housecall-pro__housecall_get_customer",
      "mcp__housecall-pro__housecall_list_jobs",
      "mcp__housecall-pro__housecall_get_job",
      "mcp__housecall-pro__housecall_list_job_line_items",
      "mcp__housecall-pro__housecall_list_job_invoices",
      "mcp__housecall-pro__housecall_list_invoices",
      "mcp__housecall-pro__housecall_list_estimates",
      "mcp__housecall-pro__housecall_get_estimate",
      "mcp__housecall-pro__housecall_list_employees",
      "mcp__housecall-pro__housecall_list_leads",
      "mcp__housecall-pro__housecall_get_lead",
      "mcp__housecall-pro__housecall_list_job_types",
      "mcp__housecall-pro__housecall_list_tags",
      "mcp__housecall-pro__housecall_list_price_book_services"
    ],
    "ask": [],
    "deny": [
      "mcp__housecall-pro__housecall_create_customer",
      "mcp__housecall-pro__housecall_update_customer",
      "mcp__housecall-pro__housecall_create_customer_address",
      "mcp__housecall-pro__housecall_create_job",
      "mcp__housecall-pro__housecall_update_job_schedule",
      "mcp__housecall-pro__housecall_dispatch_job",
      "mcp__housecall-pro__housecall_add_job_note",
      "mcp__housecall-pro__housecall_create_estimate",
      "mcp__housecall-pro__housecall_create_lead"
    ]
  }
}

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 housecall-pro. Review it before you use it.