Fla Hcp Mcp avatar

Fla Hcp Mcp

Pricing

Pay per usage

Go to Apify Store
Fla Hcp Mcp

Fla Hcp Mcp

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Flow Logic Automation

Flow Logic Automation

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

9 days ago

Last modified

Share

Housecall Pro MCP Server

An Apify Actor that provides AI agents with access to the Housecall Pro API v1 through the Model Context Protocol (MCP). Connect your own HCP API key and let AI agents manage customers, jobs, estimates, leads, invoices, scheduling, and more.

Features

  • 80 tools across 18 categories of the Housecall Pro API
  • Bring your own API key — each user provides their own HCP credentials, stored securely
  • Automatic timezone conversion — all datetime fields are converted between UTC and your local timezone
  • Per-page pagination billing — GET requests with auto-pagination charge per page fetched, not per tool call
  • Confirmation-guarded deletions — destructive operations require a two-step confirmation to prevent accidents
  • Transparent rate limiting — HCP API rate limit info is surfaced directly to the AI agent
  • Modular architecture — organized by API category for easy maintenance and expansion

Setup

Input Configuration

ParameterRequiredDescription
hcpApiKeyYesYour Housecall Pro API key (stored as a secret). Generate one at HCP Settings > API Keys.
timezoneYesYour company's IANA timezone (e.g. America/New_York). Must match your HCP Company Profile timezone.

Connecting an MCP Client

The Actor runs in standby mode. Only the user who started the run can use the MCP; the token must be the same Apify API token as the account that started the run (Apify MCP model).

Mode A: Claude → Apify MCP server (mcp.apify.com) → this Actor (recommended)

Connect Claude to the hosted Apify MCP server and add this Actor as a tool. Use the mcp.apify.com configurator or add to claude_desktop_config.json:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=flow_logic_automation/flow-logic-automation-hcp-mcp",
"headers": {
"Authorization": "Bearer YOUR_APIFY_TOKEN"
}
}
}
}

Replace YOUR_APIFY_TOKEN with your Apify API token. Replace flow_logic_automation/flow-logic-automation-hcp-mcp with your Actor's full name (username/actor-name from Apify Console) if different. You will provide HCP API key and timezone when the tool is used or via the configurator.

Mode B: Claude → direct run URL

After you start the Actor on Apify, open Live View and copy the run URL (e.g. https://xxxxx.runs.apify.net). In Claude Desktop → Settings → Developer → Edit Config:

{
"mcpServers": {
"hcp-mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://YOUR_RUN_URL_HERE/mcp",
"--header",
"Authorization: Bearer YOUR_APIFY_API_TOKEN"
]
}
}
}

Or use the query token form (add ?token=YOUR_APIFY_TOKEN to the /mcp URL if your client supports it). Replace YOUR_RUN_URL_HERE with the run URL (no trailing slash) and use the same Apify API token as the account that started the run. Restart Claude Desktop after saving.

Use the container URL from Live View; the run must stay Running and Ready.

Troubleshooting

  • 401 Unauthorized: Use the exact Apify API token for the account that started the run. Copy it again from Integrations; no extra spaces.
  • Server disconnected: Verify the run is Ready (log shows "Housecall Pro MCP Server listening on port …"). Test with: curl -v --max-time 15 -X POST "https://YOUR_RUN_URL/mcp" -H "Content-Type: application/json" -H "Authorization: Bearer YOUR_TOKEN" -d '{"jsonrpc":"2.0","method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}},"id":1}' — you should get HTTP 200 and JSON, not 401.
  • Claude logs: macOS ~/Library/Logs/Claude/. Restart Claude fully (quit and reopen) after config changes.

Alternative: Apify hosted MCP — If you use Apify’s main MCP server (mcp.apify.com), add this Actor in the tools parameter so it appears as a tool there; use the same Apify token for auth.

Pricing

Every tool call is billed at $0.01 per event (GET, POST, PUT, or DELETE). Auto-paginate fetches charge once per page.

Tool Catalog

Customers (7 tools)

ToolMethodDescription
hcp_get_customersGETSearch/list customers by name, phone, email, or address
hcp_create_customerPOSTCreate a new customer record
hcp_get_customerGETGet a specific customer by ID
hcp_update_customerPUTUpdate fields on an existing customer
hcp_get_customer_addressesGETList all addresses for a customer
hcp_create_customer_addressPOSTAdd a new address to a customer
hcp_get_customer_addressGETGet a specific address by ID

Jobs (21 tools)

ToolMethodDescription
hcp_get_jobsGETSearch/list jobs with date, status, and employee filters
hcp_create_jobPOSTCreate a new job for a customer
hcp_get_jobGETGet a specific job by ID
hcp_add_job_attachmentPOSTUpload a file attachment to a job
hcp_get_job_line_itemsGETList line items for a job
hcp_add_job_line_itemPOSTAdd a single line item
hcp_bulk_update_job_line_itemsPUTBulk create/update line items
hcp_update_job_line_itemPUTUpdate a single line item
hcp_delete_job_line_itemDELETEDelete a line item (requires confirmation)
hcp_update_job_schedulePUTUpdate a job's schedule
hcp_delete_job_scheduleDELETERemove schedule from a job (requires confirmation)
hcp_dispatch_jobPUTDispatch a job to employees
hcp_get_job_materialsGETList input materials for a job
hcp_bulk_update_job_materialsPUTBulk create/update job materials
hcp_add_job_tagPOSTAdd a tag to a job
hcp_remove_job_tagDELETERemove a tag from a job (requires confirmation)
hcp_add_job_notePOSTAdd a note to a job
hcp_delete_job_noteDELETEDelete a job note (requires confirmation)
hcp_create_job_linkPOSTAdd a link to a job
hcp_lock_jobPOSTLock a single job
hcp_lock_jobs_by_date_rangePOSTLock jobs in a date range

