HireHop MCP by usefulapi

Read rental jobs, projects, late returns, contacts, inventory catalogs, depots and notes.

Should I use this

Quality & Safety

B
Description quality
98%
Schema completeness
66%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,670Tokens (tool definitions)
~1.1 KBTypical response size
Moderate attention impact (1.30% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "hirehop": {
      "url": "https://hirehop.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://hirehop.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (9)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢hirehop_get_current_user

Show the connected HireHop user's ID, company ID, name, email and default depot. Uses the authenticated current-user endpoint; excludes account settings and credentials.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_list_depots

List depot IDs, names and whether each is virtual. GET /php_functions/get_depots.php.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_search_jobs(include_jobs, include_open_projects, include_closed_projects, filter_field, filter_value, ...)

Search rental jobs and open/closed projects with customer, company, venue or job-name filters. Can filter late returns, money owing or jobs needing an invoice. Returns one page and the vendor's totals; follow pages for a complete report. Dates use depot-local calendar dates.

Input Schema

{
  "type": "object",
  "properties": {
    "include_jobs": {
      "default": true,
      "type": "boolean"
    },
    "include_open_projects": {
      "default": false,
      "type": "boolean"
    },
    "include_closed_projects": {
      "default": false,
      "type": "boolean"
    },
    "filter_field": {
      "type": "string",
      "enum": [
        "JOB_NAME",
        "CLIENT",
        "COMPANY",
        "VENUE",
        "CLIENT_REF",
        "MANAGER",
        "DEPOT"
      ]
    },
    "filter_value": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "late_returns_only": {
      "type": "boolean"
    },
    "money_owed_only": {
      "type": "boolean"
    },
    "needs_invoice_only": {
      "type": "boolean"
    },
    "mine_only": {
      "type": "boolean"
    },
    "from_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "to_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "rows": {
      "default": 25,
      "type": "integer",
      "minimum": 10,
      "maximum": 100
    },
    "sort_by": {
      "type": "string",
      "enum": [
        "JOB_NAME",
        "CLIENT",
        "COMPANY",
        "VENUE",
        "DEPOT"
      ]
    },
    "sort_direction": {
      "default": "up",
      "type": "string",
      "enum": [
        "up",
        "down"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_get_job(job_id)

Read one rental job's details using its numeric job ID from hirehop_search_jobs. GET /api/job_data.php; returns customer, dates, status and the details available to your user.

Input Schema

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "job_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_get_project(project_id)

Read a project's details, customer, managers, dates and status. Use its numeric project ID from hirehop_search_jobs. GET /php_functions/project_get_data.php.

Input Schema

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "project_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_list_project_jobs(project_id, page, rows, sort_by, sort_direction)

List a single page of the jobs in a project, with vendor totals. Use subsequent pages for the full project. GET /php_functions/projects_jobs_list.php.

Input Schema

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "rows": {
      "default": 25,
      "type": "integer",
      "minimum": 25,
      "maximum": 100
    },
    "sort_by": {
      "default": "JOB_DATE",
      "type": "string",
      "enum": [
        "JOB_DATE",
        "JOB_END",
        "ID",
        "JOB_NAME",
        "VENUE",
        "STATUS",
        "JOB_TYPE"
      ]
    },
    "sort_direction": {
      "default": "asc",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  },
  "required": [
    "project_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_list_contacts(company_id, company, name, email, telephone, ...)

Read or search customer, delivery-address and supplier contacts. One page, with vendor paging totals. Hidden/deleted contacts are excluded. GET /modules/contacts/list.php.

Input Schema

{
  "type": "object",
  "properties": {
    "company_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "company": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "email": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "telephone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "list": {
      "type": "string",
      "enum": [
        "customers",
        "delivery",
        "suppliers"
      ]
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "rows": {
      "default": 25,
      "type": "integer",
      "minimum": 25,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_list_products(kind, category_ids, page, rows)

List rental products or tracked sales products and their categories, IDs, names, part numbers and status. This is a catalog, not a date-specific availability report. One page with vendor totals. GET /modules/stock/asset_assign_list.php.

Input Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "default": "rental",
      "type": "string",
      "enum": [
        "rental",
        "sales"
      ]
    },
    "category_ids": {
      "maxItems": 30,
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 1,
        "maximum": 9007199254740991
      }
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "rows": {
      "default": 25,
      "type": "integer",
      "minimum": 20,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hirehop_list_notes(record_type, record_id, page, rows)

Read a page of notes belonging to a job, project, rental inventory product (stock) or asset. Sales inventory notes are not included. Notes can contain HTML. GET /php_functions/notes_list.php. This tool never creates or changes notes.

Input Schema

{
  "type": "object",
  "properties": {
    "record_type": {
      "type": "string",
      "enum": [
        "job",
        "project",
        "stock",
        "asset"
      ]
    },
    "record_id": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "rows": {
      "default": 25,
      "type": "integer",
      "minimum": 25,
      "maximum": 100
    }
  },
  "required": [
    "record_type",
    "record_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded9 tools