STEADYWRK Field Service Dispatch
Server Details
Field service dispatch: instant quotes, tracked work orders, public evals. steadywrk.app
- Status
- Healthy
- Uptime
- 99.6% over 61 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 6 tools
dispatch.estimate, dispatch.quote, and dispatch.index all touch pricing, but descriptions carefully separate public modeled rates from a credentialed quote and a trade catalog. The off-domain agentic.readiness_probe (a storefront/SEO-style readiness snapshot) and the meta dispatch.evals document sit oddly alongside the core dispatch flow, muddying the set's focus.
Five tools follow a clean namespace.action pattern (dispatch.estimate, .quote, .order, .index, .evals), which is predictable and readable. The lone outlier agentic.readiness_probe uses the same dotted style but a different namespace, a minor deviation.
Six tools is a reasonable, well-scoped set for quoting/ordering/estimating a field-service dispatch. It is slightly lean, but no tool feels wholly redundant or bloated.
The surface covers discovery (index), estimation (estimate), quoting (quote), and order creation (order), but there is no tool to retrieve an order's status despite order returning a status URL, and no cancel/update/list operations. Peripheral tools (readiness_probe, evals) do not fill these lifecycle gaps.
Available Tools
6 toolsagentic.readiness_probeInspect storefront readinessAInspect
Free multi-surface storefront readiness snapshot (UCP/ACP discovery, product schema, robots, answer-engine maps). Not an attested Store Guard grade. Response includes a Store Guard $149 CTA. No API key required.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public storefront URL or domain |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds useful behavioral context beyond annotations: free, no API key required, not attested, and a $149 CTA in the response. However, annotations mark readOnlyHint=false and idempotentHint=false, while the description frames the tool as an 'inspect'/'snapshot', so expected side effects are left ambiguous; the description does not clarify whether probing the target has write or non-idempotent consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, no filler. The core purpose is front-loaded and every sentence earns its place: scope of scan, limitation vs Store Guard, CTA, and authentication requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with an output schema, the description covers cost, auth, non-attestation, and the commercial CTA. It does not address potential rate limits or side effects of probing an external URL, so it is not quite complete, but nothing essential to invoking it is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the 'url' property already says 'Public storefront URL or domain' and maxLength 255. The description reinforces that the target must be public ('multi-sureface storefront readiness') but does not add format or syntax guidance, so it stays at the baseline for fully documented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('readiness snapshot') and concrete outputs ('UCP/ACP discovery, product schema, robots, answer-engine maps'), and explicitly disclaims being an 'attested Store Guard grade'. This is immediately distinguishable from the dispatch.* siblings and from the paid Store Guard product.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear selection context: free, no API key required, multi-surface storefront readiness check. The exclusion ('Not an attested Store Guard grade') tells the agent this is not the paid/attested alternative, and the CTA is disclosed upfront. It does not explicitly name an alternative tool, but none of the dispatch.* siblings compete for this job.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dispatch.estimateEstimate dispatch costRead-onlyIdempotentInspect
Public modeled field-service price estimate with cited BLS wage benchmarks. Returns customer hourly rates, line items, ranges and a total alongside geographic scope and source provenance. Model estimates are not observed transaction prices or binding quotes. Use dispatch.quote with an accepted credential to request a quote. No API key required.
| Name | Required | Description | Default |
|---|---|---|---|
| trade | Yes | Trade code (plumbing, electrical, HVAC, etc.) | |
| urgency | No | routine | |
| location | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
dispatch.evalsRead dispatch evaluationsRead-onlyIdempotentInspect
Return the public evaluation document for a selected rolling window. Consult its per-field provenance and methodology to distinguish self-reported estimates, measurements, and unavailable fields. It is not an independent audit or a service-level guarantee. No API key required.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | rolling_30d |
Output Schema
| Name | Required | Description |
|---|---|---|
| period | Yes | |
| estimated | Yes | False only when every goal-fulfillment rate is backed by fresh, sufficient production telemetry. A rate without such telemetry is null, not an estimate. |
| provenance | Yes | Per-field record of whether each figure is measured (live_telemetry), a stated target or coverage statement (canonical_estimate), or unavailable (published as null). |
| methodology | Yes | Metric definitions, named-period window, source-class vocabulary. Never a sample size. |
| operational | Yes | |
| trust_signals | Yes | |
| schema_version | Yes | |
| goal_fulfillment | Yes | Each rate is a live measurement or null. Null means unavailable (see provenance.by_field), not zero. |
dispatch.indexRead the dispatch trade catalogARead-onlyIdempotentInspect
Return the catalog of 8 dispatch trade verticals. Per trade: the BLS OES hourly WAGE benchmark (medianRateDollars/p25/p75 — what a technician earns, NOT a price) alongside billedHourlyRateRoutineDollars, a modeled customer hourly estimate at routine urgency. Estimates are not observed transaction prices or binding quotes. No API key required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| note | Yes | |
| trades | Yes | |
| updated_at | Yes | |
| source_period | Yes | |
| wage_vs_billed | Yes | |
| model_assumptions | Yes | |
| rate_model_version | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, closed-world, non-destructive), so the description's real value is semantic: it warns that medianRateDollars/p25/p75 are technician wages, NOT prices, and that billedHourlyRateRoutineDollars is a modeled estimate, not an observed price or binding quote. That prevents a genuine misinterpretation of the returned data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the core action and scope. The parenthetical wage-vs-price clarification is dense but earns its place; nothing else is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only catalog tool with an output schema, the description supplies everything needed: what is returned, how many items, what the fields mean, and that the numbers are estimates rather than quotes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The sentence about per-trade fields is about outputs, not inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource: 'Return the catalog of 8 dispatch trade verticals.' This clearly separates it from siblings that compute values (dispatch.estimate, dispatch.quote) — this one reads a static reference catalog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly frames this as a catalog lookup ('No API key required' signals a free, unauthenticated read), but it never states when to call it versus dispatch.estimate or dispatch.quote, nor any precondition. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dispatch.orderCreate a dispatch work orderDestructiveInspect
Create a field-service order and return its status URL. HTTP 201 returns a created order; HTTP 202 returns an order accepted_pending_fulfilment with fulfilled=false. Order creation requires a provisioned integration key through x-api-key. MCP also accepts that key through Authorization: Bearer; direct REST order creation requires x-api-key. A self-serve OAuth token authenticates but is not entitled to create orders: HTTP 402 payment_required (JSON-RPC -32002 over MCP). Anonymous callers receive HTTP 401 with WWW-Authenticate. To be provisioned, POST JSON to https://steadywrk.app/api/integration-key-request or use https://steadywrk.app/developers/keys. A person reviews each request. Email fallback: hello@steadywrk.app.
| Name | Required | Description | Default |
|---|---|---|---|
| trade | Yes | ||
| urgency | No | routine | |
| location | Yes | ||
| nte_cents | No | ||
| description | Yes | ||
| callback_url | No | ||
| reference_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
dispatch.quoteGet a dispatch quoteInspect
Request a field-service quote by trade, location, and urgency. Returns availability and quote details when available. Accepts a provisioned integration key through x-api-key or, when OAuth is enabled, a scoped self-serve OAuth token through Authorization: Bearer. MCP also accepts the provisioned key through Authorization: Bearer. Request an integration key: POST JSON to https://steadywrk.app/api/integration-key-request (GET it for the fields), or use https://steadywrk.app/developers/keys. A person reviews each request. Email fallback: hello@steadywrk.app. Over MCP, without a key, add contact_email (and optionally contact_name and company) and the request is filed for a person to answer by email. Other anonymous callers receive HTTP 401 with WWW-Authenticate. Public modeled pricing is available through dispatch.estimate.
| Name | Required | Description | Default |
|---|---|---|---|
| trade | Yes | Trade code (plumbing, electrical, HVAC, etc.) | |
| company | No | ||
| urgency | No | routine | |
| location | Yes | ||
| nte_cents | No | ||
| description | No | ||
| contact_name | No | ||
| contact_email | No | Only without a key: where a person replies with the quote. The request is filed for review. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
dispatch.quote5 fields changed- added
Input schema / properties / companyAdded value: +{ + "maxLength": 255, + "type": "string" +} - added
Input schema / properties / contact_emailAdded value: +{ + "description": "Only without a key: where a person replies with the quote. The request is filed for review.", + "format": "email", + "maxLength": 255, + "type": "string" +} - added
Input schema / properties / contact_nameAdded value: +{ + "maxLength": 255, + "type": "string" +} - changed
Output schema / descriptionPrevious value: -"A matched-contractor quote, a no-availability response, or a business/auth error passthrough from the downstream dispatch API."New value: +"A matched-contractor quote, a no-availability response, a filed keyless request, or a business/auth error passthrough from the downstream dispatch API." - changed
Output schema / oneOfPrevious value: -[ - { - "description": "A contractor was matched.", - "properties": { - "available": { - "const": true, - "type": "boolean" - }, - "next_steps": { - "properties": { - "contact": { - "type": "string" - }, - "dispatch": { - "type": "string" - }, - "docs": { - "type": "string" - } - }, - "type": "object" - }, - "quote": { - "properties": { - "alternates_count": { - "type": "integer" - }, - "best_match": { - "properties": { - "estimated_cost_cents": { - "type": "integer" - }, - "estimated_cost_usd": { - "type": "string" - }, - "estimated_response_minutes": { - "type": "number" - }, - "match_score": { - "type": "number" - } - }, - "type": "object" - }, - "estimated_eta": { - "type": "string" - }, - "generated_at": { - "type": "string" - }, - "location": { - "type": "object" - }, - "trade": { - "type": "string" - }, - "urgency": { - "enum": [ - "emergency", - "urgent", - "routine", - "scheduled" - ], - "type": "string" - }, - "valid_for_minutes": { - "type": "integer" - } - }, - "required": [ - "trade", - "location", - "urgency", - "estimated_eta", - "best_match", - "alternates_count", - "generated_at", - "valid_for_minutes" - ], - "type": "object" - } - }, - "required": [ - "available", - "quote", - "next_steps" - ], - "type": "object" - }, - { - "description": "No contractor is currently available for this trade/location.", - "properties": { - "available": { - "const": false, - "type": "boolean" - }, - "location": { - "type": "object" - }, - "message": { - "type": "string" - }, - "trade": { - "type": "string" - } - }, - "required": [ - "available", - "message", - "trade", - "location" - ], - "type": "object" - }, - { - "additionalProperties": true, - "description": "Business/rate-limit/auth error passthrough.", - "properties": { - "error": { - "type": "string" - } - }, - "required": [ - "error" - ], - "type": "object" - } -]New value: +[ + { + "description": "A contractor was matched.", + "properties": { + "available": { + "const": true, + "type": "boolean" + }, + "next_steps": { + "properties": { + "contact": { + "type": "string" + }, + "dispatch": { + "type": "string" + }, + "docs": { + "type": "string" + } + }, + "type": "object" + }, + "quote": { + "properties": { + "alternates_count": { + "type": "integer" + }, + "best_match": { + "properties": { + "estimated_cost_cents": { + "type": "integer" + }, + "estimated_cost_usd": { + "type": "string" + }, + "estimated_response_minutes": { + "type": "number" + }, + "match_score": { + "type": "number" + } + }, + "type": "object" + }, + "estimated_eta": { + "type": "string" + }, + "generated_at": { + "type": "string" + }, + "location": { + "type": "object" + }, + "trade": { + "type": "string" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + }, + "valid_for_minutes": { + "type": "integer" + } + }, + "required": [ + "trade", + "location", + "urgency", + "estimated_eta", + "best_match", + "alternates_count", + "generated_at", + "valid_for_minutes" + ], + "type": "object" + } + }, + "required": [ + "available", + "quote", + "next_steps" + ], + "type": "object" + }, + { + "description": "No contractor is currently available for this trade/location.", + "properties": { + "available": { + "const": false, + "type": "boolean" + }, + "location": { + "type": "object" + }, + "message": { + "type": "string" + }, + "trade": { + "type": "string" + } + }, + "required": [ + "available", + "message", + "trade", + "location" + ], + "type": "object" + }, + { + "description": "Keyless request filed: a person replies to contact_email. Carries a modeled estimate when the trade is in the public rate card.", + "properties": { + "duplicate": { + "type": "boolean" + }, + "live_quotes": { + "type": "string" + }, + "location": { + "type": "object" + }, + "modeled_estimate": { + "type": "object" + }, + "next_step": { + "type": "string" + }, + "request_id": { + "type": "string" + }, + "status": { + "const": "request_received", + "type": "string" + }, + "trade": { + "type": "string" + }, + "urgency": { + "type": "string" + } + }, + "required": [ + "status", + "request_id", + "next_step" + ], + "type": "object" + }, + { + "additionalProperties": true, + "description": "Business/rate-limit/auth error passthrough.", + "properties": { + "error": { + "type": "string" + } + }, + "required": [ + "error" + ], + "type": "object" + } +]
1 tool update
- Changed
dispatch.estimate1 field changed- changed
Output schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "basis": { - "const": "modeled_customer_pricing", - "type": "string" - }, - "billed_estimate": { - "additionalProperties": false, - "description": "Modeled customer hourly rates, billable hours, labor and trip line items, total and range. Not a binding quote.", - "properties": { - "billed_hourly_rate_cents": { - "type": "integer" - }, - "billed_hourly_rate_routine_cents": { - "type": "integer" - }, - "currency": { - "const": "USD", - "type": "string" - }, - "labor_subtotal_cents": { - "type": "integer" - }, - "minimum_billable_hours": { - "type": "number" - }, - "range_high_cents": { - "type": [ - "integer", - "null" - ] - }, - "range_low_cents": { - "type": [ - "integer", - "null" - ] - }, - "total_cents": { - "type": "integer" - }, - "total_usd": { - "type": "number" - }, - "trip_fee_cents": { - "type": "integer" - }, - "urgency": { - "enum": [ - "emergency", - "urgent", - "routine", - "scheduled" - ], - "type": "string" - } - }, - "type": "object" - }, - "disclosure": { - "items": { - "type": "string" - }, - "type": "array" - }, - "estimated": { - "const": true, - "type": "boolean" - }, - "estimated_cost_cents": { - "description": "Alias of billed_estimate.total_cents.", - "type": "integer" - }, - "location": { - "additionalProperties": false, - "properties": { - "city": { - "type": "string" - }, - "state": { - "type": "string" - }, - "zip": { - "type": "string" - } - }, - "type": [ - "object", - "null" - ] - }, - "location_resolution": { - "additionalProperties": false, - "properties": { - "covered_metros": { - "items": { - "type": "string" - }, - "type": "array" - }, - "location_sensitive": { - "type": "boolean" - }, - "reason": { - "type": "string" - }, - "requested": { - "additionalProperties": false, - "properties": { - "city": { - "type": [ - "string", - "null" - ] - }, - "state": { - "type": [ - "string", - "null" - ] - }, - "zip": { - "type": [ - "string", - "null" - ] - } - }, - "type": "object" - }, - "resolved_metro": { - "type": [ - "string", - "null" - ] - }, - "resolved_metro_label": { - "type": [ - "string", - "null" - ] - }, - "scope": { - "enum": [ - "metro_cited", - "national_baseline", - "mena_coverage_beta" - ], - "type": "string" - }, - "zip_used": { - "const": false, - "type": "boolean" - } - }, - "type": "object" - }, - "measurement": { - "additionalProperties": false, - "properties": { - "billed_estimate": { - "const": "estimated", - "type": "string" - }, - "explanation": { - "type": "string" - }, - "wage_basis": { - "const": "estimated", - "type": "string" - } - }, - "type": "object" - }, - "rate_card": { - "additionalProperties": false, - "properties": { - "median_dollars": { - "type": "number" - }, - "p25_dollars": { - "type": [ - "number", - "null" - ] - }, - "p75_dollars": { - "type": [ - "number", - "null" - ] - } - }, - "type": "object" - }, - "rate_model_version": { - "type": "string" - }, - "source": { - "const": "public_rate_card", - "type": "string" - }, - "trade": { - "type": "string" - }, - "urgency": { - "enum": [ - "emergency", - "urgent", - "routine", - "scheduled" - ], - "type": "string" - }, - "wage_basis": { - "additionalProperties": false, - "description": "The cited hourly WAGE input — NOT the price.", - "properties": { - "annual_median_usd": { - "type": [ - "number", - "null" - ] - }, - "bls_occ_code": { - "type": "string" - }, - "dataset": { - "type": "string" - }, - "kind": { - "const": "hourly_wage", - "type": "string" - }, - "median_cents": { - "type": "integer" - }, - "note": { - "type": "string" - }, - "p25_cents": { - "type": [ - "integer", - "null" - ] - }, - "p75_cents": { - "type": [ - "integer", - "null" - ] - }, - "period": { - "type": "string" - }, - "release": { - "type": "string" - }, - "sample_size": { - "type": [ - "integer", - "null" - ] - }, - "scope": { - "enum": [ - "metro_cited", - "national_baseline", - "mena_coverage_beta" - ], - "type": "string" - }, - "scope_label": { - "type": "string" - }, - "source": { - "type": "string" - }, - "source_url": { - "type": "string" - }, - "trade_label": { - "type": "string" - } - }, - "type": "object" - } - }, - "required": [ - "estimated", - "source", - "basis", - "rate_model_version", - "trade", - "urgency", - "location_resolution", - "wage_basis", - "billed_estimate", - "estimated_cost_cents", - "rate_card", - "disclosure" - ], - "type": "object" - }, - { - "description": "Trade was missing or not recognized. No number is fabricated.", - "properties": { - "error": { - "enum": [ - "unknown_trade", - "trade_required" - ], - "type": "string" - }, - "estimated": { - "const": false, - "type": "boolean" - }, - "known_trades": { - "items": { - "type": "string" - }, - "type": "array" - }, - "source": { - "const": "public_rate_card", - "type": "string" - }, - "trade": { - "type": [ - "string", - "null" - ] - }, - "valid_trades": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "estimated", - "source", - "error", - "trade", - "valid_trades", - "known_trades" - ], - "type": "object" - }, - { - "description": "A provided location.state is not a US state or DC code, or a MENA coverage country code. No number is fabricated; an omitted state is priced at the national baseline.", - "properties": { - "error": { - "const": "invalid_state", - "type": "string" - }, - "estimated": { - "const": false, - "type": "boolean" - }, - "source": { - "const": "public_rate_card", - "type": "string" - }, - "state": { - "type": [ - "string", - "null" - ] - }, - "valid_country_codes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "valid_states": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "estimated", - "source", - "error", - "state", - "valid_states", - "valid_country_codes" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "basis": { + "const": "modeled_customer_pricing", + "type": "string" + }, + "billed_estimate": { + "additionalProperties": false, + "description": "Modeled customer hourly rates, billable hours, labor and trip line items, total and range. Not a binding quote.", + "properties": { + "billed_hourly_rate_cents": { + "type": "integer" + }, + "billed_hourly_rate_routine_cents": { + "type": "integer" + }, + "currency": { + "const": "USD", + "type": "string" + }, + "labor_subtotal_cents": { + "type": "integer" + }, + "minimum_billable_hours": { + "type": "number" + }, + "range_high_cents": { + "type": [ + "integer", + "null" + ] + }, + "range_low_cents": { + "type": [ + "integer", + "null" + ] + }, + "total_cents": { + "type": "integer" + }, + "total_usd": { + "type": "number" + }, + "trip_fee_cents": { + "type": "integer" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + } + }, + "type": "object" + }, + "binding": { + "const": false, + "type": "boolean" + }, + "disclosure": { + "items": { + "type": "string" + }, + "type": "array" + }, + "estimate_basis": { + "const": "national_median_reference", + "description": "Present when no covered metro matched (for example, no city supplied): the figures are a non-binding national reference.", + "type": "string" + }, + "estimated": { + "const": true, + "type": "boolean" + }, + "estimated_cost_cents": { + "description": "Alias of billed_estimate.total_cents.", + "type": "integer" + }, + "location": { + "additionalProperties": false, + "properties": { + "city": { + "type": "string" + }, + "state": { + "type": "string" + }, + "zip": { + "type": "string" + } + }, + "type": [ + "object", + "null" + ] + }, + "location_resolution": { + "additionalProperties": false, + "properties": { + "covered_metros": { + "items": { + "type": "string" + }, + "type": "array" + }, + "location_sensitive": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "requested": { + "additionalProperties": false, + "properties": { + "city": { + "type": [ + "string", + "null" + ] + }, + "state": { + "type": [ + "string", + "null" + ] + }, + "zip": { + "type": [ + "string", + "null" + ] + } + }, + "type": "object" + }, + "resolved_metro": { + "type": [ + "string", + "null" + ] + }, + "resolved_metro_label": { + "type": [ + "string", + "null" + ] + }, + "scope": { + "enum": [ + "metro_cited", + "national_baseline", + "mena_coverage_beta" + ], + "type": "string" + }, + "zip_used": { + "const": false, + "type": "boolean" + } + }, + "type": "object" + }, + "measurement": { + "additionalProperties": false, + "properties": { + "billed_estimate": { + "const": "estimated", + "type": "string" + }, + "explanation": { + "type": "string" + }, + "wage_basis": { + "const": "estimated", + "type": "string" + } + }, + "type": "object" + }, + "note": { + "type": "string" + }, + "rate_card": { + "additionalProperties": false, + "properties": { + "median_dollars": { + "type": "number" + }, + "p25_dollars": { + "type": [ + "number", + "null" + ] + }, + "p75_dollars": { + "type": [ + "number", + "null" + ] + } + }, + "type": "object" + }, + "rate_model_version": { + "type": "string" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": "string" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + }, + "wage_basis": { + "additionalProperties": false, + "description": "The cited hourly WAGE input — NOT the price.", + "properties": { + "annual_median_usd": { + "type": [ + "number", + "null" + ] + }, + "bls_occ_code": { + "type": "string" + }, + "dataset": { + "type": "string" + }, + "kind": { + "const": "hourly_wage", + "type": "string" + }, + "median_cents": { + "type": "integer" + }, + "note": { + "type": "string" + }, + "p25_cents": { + "type": [ + "integer", + "null" + ] + }, + "p75_cents": { + "type": [ + "integer", + "null" + ] + }, + "period": { + "type": "string" + }, + "release": { + "type": "string" + }, + "sample_size": { + "type": [ + "integer", + "null" + ] + }, + "scope": { + "enum": [ + "metro_cited", + "national_baseline", + "mena_coverage_beta" + ], + "type": "string" + }, + "scope_label": { + "type": "string" + }, + "source": { + "type": "string" + }, + "source_url": { + "type": "string" + }, + "trade_label": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "estimated", + "source", + "basis", + "rate_model_version", + "trade", + "urgency", + "location_resolution", + "wage_basis", + "billed_estimate", + "estimated_cost_cents", + "rate_card", + "disclosure" + ], + "type": "object" + }, + { + "description": "Trade was missing or not recognized. No number is fabricated.", + "properties": { + "error": { + "enum": [ + "unknown_trade", + "trade_required" + ], + "type": "string" + }, + "estimated": { + "const": false, + "type": "boolean" + }, + "known_trades": { + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": [ + "string", + "null" + ] + }, + "valid_trades": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "estimated", + "source", + "error", + "trade", + "valid_trades", + "known_trades" + ], + "type": "object" + }, + { + "description": "A provided location.state is not a US state or DC code, or a MENA coverage country code. No number is fabricated; an omitted state is priced at the national baseline.", + "properties": { + "error": { + "const": "invalid_state", + "type": "string" + }, + "estimated": { + "const": false, + "type": "boolean" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "state": { + "type": [ + "string", + "null" + ] + }, + "valid_country_codes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "valid_states": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "estimated", + "source", + "error", + "state", + "valid_states", + "valid_country_codes" + ], + "type": "object" + } +]
2 tool updates
- Changed
dispatch.estimate2 fields changed- changed
Output schema / descriptionPrevious value: -"Modeled customer pricing with wage benchmark provenance, or an unknown/missing trade error — never a fabricated number."New value: +"Modeled customer pricing with wage benchmark provenance, or an unknown/missing trade or invalid state error — never a fabricated number." - changed
Output schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "basis": { - "const": "modeled_customer_pricing", - "type": "string" - }, - "billed_estimate": { - "additionalProperties": false, - "description": "Modeled customer hourly rates, billable hours, labor and trip line items, total and range. Not a binding quote.", - "properties": { - "billed_hourly_rate_cents": { - "type": "integer" - }, - "billed_hourly_rate_routine_cents": { - "type": "integer" - }, - "currency": { - "const": "USD", - "type": "string" - }, - "labor_subtotal_cents": { - "type": "integer" - }, - "minimum_billable_hours": { - "type": "number" - }, - "range_high_cents": { - "type": [ - "integer", - "null" - ] - }, - "range_low_cents": { - "type": [ - "integer", - "null" - ] - }, - "total_cents": { - "type": "integer" - }, - "total_usd": { - "type": "number" - }, - "trip_fee_cents": { - "type": "integer" - }, - "urgency": { - "enum": [ - "emergency", - "urgent", - "routine", - "scheduled" - ], - "type": "string" - } - }, - "type": "object" - }, - "disclosure": { - "items": { - "type": "string" - }, - "type": "array" - }, - "estimated": { - "const": true, - "type": "boolean" - }, - "estimated_cost_cents": { - "description": "Alias of billed_estimate.total_cents.", - "type": "integer" - }, - "location": { - "additionalProperties": false, - "properties": { - "city": { - "type": "string" - }, - "state": { - "type": "string" - }, - "zip": { - "type": "string" - } - }, - "type": [ - "object", - "null" - ] - }, - "location_resolution": { - "additionalProperties": false, - "properties": { - "covered_metros": { - "items": { - "type": "string" - }, - "type": "array" - }, - "location_sensitive": { - "type": "boolean" - }, - "reason": { - "type": "string" - }, - "requested": { - "additionalProperties": false, - "properties": { - "city": { - "type": [ - "string", - "null" - ] - }, - "state": { - "type": [ - "string", - "null" - ] - }, - "zip": { - "type": [ - "string", - "null" - ] - } - }, - "type": "object" - }, - "resolved_metro": { - "type": [ - "string", - "null" - ] - }, - "resolved_metro_label": { - "type": [ - "string", - "null" - ] - }, - "scope": { - "enum": [ - "metro_cited", - "national_baseline", - "mena_coverage_beta" - ], - "type": "string" - }, - "zip_used": { - "const": false, - "type": "boolean" - } - }, - "type": "object" - }, - "measurement": { - "additionalProperties": false, - "properties": { - "billed_estimate": { - "const": "estimated", - "type": "string" - }, - "explanation": { - "type": "string" - }, - "wage_basis": { - "const": "estimated", - "type": "string" - } - }, - "type": "object" - }, - "rate_card": { - "additionalProperties": false, - "properties": { - "median_dollars": { - "type": "number" - }, - "p25_dollars": { - "type": [ - "number", - "null" - ] - }, - "p75_dollars": { - "type": [ - "number", - "null" - ] - } - }, - "type": "object" - }, - "rate_model_version": { - "type": "string" - }, - "source": { - "const": "public_rate_card", - "type": "string" - }, - "trade": { - "type": "string" - }, - "urgency": { - "enum": [ - "emergency", - "urgent", - "routine", - "scheduled" - ], - "type": "string" - }, - "wage_basis": { - "additionalProperties": false, - "description": "The cited hourly WAGE input — NOT the price.", - "properties": { - "annual_median_usd": { - "type": [ - "number", - "null" - ] - }, - "bls_occ_code": { - "type": "string" - }, - "dataset": { - "type": "string" - }, - "kind": { - "const": "hourly_wage", - "type": "string" - }, - "median_cents": { - "type": "integer" - }, - "note": { - "type": "string" - }, - "p25_cents": { - "type": [ - "integer", - "null" - ] - }, - "p75_cents": { - "type": [ - "integer", - "null" - ] - }, - "period": { - "type": "string" - }, - "release": { - "type": "string" - }, - "sample_size": { - "type": [ - "integer", - "null" - ] - }, - "scope": { - "enum": [ - "metro_cited", - "national_baseline", - "mena_coverage_beta" - ], - "type": "string" - }, - "scope_label": { - "type": "string" - }, - "source": { - "type": "string" - }, - "source_url": { - "type": "string" - }, - "trade_label": { - "type": "string" - } - }, - "type": "object" - } - }, - "required": [ - "estimated", - "source", - "basis", - "rate_model_version", - "trade", - "urgency", - "location_resolution", - "wage_basis", - "billed_estimate", - "estimated_cost_cents", - "rate_card", - "disclosure" - ], - "type": "object" - }, - { - "description": "Trade was missing or not recognized. No number is fabricated.", - "properties": { - "error": { - "enum": [ - "unknown_trade", - "trade_required" - ], - "type": "string" - }, - "estimated": { - "const": false, - "type": "boolean" - }, - "known_trades": { - "items": { - "type": "string" - }, - "type": "array" - }, - "source": { - "const": "public_rate_card", - "type": "string" - }, - "trade": { - "type": [ - "string", - "null" - ] - }, - "valid_trades": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "estimated", - "source", - "error", - "trade", - "valid_trades", - "known_trades" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "basis": { + "const": "modeled_customer_pricing", + "type": "string" + }, + "billed_estimate": { + "additionalProperties": false, + "description": "Modeled customer hourly rates, billable hours, labor and trip line items, total and range. Not a binding quote.", + "properties": { + "billed_hourly_rate_cents": { + "type": "integer" + }, + "billed_hourly_rate_routine_cents": { + "type": "integer" + }, + "currency": { + "const": "USD", + "type": "string" + }, + "labor_subtotal_cents": { + "type": "integer" + }, + "minimum_billable_hours": { + "type": "number" + }, + "range_high_cents": { + "type": [ + "integer", + "null" + ] + }, + "range_low_cents": { + "type": [ + "integer", + "null" + ] + }, + "total_cents": { + "type": "integer" + }, + "total_usd": { + "type": "number" + }, + "trip_fee_cents": { + "type": "integer" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + } + }, + "type": "object" + }, + "disclosure": { + "items": { + "type": "string" + }, + "type": "array" + }, + "estimated": { + "const": true, + "type": "boolean" + }, + "estimated_cost_cents": { + "description": "Alias of billed_estimate.total_cents.", + "type": "integer" + }, + "location": { + "additionalProperties": false, + "properties": { + "city": { + "type": "string" + }, + "state": { + "type": "string" + }, + "zip": { + "type": "string" + } + }, + "type": [ + "object", + "null" + ] + }, + "location_resolution": { + "additionalProperties": false, + "properties": { + "covered_metros": { + "items": { + "type": "string" + }, + "type": "array" + }, + "location_sensitive": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "requested": { + "additionalProperties": false, + "properties": { + "city": { + "type": [ + "string", + "null" + ] + }, + "state": { + "type": [ + "string", + "null" + ] + }, + "zip": { + "type": [ + "string", + "null" + ] + } + }, + "type": "object" + }, + "resolved_metro": { + "type": [ + "string", + "null" + ] + }, + "resolved_metro_label": { + "type": [ + "string", + "null" + ] + }, + "scope": { + "enum": [ + "metro_cited", + "national_baseline", + "mena_coverage_beta" + ], + "type": "string" + }, + "zip_used": { + "const": false, + "type": "boolean" + } + }, + "type": "object" + }, + "measurement": { + "additionalProperties": false, + "properties": { + "billed_estimate": { + "const": "estimated", + "type": "string" + }, + "explanation": { + "type": "string" + }, + "wage_basis": { + "const": "estimated", + "type": "string" + } + }, + "type": "object" + }, + "rate_card": { + "additionalProperties": false, + "properties": { + "median_dollars": { + "type": "number" + }, + "p25_dollars": { + "type": [ + "number", + "null" + ] + }, + "p75_dollars": { + "type": [ + "number", + "null" + ] + } + }, + "type": "object" + }, + "rate_model_version": { + "type": "string" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": "string" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + }, + "wage_basis": { + "additionalProperties": false, + "description": "The cited hourly WAGE input — NOT the price.", + "properties": { + "annual_median_usd": { + "type": [ + "number", + "null" + ] + }, + "bls_occ_code": { + "type": "string" + }, + "dataset": { + "type": "string" + }, + "kind": { + "const": "hourly_wage", + "type": "string" + }, + "median_cents": { + "type": "integer" + }, + "note": { + "type": "string" + }, + "p25_cents": { + "type": [ + "integer", + "null" + ] + }, + "p75_cents": { + "type": [ + "integer", + "null" + ] + }, + "period": { + "type": "string" + }, + "release": { + "type": "string" + }, + "sample_size": { + "type": [ + "integer", + "null" + ] + }, + "scope": { + "enum": [ + "metro_cited", + "national_baseline", + "mena_coverage_beta" + ], + "type": "string" + }, + "scope_label": { + "type": "string" + }, + "source": { + "type": "string" + }, + "source_url": { + "type": "string" + }, + "trade_label": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "estimated", + "source", + "basis", + "rate_model_version", + "trade", + "urgency", + "location_resolution", + "wage_basis", + "billed_estimate", + "estimated_cost_cents", + "rate_card", + "disclosure" + ], + "type": "object" + }, + { + "description": "Trade was missing or not recognized. No number is fabricated.", + "properties": { + "error": { + "enum": [ + "unknown_trade", + "trade_required" + ], + "type": "string" + }, + "estimated": { + "const": false, + "type": "boolean" + }, + "known_trades": { + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": [ + "string", + "null" + ] + }, + "valid_trades": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "estimated", + "source", + "error", + "trade", + "valid_trades", + "known_trades" + ], + "type": "object" + }, + { + "description": "A provided location.state is not a US state or DC code, or a MENA coverage country code. No number is fabricated; an omitted state is priced at the national baseline.", + "properties": { + "error": { + "const": "invalid_state", + "type": "string" + }, + "estimated": { + "const": false, + "type": "boolean" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "state": { + "type": [ + "string", + "null" + ] + }, + "valid_country_codes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "valid_states": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "estimated", + "source", + "error", + "state", + "valid_states", + "valid_country_codes" + ], + "type": "object" + } +]
- Changed
dispatch.evals9 fields changed- changed
Output schema / properties / estimated / descriptionPrevious value: -"False only when goal-fulfillment rates are backed by fresh, sufficient production telemetry."New value: +"False only when every goal-fulfillment rate is backed by fresh, sufficient production telemetry. A rate without such telemetry is null, not an estimate." - added
Output schema / properties / goal_fulfillment / descriptionAdded value: +"Each rate is a live measurement or null. Null means unavailable (see provenance.by_field), not zero." - changed
Output schema / properties / goal_fulfillment / properties / completion_rate / typePrevious value: -"number"New value: +[ + "number", + "null" +] - changed
Output schema / properties / goal_fulfillment / properties / human_override_rate / typePrevious value: -"number"New value: +[ + "number", + "null" +] - changed
Output schema / properties / goal_fulfillment / properties / nte_accuracy / typePrevious value: -"number"New value: +[ + "number", + "null" +] - changed
Output schema / properties / goal_fulfillment / properties / redispatch_rate / typePrevious value: -"number"New value: +[ + "number", + "null" +] - changed
Output schema / properties / goal_fulfillment / properties / source / enumPrevious value: -[ - "live_telemetry", - "canonical_estimate" -]New value: +[ + "live_telemetry", + "unavailable" +] - added
Output schema / properties / operational / properties / latency_source / enumAdded value: +[ + "live_telemetry", + "unavailable" +] - changed
Output schema / properties / provenance / descriptionPrevious value: -"Per-field record of whether each published figure is measured or estimated."New value: +"Per-field record of whether each figure is measured (live_telemetry), a stated target or coverage statement (canonical_estimate), or unavailable (published as null)."
2 tool updates
- Changed
dispatch.estimate2 fields changed- changed
Output schema / descriptionPrevious value: -"A full wage-to-billed-rate estimate, or an unknown/missing trade error — never a fabricated number."New value: +"Modeled customer pricing with wage benchmark provenance, or an unknown/missing trade error — never a fabricated number." - changed
Output schema / oneOfPrevious value: -[ - { - "properties": { - "basis": { - "const": "wage_to_billed_rate_transform", - "type": "string" - }, - "billed_estimate": { - "additionalProperties": true, - "description": "What a buyer pays — every component of the arithmetic, re-derivable via formula.", - "properties": { - "billed_hourly_rate_cents": { - "type": "integer" - }, - "billed_hourly_rate_routine_cents": { - "type": "integer" - }, - "currency": { - "const": "USD", - "type": "string" - }, - "formula": { - "type": "string" - }, - "labor_burden_multiplier": { - "type": "number" - }, - "minimum_billable_hours": { - "type": "number" - }, - "total_cents": { - "type": "integer" - }, - "total_usd": { - "type": "number" - }, - "trip_fee_cents": { - "type": "integer" - }, - "urgency_multiplier": { - "type": "number" - } - }, - "type": "object" - }, - "disclosure": { - "items": { - "type": "string" - }, - "type": "array" - }, - "estimated": { - "const": true, - "type": "boolean" - }, - "estimated_cost_cents": { - "description": "Alias of billed_estimate.total_cents.", - "type": "integer" - }, - "location_resolution": { - "additionalProperties": true, - "properties": { - "location_sensitive": { - "type": "boolean" - }, - "reason": { - "type": "string" - }, - "resolved_metro": { - "type": [ - "string", - "null" - ] - }, - "resolved_metro_label": { - "type": [ - "string", - "null" - ] - }, - "scope": { - "enum": [ - "metro_cited", - "national_baseline", - "mena_coverage_beta" - ], - "type": "string" - } - }, - "type": "object" - }, - "rate_card": { - "properties": { - "median_dollars": { - "type": "number" - }, - "p25_dollars": { - "type": [ - "number", - "null" - ] - }, - "p75_dollars": { - "type": [ - "number", - "null" - ] - } - }, - "type": "object" - }, - "rate_model_version": { - "type": "string" - }, - "source": { - "const": "public_rate_card", - "type": "string" - }, - "trade": { - "type": "string" - }, - "urgency": { - "enum": [ - "emergency", - "urgent", - "routine", - "scheduled" - ], - "type": "string" - }, - "wage_basis": { - "additionalProperties": true, - "description": "The cited hourly WAGE input — NOT the price.", - "properties": { - "bls_occ_code": { - "type": "string" - }, - "kind": { - "const": "hourly_wage", - "type": "string" - }, - "median_cents": { - "type": "integer" - }, - "note": { - "type": "string" - }, - "p25_cents": { - "type": [ - "integer", - "null" - ] - }, - "p75_cents": { - "type": [ - "integer", - "null" - ] - }, - "scope_label": { - "type": "string" - }, - "source_url": { - "type": "string" - }, - "trade_label": { - "type": "string" - } - }, - "type": "object" - } - }, - "required": [ - "estimated", - "source", - "basis", - "rate_model_version", - "trade", - "urgency", - "location_resolution", - "wage_basis", - "billed_estimate", - "estimated_cost_cents", - "rate_card", - "disclosure" - ], - "type": "object" - }, - { - "description": "Trade was missing or not recognized. No number is fabricated.", - "properties": { - "error": { - "enum": [ - "unknown_trade", - "trade_required" - ], - "type": "string" - }, - "estimated": { - "const": false, - "type": "boolean" - }, - "known_trades": { - "items": { - "type": "string" - }, - "type": "array" - }, - "source": { - "const": "public_rate_card", - "type": "string" - }, - "trade": { - "type": [ - "string", - "null" - ] - }, - "valid_trades": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "estimated", - "source", - "error", - "trade", - "valid_trades", - "known_trades" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "basis": { + "const": "modeled_customer_pricing", + "type": "string" + }, + "billed_estimate": { + "additionalProperties": false, + "description": "Modeled customer hourly rates, billable hours, labor and trip line items, total and range. Not a binding quote.", + "properties": { + "billed_hourly_rate_cents": { + "type": "integer" + }, + "billed_hourly_rate_routine_cents": { + "type": "integer" + }, + "currency": { + "const": "USD", + "type": "string" + }, + "labor_subtotal_cents": { + "type": "integer" + }, + "minimum_billable_hours": { + "type": "number" + }, + "range_high_cents": { + "type": [ + "integer", + "null" + ] + }, + "range_low_cents": { + "type": [ + "integer", + "null" + ] + }, + "total_cents": { + "type": "integer" + }, + "total_usd": { + "type": "number" + }, + "trip_fee_cents": { + "type": "integer" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + } + }, + "type": "object" + }, + "disclosure": { + "items": { + "type": "string" + }, + "type": "array" + }, + "estimated": { + "const": true, + "type": "boolean" + }, + "estimated_cost_cents": { + "description": "Alias of billed_estimate.total_cents.", + "type": "integer" + }, + "location": { + "additionalProperties": false, + "properties": { + "city": { + "type": "string" + }, + "state": { + "type": "string" + }, + "zip": { + "type": "string" + } + }, + "type": [ + "object", + "null" + ] + }, + "location_resolution": { + "additionalProperties": false, + "properties": { + "covered_metros": { + "items": { + "type": "string" + }, + "type": "array" + }, + "location_sensitive": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "requested": { + "additionalProperties": false, + "properties": { + "city": { + "type": [ + "string", + "null" + ] + }, + "state": { + "type": [ + "string", + "null" + ] + }, + "zip": { + "type": [ + "string", + "null" + ] + } + }, + "type": "object" + }, + "resolved_metro": { + "type": [ + "string", + "null" + ] + }, + "resolved_metro_label": { + "type": [ + "string", + "null" + ] + }, + "scope": { + "enum": [ + "metro_cited", + "national_baseline", + "mena_coverage_beta" + ], + "type": "string" + }, + "zip_used": { + "const": false, + "type": "boolean" + } + }, + "type": "object" + }, + "measurement": { + "additionalProperties": false, + "properties": { + "billed_estimate": { + "const": "estimated", + "type": "string" + }, + "explanation": { + "type": "string" + }, + "wage_basis": { + "const": "estimated", + "type": "string" + } + }, + "type": "object" + }, + "rate_card": { + "additionalProperties": false, + "properties": { + "median_dollars": { + "type": "number" + }, + "p25_dollars": { + "type": [ + "number", + "null" + ] + }, + "p75_dollars": { + "type": [ + "number", + "null" + ] + } + }, + "type": "object" + }, + "rate_model_version": { + "type": "string" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": "string" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + }, + "wage_basis": { + "additionalProperties": false, + "description": "The cited hourly WAGE input — NOT the price.", + "properties": { + "annual_median_usd": { + "type": [ + "number", + "null" + ] + }, + "bls_occ_code": { + "type": "string" + }, + "dataset": { + "type": "string" + }, + "kind": { + "const": "hourly_wage", + "type": "string" + }, + "median_cents": { + "type": "integer" + }, + "note": { + "type": "string" + }, + "p25_cents": { + "type": [ + "integer", + "null" + ] + }, + "p75_cents": { + "type": [ + "integer", + "null" + ] + }, + "period": { + "type": "string" + }, + "release": { + "type": "string" + }, + "sample_size": { + "type": [ + "integer", + "null" + ] + }, + "scope": { + "enum": [ + "metro_cited", + "national_baseline", + "mena_coverage_beta" + ], + "type": "string" + }, + "scope_label": { + "type": "string" + }, + "source": { + "type": "string" + }, + "source_url": { + "type": "string" + }, + "trade_label": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "estimated", + "source", + "basis", + "rate_model_version", + "trade", + "urgency", + "location_resolution", + "wage_basis", + "billed_estimate", + "estimated_cost_cents", + "rate_card", + "disclosure" + ], + "type": "object" + }, + { + "description": "Trade was missing or not recognized. No number is fabricated.", + "properties": { + "error": { + "enum": [ + "unknown_trade", + "trade_required" + ], + "type": "string" + }, + "estimated": { + "const": false, + "type": "boolean" + }, + "known_trades": { + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": [ + "string", + "null" + ] + }, + "valid_trades": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "estimated", + "source", + "error", + "trade", + "valid_trades", + "known_trades" + ], + "type": "object" + } +]
- Changed
dispatch.index18 fields changed- added
Output schema / additionalPropertiesAdded value: +false - changed
Output schema / properties / trades / items / additionalPropertiesPrevious value: -trueNew value: +false - changed
Output schema / properties / trades / items / descriptionPrevious value: -"kind is always \"hourly_wage\" — medianRateDollars/p25/p75 (and their *Wage* aliases) are what a technician earns, NOT a price. billedHourlyRateRoutine* is what a buyer pays."New value: +"kind is always \"hourly_wage\" — medianRateDollars/p25/p75 (and their *Wage* aliases) are what a technician earns, NOT a price. billedHourlyRateRoutine* is a modeled customer hourly estimate." - added
Output schema / properties / trades / items / properties / blsOccCodeAdded value: +{ + "type": "string" +} - added
Output schema / properties / trades / items / properties / medianRateDollarsAdded value: +{ + "type": "number" +} - added
Output schema / properties / trades / items / properties / metroAdded value: +{ + "type": "string" +} - added
Output schema / properties / trades / items / properties / p25RateDollarsAdded value: +{ + "type": "number" +} - added
Output schema / properties / trades / items / properties / p75RateDollarsAdded value: +{ + "type": "number" +} - added
Output schema / properties / trades / items / properties / periodAdded value: +{ + "type": "string" +} - added
Output schema / properties / trades / items / properties / sampleSizeAdded value: +{ + "type": "integer" +} - added
Output schema / properties / trades / items / properties / stateAdded value: +{ + "type": "string" +} - added
Output schema / properties / trades / items / properties / tradeAdded value: +{ + "type": "string" +} - added
Output schema / properties / trades / items / properties / tradeLabelAdded value: +{ + "type": "string" +} - added
Output schema / properties / trades / items / properties / urgencyAdded value: +{ + "type": "string" +} - changed
Output schema / properties / wage_vs_billed / additionalPropertiesPrevious value: -trueNew value: +false - removed
Output schema / properties / wage_vs_billed / properties / formulaRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / wage_vs_billed / properties / labor_burden_multiplierRemoved value: -{ - "type": "number" -} - removed
Output schema / properties / wage_vs_billed / properties / overhead_margin_markupRemoved value: -{ - "type": "number" -}
6 tool updates
- Changed
agentic.readiness_probe1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "description": "Either a successful probe (ok=true, report + demo) or a business error (e.g. missing url) — never a fabricated report.", + "oneOf": [ + { + "properties": { + "demo": { + "properties": { + "hashSnippet": { + "type": "string" + }, + "id": { + "type": "string" + }, + "permalink": { + "type": "string" + }, + "persisted": { + "type": "boolean" + }, + "verifyPath": { + "type": "string" + } + }, + "required": [ + "id", + "permalink", + "verifyPath", + "hashSnippet", + "persisted" + ], + "type": "object" + }, + "ok": { + "const": true, + "type": "boolean" + }, + "report": { + "properties": { + "checks": { + "items": { + "properties": { + "detail": { + "type": "string" + }, + "id": { + "type": "string" + }, + "label": { + "type": "string" + }, + "status": { + "enum": [ + "pass", + "warn", + "fail", + "skip" + ], + "type": "string" + } + }, + "required": [ + "id", + "label", + "status", + "detail" + ], + "type": "object" + }, + "type": "array" + }, + "grade": { + "enum": [ + "A", + "B", + "C", + "D", + "F" + ], + "type": "string" + }, + "host": { + "type": "string" + }, + "next": { + "properties": { + "flagship": { + "type": "string" + }, + "sample": { + "type": "string" + }, + "storeGuardBuy": { + "type": "string" + } + }, + "type": "object" + }, + "origin": { + "type": "string" + }, + "probedAt": { + "type": "string" + }, + "score": { + "type": "number" + }, + "summary": { + "type": "string" + } + }, + "required": [ + "host", + "origin", + "score", + "grade", + "summary", + "checks", + "probedAt", + "next" + ], + "type": "object" + } + }, + "required": [ + "ok", + "report", + "demo" + ], + "type": "object" + }, + { + "additionalProperties": true, + "description": "Business error — e.g. missing/invalid url argument, rate limit.", + "properties": { + "error": { + "type": "string" + } + }, + "required": [ + "error" + ], + "type": "object" + } + ], + "type": "object" +}
- Changed
dispatch.estimate1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "description": "A full wage-to-billed-rate estimate, or an unknown/missing trade error — never a fabricated number.", + "oneOf": [ + { + "properties": { + "basis": { + "const": "wage_to_billed_rate_transform", + "type": "string" + }, + "billed_estimate": { + "additionalProperties": true, + "description": "What a buyer pays — every component of the arithmetic, re-derivable via formula.", + "properties": { + "billed_hourly_rate_cents": { + "type": "integer" + }, + "billed_hourly_rate_routine_cents": { + "type": "integer" + }, + "currency": { + "const": "USD", + "type": "string" + }, + "formula": { + "type": "string" + }, + "labor_burden_multiplier": { + "type": "number" + }, + "minimum_billable_hours": { + "type": "number" + }, + "total_cents": { + "type": "integer" + }, + "total_usd": { + "type": "number" + }, + "trip_fee_cents": { + "type": "integer" + }, + "urgency_multiplier": { + "type": "number" + } + }, + "type": "object" + }, + "disclosure": { + "items": { + "type": "string" + }, + "type": "array" + }, + "estimated": { + "const": true, + "type": "boolean" + }, + "estimated_cost_cents": { + "description": "Alias of billed_estimate.total_cents.", + "type": "integer" + }, + "location_resolution": { + "additionalProperties": true, + "properties": { + "location_sensitive": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "resolved_metro": { + "type": [ + "string", + "null" + ] + }, + "resolved_metro_label": { + "type": [ + "string", + "null" + ] + }, + "scope": { + "enum": [ + "metro_cited", + "national_baseline", + "mena_coverage_beta" + ], + "type": "string" + } + }, + "type": "object" + }, + "rate_card": { + "properties": { + "median_dollars": { + "type": "number" + }, + "p25_dollars": { + "type": [ + "number", + "null" + ] + }, + "p75_dollars": { + "type": [ + "number", + "null" + ] + } + }, + "type": "object" + }, + "rate_model_version": { + "type": "string" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": "string" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + }, + "wage_basis": { + "additionalProperties": true, + "description": "The cited hourly WAGE input — NOT the price.", + "properties": { + "bls_occ_code": { + "type": "string" + }, + "kind": { + "const": "hourly_wage", + "type": "string" + }, + "median_cents": { + "type": "integer" + }, + "note": { + "type": "string" + }, + "p25_cents": { + "type": [ + "integer", + "null" + ] + }, + "p75_cents": { + "type": [ + "integer", + "null" + ] + }, + "scope_label": { + "type": "string" + }, + "source_url": { + "type": "string" + }, + "trade_label": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "estimated", + "source", + "basis", + "rate_model_version", + "trade", + "urgency", + "location_resolution", + "wage_basis", + "billed_estimate", + "estimated_cost_cents", + "rate_card", + "disclosure" + ], + "type": "object" + }, + { + "description": "Trade was missing or not recognized. No number is fabricated.", + "properties": { + "error": { + "enum": [ + "unknown_trade", + "trade_required" + ], + "type": "string" + }, + "estimated": { + "const": false, + "type": "boolean" + }, + "known_trades": { + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "const": "public_rate_card", + "type": "string" + }, + "trade": { + "type": [ + "string", + "null" + ] + }, + "valid_trades": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "estimated", + "source", + "error", + "trade", + "valid_trades", + "known_trades" + ], + "type": "object" + } + ], + "type": "object" +}
- Changed
dispatch.evals1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "estimated": { + "description": "False only when goal-fulfillment rates are backed by fresh, sufficient production telemetry.", + "type": "boolean" + }, + "goal_fulfillment": { + "additionalProperties": true, + "properties": { + "completion_rate": { + "type": "number" + }, + "human_override_rate": { + "type": "number" + }, + "nte_accuracy": { + "type": "number" + }, + "redispatch_rate": { + "type": "number" + }, + "sampled_at": { + "type": "string" + }, + "source": { + "enum": [ + "live_telemetry", + "canonical_estimate" + ], + "type": "string" + } + }, + "type": "object" + }, + "methodology": { + "additionalProperties": true, + "description": "Metric definitions, named-period window, source-class vocabulary. Never a sample size.", + "type": "object" + }, + "operational": { + "additionalProperties": true, + "properties": { + "active_providers": { + "type": "null" + }, + "active_states": { + "type": "string" + }, + "avg_dispatch_latency_ms": { + "type": [ + "number", + "null" + ] + }, + "jobs_dispatched_30d": { + "type": "null" + }, + "latency_source": { + "type": "string" + }, + "p95_dispatch_latency_ms": { + "type": [ + "number", + "null" + ] + }, + "pricing_latency_p50_ms": { + "type": [ + "number", + "null" + ] + }, + "pricing_latency_p95_ms": { + "type": [ + "number", + "null" + ] + }, + "pricing_latency_sampled_at": { + "type": "string" + }, + "pricing_latency_source": { + "enum": [ + "live_telemetry", + "unavailable" + ], + "type": "string" + }, + "quote_turnaround_hours": { + "type": "number" + }, + "quote_turnaround_is_sla": { + "type": "boolean" + } + }, + "type": "object" + }, + "period": { + "enum": [ + "rolling_7d", + "rolling_30d", + "rolling_90d" + ], + "type": "string" + }, + "provenance": { + "additionalProperties": true, + "description": "Per-field record of whether each published figure is measured or estimated.", + "type": "object" + }, + "schema_version": { + "type": "string" + }, + "trust_signals": { + "properties": { + "build_hash": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "schema_version", + "period", + "estimated", + "goal_fulfillment", + "operational", + "trust_signals", + "provenance", + "methodology" + ], + "type": "object" +}
- Changed
dispatch.index1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "model_assumptions": { + "type": "string" + }, + "note": { + "type": "string" + }, + "rate_model_version": { + "type": "string" + }, + "source_period": { + "type": "string" + }, + "trades": { + "items": { + "additionalProperties": true, + "description": "kind is always \"hourly_wage\" — medianRateDollars/p25/p75 (and their *Wage* aliases) are what a technician earns, NOT a price. billedHourlyRateRoutine* is what a buyer pays.", + "properties": { + "billedHourlyRateRoutineCents": { + "type": "integer" + }, + "billedHourlyRateRoutineDollars": { + "type": "number" + }, + "kind": { + "const": "hourly_wage", + "type": "string" + }, + "medianWageDollars": { + "type": "number" + }, + "p25WageDollars": { + "type": "number" + }, + "p75WageDollars": { + "type": "number" + } + }, + "required": [ + "kind", + "medianWageDollars", + "p25WageDollars", + "p75WageDollars", + "billedHourlyRateRoutineCents", + "billedHourlyRateRoutineDollars" + ], + "type": "object" + }, + "type": "array" + }, + "updated_at": { + "type": "string" + }, + "wage_vs_billed": { + "additionalProperties": true, + "properties": { + "billed_fields": { + "items": { + "type": "string" + }, + "type": "array" + }, + "formula": { + "type": "string" + }, + "full_estimate_tool": { + "type": "string" + }, + "labor_burden_multiplier": { + "type": "number" + }, + "overhead_margin_markup": { + "type": "number" + }, + "wage_fields": { + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "trades", + "wage_vs_billed", + "note", + "model_assumptions", + "updated_at", + "source_period", + "rate_model_version" + ], + "type": "object" +}
- Changed
dispatch.order1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "description": "A recorded work order — fulfilled (contractor matched, HTTP 201) or accepted_pending_fulfilment (no contractor yet, HTTP 202) — or a business/entitlement error passthrough.", + "oneOf": [ + { + "properties": { + "accepted": { + "const": true, + "type": "boolean" + }, + "created": { + "const": true, + "type": "boolean" + }, + "fulfilled": { + "type": "boolean" + }, + "fulfilment": { + "description": "Present only when fulfilled=false.", + "properties": { + "assigned": { + "const": false, + "type": "boolean" + }, + "detail": { + "type": "string" + }, + "escalation_contact": { + "type": "string" + }, + "reason": { + "type": "string" + } + }, + "type": "object" + }, + "order": { + "additionalProperties": true, + "properties": { + "assigned_contractor_ref": { + "type": [ + "string", + "null" + ] + }, + "created_at": { + "type": "string" + }, + "estimated_response_minutes": { + "type": [ + "number", + "null" + ] + }, + "id": { + "type": "string" + }, + "location": { + "type": "object" + }, + "quoted_cost_cents": { + "type": [ + "integer", + "null" + ] + }, + "quoted_cost_usd": { + "type": [ + "string", + "null" + ] + }, + "status": { + "enum": [ + "pending_dispatch", + "accepted_pending_fulfilment" + ], + "type": "string" + }, + "trade": { + "type": "string" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + } + }, + "required": [ + "id", + "status", + "trade", + "location", + "urgency", + "created_at" + ], + "type": "object" + }, + "tracking": { + "properties": { + "auth": { + "type": "string" + }, + "status_url": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "created", + "accepted", + "fulfilled", + "order", + "tracking" + ], + "type": "object" + }, + { + "additionalProperties": true, + "description": "Business/rate-limit/entitlement error passthrough.", + "properties": { + "error": { + "type": "string" + } + }, + "required": [ + "error" + ], + "type": "object" + } + ], + "type": "object" +}
- Changed
dispatch.quote1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "description": "A matched-contractor quote, a no-availability response, or a business/auth error passthrough from the downstream dispatch API.", + "oneOf": [ + { + "description": "A contractor was matched.", + "properties": { + "available": { + "const": true, + "type": "boolean" + }, + "next_steps": { + "properties": { + "contact": { + "type": "string" + }, + "dispatch": { + "type": "string" + }, + "docs": { + "type": "string" + } + }, + "type": "object" + }, + "quote": { + "properties": { + "alternates_count": { + "type": "integer" + }, + "best_match": { + "properties": { + "estimated_cost_cents": { + "type": "integer" + }, + "estimated_cost_usd": { + "type": "string" + }, + "estimated_response_minutes": { + "type": "number" + }, + "match_score": { + "type": "number" + } + }, + "type": "object" + }, + "estimated_eta": { + "type": "string" + }, + "generated_at": { + "type": "string" + }, + "location": { + "type": "object" + }, + "trade": { + "type": "string" + }, + "urgency": { + "enum": [ + "emergency", + "urgent", + "routine", + "scheduled" + ], + "type": "string" + }, + "valid_for_minutes": { + "type": "integer" + } + }, + "required": [ + "trade", + "location", + "urgency", + "estimated_eta", + "best_match", + "alternates_count", + "generated_at", + "valid_for_minutes" + ], + "type": "object" + } + }, + "required": [ + "available", + "quote", + "next_steps" + ], + "type": "object" + }, + { + "description": "No contractor is currently available for this trade/location.", + "properties": { + "available": { + "const": false, + "type": "boolean" + }, + "location": { + "type": "object" + }, + "message": { + "type": "string" + }, + "trade": { + "type": "string" + } + }, + "required": [ + "available", + "message", + "trade", + "location" + ], + "type": "object" + }, + { + "additionalProperties": true, + "description": "Business/rate-limit/auth error passthrough.", + "properties": { + "error": { + "type": "string" + } + }, + "required": [ + "error" + ], + "type": "object" + } + ], + "type": "object" +}
1 tool update
- Added
dispatch.estimate
1 tool update
- Added
agentic.readiness_probe
Related MCP Connectors
Field service management for trades: clients, jobs, estimates, invoices, schedule and reports.
- JobkeeprOAuthcom.jobkeepr
Manage jobs, customers, scheduling, estimates and invoices for a field service business.
Search customers, manage quotes, work orders, action items, and calendar events for your business
Find, get quotes from and book local service businesses on their own Square or Google calendar.
Related MCP Servers
- AlicenseBqualityAmaintenance66 tools generated from the same OpenAPI spec as our SDKs — CI fails on drift, so REST and MCP never disagree. Underneath: a deterministic field operations scheduling engine — skills, territories, live availability, sub-3-second cascade rescheduling — drivable end-to-end from Claude or ChatGPT. Schedule changes preview before they commit; LLMs never inside the math.5346 npm3MIT
- AlicenseAqualityBmaintenanceEnables trades and field service work to be tracked per job: logging labor hours at worker rates and materials used, keeping running totals in integer cents per currency, and moving each job through a status machine from open to invoiced or archived. It also produces daily or weekly summaries of hours and value, and renders a printable card with a signature line for client sign-off.11MIT

AutoRev MCP Serverofficial
AlicenseNot gradedqualityBmaintenanceEnables AI clients to manage field service operations through natural language, including call handling, job dispatch, estimates, invoicing, and reporting via the AutoRev platform.1 npmMIT
warp-agent-mcpofficial
AlicenseAqualityCmaintenanceQuote, book, and track real LTL, FTL, cargo van, and box-truck freight through the Warp network - 20 tools, in-chat login, Stripe-charged bookings, and real carrier dispatch. Quoting is keyless; booking needs a free Warp account with a card on file.20233 npm5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.