MCP TOOLcubeshell.job_change.detect

Job Change Check

Use when the user has a person's professional profile URL and the company they are expected to work for, and needs to know whether that person has moved on. Requires profile_url plus company_domain or company_name. Always returns a definite answer, changed or still employed, and every call is billed, including when no change is found. It does not find people, fetch full profiles (use cubeshell.person.profile), or monitor continuously. Each call is one point-in-time check.

i
A person plus the employer to check against
profile_url is always required. On top of it, send company_domain or company_name to say which employer the person is being checked against. Without a company there is nothing to compare the person's current role to, so the check has no question to answer.

Request

Workspace identity comes from the authenticated MCP connection, not from the call arguments. There is no workspace field to set.

ParameterTypeDescription
request_idrequiredstringStable idempotency key, 1 to 200 characters. Replaying the same request_id with the same input returns the original result without a second charge.
quote_onlyrequiredfalseMust be false. Quote-only preview is not available in this version.
input.profile_urlrequiredstringProfessional profile URL or profile username. Up to 500 characters.
input.company_domainstringBare company domain such as example.com. Not a URL. Up to 253 characters. The employer the person is expected to be at.
input.company_namestringThe expected employer by name, used when you have no domain. Up to 200 characters.
max_microcreditsintegerOptional ceiling. If the authoritative price is higher, the call is rejected before anything is charged.
tools/call
{
  "name": "cubeshell.job_change.detect",
  "arguments": {
    "request_id": "job-change-2026-07-17-001",
    "quote_only": false,
    "input": {
      "profile_url": "https://example.com/in/jane-doe",
      "company_domain": "example.com"
    }
  }
}

Result

ParameterTypeDescription
result.job_changedbooleanTrue when the person has moved on from the expected employer.
result.still_employedbooleanTrue when the person is still at the expected employer.
result.current_companystringThe employer the person is at now.
result.current_titlestringThe job title the person holds now.
result.expected_companystringThe employer the check was made against.
!
Every call is billed
This tool always reaches a definite answer. Either the person changed job or they did not, and both are settled outcomes. A still employed answer is a real result, not a miss, and it is charged like any other. There is no not_found status here and no unbilled outcome to hope for, so budget for a charge on every call rather than only on the ones that report a change.

Each call is one point-in-time check, not continuous monitoring. Nothing watches the person between calls. To track a list over time, call the tool again on your own schedule and expect to pay for each check.