Job Appointments (4 tools)

ToolMethodDescription
hcp_get_job_appointmentsGETList all appointments for a job
hcp_create_job_appointmentPOSTAdd an appointment to a multi-day job
hcp_update_job_appointmentPUTUpdate an appointment
hcp_delete_job_appointmentDELETEDelete an appointment (requires confirmation)

Job Invoices (1 tool)

ToolMethodDescription
hcp_get_job_invoicesGETGet invoice details for a job

Estimates (12 tools)

ToolMethodDescription
hcp_get_estimatesGETList estimates with filters
hcp_create_estimatePOSTCreate an estimate with options and line items
hcp_get_estimateGETGet a specific estimate by ID
hcp_add_estimate_option_attachmentPOSTUpload file to an estimate option
hcp_get_estimate_option_line_itemsGETList line items for an option
hcp_bulk_update_estimate_option_line_itemsPUTBulk update option line items
hcp_create_estimate_option_linkPOSTAdd a link to an option
hcp_update_estimate_option_schedulePUTUpdate option schedule
hcp_create_estimate_option_notePOSTAdd a note to an option
hcp_delete_estimate_option_noteDELETEDelete a note (requires confirmation)
hcp_decline_estimate_optionsPOSTDecline estimate options
hcp_approve_estimate_optionsPOSTApprove estimate options

Leads (4 tools)

ToolMethodDescription
hcp_create_leadPOSTCreate a lead (with existing or inline customer)
hcp_get_leadsGETList leads with filters (customer, employee, status, tags)
hcp_get_leadGETGet a single lead by ID
hcp_convert_leadPOSTConvert a lead to an estimate or job

Lead Sources (3 tools)

ToolMethodDescription
hcp_get_lead_sourcesGETList lead sources (with name search)
hcp_create_lead_sourcePOSTCreate a new lead source
hcp_update_lead_sourcePUTUpdate a lead source name (editable only)

Lead Line Items (1 tool)

ToolMethodDescription
hcp_get_lead_line_itemsGETList all line items for a lead

Invoices (3 tools)

ToolMethodDescription
hcp_get_invoicesGETList invoices with filters (status, customer, dates, payment method)
hcp_get_invoiceGETGet a single invoice by UUID
hcp_preview_invoiceGETPreview an invoice as rendered HTML

Employees (1 tool)

ToolMethodDescription
hcp_get_employeesGETList active employees (IDs, names, roles)

Tags (3 tools)

ToolMethodDescription
hcp_get_tagsGETList all tags
hcp_create_tagPOSTCreate a new tag
hcp_update_tagPUTRename an existing tag

Job Types (3 tools)

ToolMethodDescription
hcp_get_job_typesGETList job types (with optional name filter)
hcp_create_job_typePOSTCreate a new job type
hcp_update_job_typePUTRename an existing job type

Price Book Services (1 tool)

ToolMethodDescription
hcp_get_price_book_servicesGETSearch/list price book services with filters

Material Categories (4 tools)

ToolMethodDescription
hcp_get_material_categoriesGETList categories (root or subcategories)
hcp_create_material_categoryPOSTCreate a new material category
hcp_update_material_categoryPUTUpdate a category name
hcp_delete_material_categoryDELETEDelete a category (requires confirmation)

Materials (4 tools)

ToolMethodDescription
hcp_get_materialsGETList price book materials under a category
hcp_create_materialPOSTCreate a new material
hcp_update_materialPUTUpdate a material
hcp_delete_materialDELETEDelete a material (requires confirmation)

Schedule (3 tools)

ToolMethodDescription
hcp_get_schedule_windowsGETGet company business hours configuration
hcp_update_schedule_windowsPUTUpdate business hours and bookable windows
hcp_get_booking_windowsGETGet actual available booking slots for a time range

Events (2 tools)

ToolMethodDescription
hcp_get_eventsGETList events with filters and sorting
hcp_get_eventGETGet a single event by ID

Webhooks (2 tools)

ToolMethodDescription
hcp_create_webhook_subscriptionPOSTSubscribe company to webhook events
hcp_delete_webhook_subscriptionDELETEUnsubscribe from webhooks (requires confirmation)

Checklists (1 tool)

ToolMethodDescription
hcp_get_checklistsGETGet checklists for specific jobs or estimates

Key Behaviors

Timezone Handling

All datetime fields are automatically handled:

  • Outgoing (to HCP API): Local times provided by the AI agent are converted to UTC before sending
  • Incoming (from HCP API): UTC datetimes in responses are converted to your configured local timezone

Configure your timezone to match your HCP Company Profile settings.

Auto-Pagination

List endpoints support an auto_paginate parameter. When enabled, the tool fetches all available pages (up to 50 for safety) and returns the complete dataset. Each page fetched incurs a separate GET charge ($0.01).

Destructive Operation Safety

All DELETE operations use a two-step confirmation pattern:

  1. First call (without confirm: true) returns a warning message describing what will be deleted
  2. Second call (with confirm: true) executes the deletion

Only the confirmed deletion is charged.

Monetary Values

All monetary values in the HCP API are in cents. For example, unit_price: 5000 means $50.00.

Resources