LeaveSheet: Davis-Bacon wage rates and WH-347 certified payroll
Read-only Davis-Bacon wage determination lookup, crew pay checks, fringe 6B, WH-347 payroll drafts.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
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": {
"leavesheet-certified-payroll": {
"url": "https://app.tabletemplates.com/api/mcp"
}
}
}Remote endpoints
https://app.tabletemplates.com/api/mcpstreamable-httpWhat it can do
Tool inventory
Tools (8)
π’find_wage_determination(state, county, constructionType, wdText, awardDate, ...)
Use when the user needs the general wage determination (WD) for a federally funded construction project. This tool makes no network call: it explains where the WD is (the one incorporated in the contract or bid documents, starting with "General Decision Number"), builds the sam.gov search link with the filters to set (state, county, construction type) for the user to open, and quotes the revision rules of 29 CFR 1.6(c). If the user pastes the WD text (wdText) with the contract award date, it reads the modification table and picks the modification that applies under 29 CFR 1.6(c). Example: state="TX", county="Travis", constructionType="Highway", awardDate="2026-06-01". Then call get_wage_rates with the pasted text.
Input Schema
{
"type": "object",
"properties": {
"state": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "Two-letter state code, e.g. \"TX\"."
},
"county": {
"description": "County name, e.g. \"Travis\".",
"type": "string",
"minLength": 2,
"maxLength": 60
},
"constructionType": {
"description": "Construction type named in the contract.",
"type": "string",
"enum": [
"Building",
"Heavy",
"Highway",
"Residential"
]
},
"wdText": {
"type": "string",
"minLength": 100,
"maxLength": 400000,
"description": "Text of the WD found by the user, optional, pasted by the user from the contract or from the sam.gov page, from \"General Decision Number\" to \"END OF GENERAL DECISION\", line breaks kept (max 400000 characters). Pass the same text again in later calls so rowId values stay valid."
},
"awardDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Contract award date (or start of construction when there is no award)."
},
"bidOpeningDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Bid opening date, sealed-bid contracts only."
}
},
"required": [
"state"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "wd"
},
"searchUrl": {
"type": "string",
"description": "sam.gov wage determination search, opened by the user."
},
"filters": {
"type": "object",
"properties": {
"state": {
"type": "string"
},
"county": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"constructionType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"state",
"county",
"constructionType"
],
"additionalProperties": false
},
"steps": {
"type": "array",
"items": {
"type": "string"
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {
"type": "string"
},
"cite": {
"type": "string"
}
},
"required": [
"text",
"cite"
],
"additionalProperties": false
}
},
"pasted": {
"anyOf": [
{
"type": "object",
"properties": {
"source": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"const": "pasted_text",
"description": "Rates come from the WD text pasted by the user; nothing is fetched."
},
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"revision": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Last modification listed in the pasted text."
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"samUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Public sam.gov page of this WD, for the user to check the text."
}
},
"required": [
"origin",
"wd",
"revision",
"published",
"samUrl"
],
"additionalProperties": false
},
"header": {
"type": "object",
"properties": {
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"counties": {
"type": "array",
"items": {
"type": "string"
}
},
"constructionTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"modifications": {
"type": "array",
"items": {
"type": "object",
"properties": {
"number": {
"type": "number"
},
"published": {
"type": "string"
}
},
"required": [
"number",
"published"
],
"additionalProperties": false
}
}
},
"required": [
"wd",
"state",
"counties",
"constructionTypes",
"modifications"
],
"additionalProperties": false
}
},
"required": [
"source",
"header"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"applicable": {
"anyOf": [
{
"type": "object",
"properties": {
"revision": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"cutoff": {
"type": "string"
},
"rule": {
"type": "string"
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"samUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"cite": {
"type": "string"
}
},
"required": [
"revision",
"published",
"cutoff",
"rule",
"warnings",
"samUrl",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"searchUrl",
"filters",
"steps",
"rules",
"pasted",
"applicable",
"warnings",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’get_wage_rates(wdText, search, limit)
Use when the user needs the prevailing base rate and fringe of one or more classifications and has the text of the WD (pasted from the contract or the sam.gov page). Reads the pasted text and returns each matching classification row (craft, classification, zone, base and fringe $/h with the rule they come from, notes, parse confidence) plus the verbatim excerpt and the sam.gov page to check it. rowId values feed check_crew_pay and draft_conformance_request when the same text is passed. Example: wdText="General Decision Number: TX20260291 05/18/2026 β¦", search="welder".
Input Schema
{
"type": "object",
"properties": {
"wdText": {
"type": "string",
"minLength": 100,
"maxLength": 400000,
"description": "Full text of the general wage determination, pasted by the user from the contract or from the sam.gov page, from \"General Decision Number\" to \"END OF GENERAL DECISION\", line breaks kept (max 400000 characters). Pass the same text again in later calls so rowId values stay valid."
},
"search": {
"description": "Text to match in craft, classification or zone, e.g. \"laborer\".",
"type": "string",
"minLength": 2,
"maxLength": 80
},
"limit": {
"default": 25,
"description": "Maximum rows returned (1-100).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"wdText"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "wd"
},
"source": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"const": "pasted_text",
"description": "Rates come from the WD text pasted by the user; nothing is fetched."
},
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"revision": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Last modification listed in the pasted text."
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"samUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Public sam.gov page of this WD, for the user to check the text."
}
},
"required": [
"origin",
"wd",
"revision",
"published",
"samUrl"
],
"additionalProperties": false
},
"header": {
"type": "object",
"properties": {
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"counties": {
"type": "array",
"items": {
"type": "string"
}
},
"constructionTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"modifications": {
"type": "array",
"items": {
"type": "object",
"properties": {
"number": {
"type": "number"
},
"published": {
"type": "string"
}
},
"required": [
"number",
"published"
],
"additionalProperties": false
}
}
},
"required": [
"wd",
"state",
"counties",
"constructionTypes",
"modifications"
],
"additionalProperties": false
},
"totalRows": {
"type": "number"
},
"matched": {
"type": "number"
},
"rows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rowId": {
"type": "string"
},
"craft": {
"type": "string"
},
"classification": {
"type": "string"
},
"zone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateSource": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unit": {
"type": "string",
"enum": [
"hour",
"day"
]
},
"base": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"fringe": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"fringeFormula": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"confidence": {
"type": "number"
},
"raw": {
"type": "string"
}
},
"required": [
"rowId",
"craft",
"classification",
"zone",
"rateIdentifier",
"rateSource",
"unit",
"base",
"fringe",
"fringeFormula",
"notes",
"confidence",
"raw"
],
"additionalProperties": false
}
},
"unparsedLines": {
"type": "number"
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"source",
"header",
"totalRows",
"matched",
"rows",
"unparsedLines",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’check_crew_pay(wdText, weekEnding, overtimeClause, workers)
Use when the user wants to know whether each worker on a Davis-Bacon job was paid at least the WD rate for a payroll week. For every worker and classification it computes the base and fringe due vs. paid, recomputes overtime (hours over 40 in the workweek, 29 CFR 5.5(b)(1) and 5.32), checks apprentice registration and the daily apprentice ratio (29 CFR 5.5(a)(4)), and totals the restitution owed, each amount with its CFR citation; also returns the WH-347 lines as paid. Up to 50 workers. Either pass the pasted WD text (wdText) and link each segment to a row with wdRowId (from get_wage_rates on the same text), or give the WD rate of each segment directly (rate) as the user reads it in the contract. Example: wdText="General Decision Number: TX20260291 β¦", weekEnding="2026-06-07", workers=[{name:"Crew 1", segments:[{classification:"Welder", wdRowId:"r1", stByDay:[8,8,8,8,8], paidBaseRate:22}]}].
Input Schema
{
"type": "object",
"properties": {
"wdText": {
"type": "string",
"minLength": 100,
"maxLength": 400000,
"description": "Full text of the general wage determination, pasted by the user from the contract or from the sam.gov page, from \"General Decision Number\" to \"END OF GENERAL DECISION\", line breaks kept (max 400000 characters). Pass the same text again in later calls so rowId values stay valid."
},
"weekEnding": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Last day of the payroll week."
},
"overtimeClause": {
"default": true,
"description": "CWHSSA overtime clause applies (contracts over $100,000).",
"type": "boolean"
},
"workers": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 80,
"description": "Worker name or label (no SSN)."
},
"segments": {
"minItems": 1,
"maxItems": 5,
"type": "array",
"items": {
"type": "object",
"properties": {
"classification": {
"type": "string",
"minLength": 1,
"maxLength": 160,
"description": "Classification worked, as the user names it."
},
"wdRowId": {
"description": "rowId from get_wage_rates on the same wdText (preferred).",
"type": "string",
"pattern": "^r\\d{1,4}$"
},
"rate": {
"description": "WD rate to use when there is no WD row (e.g. conformed classification).",
"type": "object",
"properties": {
"base": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe": {
"type": "number",
"minimum": 0,
"maximum": 10000
}
},
"required": [
"base",
"fringe"
]
},
"stByDay": {
"default": [],
"description": "Straight-time hours paid, Monday to Sunday.",
"maxItems": 7,
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 24
}
},
"otByDay": {
"default": [],
"description": "Overtime hours paid, Monday to Sunday.",
"maxItems": 7,
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 24
}
},
"paidBaseRate": {
"type": "number",
"minimum": 0,
"maximum": 10000,
"description": "Cash hourly rate paid, excluding cash in lieu of fringe."
},
"paidOtRate": {
"description": "Rate paid for overtime hours; default paidBaseRate x 1.5.",
"type": "number",
"minimum": 0,
"maximum": 10000
},
"paidFringe": {
"default": {
"healthWelfare": 0,
"pension": 0,
"vacation": 0,
"training": 0
},
"description": "Fringe contributions paid to each plan, $/h.",
"type": "object",
"properties": {
"healthWelfare": {
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 10000
},
"pension": {
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 10000
},
"vacation": {
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 10000
},
"training": {
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 10000
}
}
},
"cashInLieuRate": {
"default": 0,
"description": "Cash paid in lieu of fringe, $/h.",
"type": "number",
"minimum": 0,
"maximum": 10000
}
},
"required": [
"classification",
"paidBaseRate"
]
},
"description": "One entry per classification worked this week."
},
"hoursRecordedByClassification": {
"default": true,
"description": "Payroll records show the hours in each classification.",
"type": "boolean"
},
"apprentice": {
"type": "object",
"properties": {
"registered": {
"type": "boolean"
},
"pctOfJourneyworker": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Program wage as a fraction of the journeyworker base, e.g. 0.6."
},
"programFringe": {
"anyOf": [
{
"type": "number",
"minimum": 0,
"maximum": 10000
},
{
"type": "null"
}
]
},
"ratio": {
"type": "object",
"properties": {
"apprentices": {
"type": "integer",
"minimum": 1,
"maximum": 20
},
"journeyworkers": {
"type": "integer",
"minimum": 0,
"maximum": 20
}
},
"required": [
"apprentices",
"journeyworkers"
]
}
},
"required": [
"registered",
"pctOfJourneyworker",
"ratio"
]
}
},
"required": [
"name",
"segments"
]
}
}
},
"required": [
"weekEnding",
"workers"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "compliance"
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"origin": {
"type": "string",
"const": "pasted_text",
"description": "Rates come from the WD text pasted by the user; nothing is fetched."
},
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"revision": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Last modification listed in the pasted text."
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"samUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Public sam.gov page of this WD, for the user to check the text."
}
},
"required": [
"origin",
"wd",
"revision",
"published",
"samUrl"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"weekEnding": {
"type": "string"
},
"totalRestitution": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"workers": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"ratios": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"flags": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"wdRowsUsed": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rowId": {
"type": "string"
},
"craft": {
"type": "string"
},
"classification": {
"type": "string"
},
"zone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateSource": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unit": {
"type": "string",
"enum": [
"hour",
"day"
]
},
"base": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"fringe": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"fringeFormula": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"confidence": {
"type": "number"
},
"raw": {
"type": "string"
}
},
"required": [
"rowId",
"craft",
"classification",
"zone",
"rateIdentifier",
"rateSource",
"unit",
"base",
"fringe",
"fringeFormula",
"notes",
"confidence",
"raw"
],
"additionalProperties": false
}
},
"wh347Lines": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"notImplemented": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"source",
"weekEnding",
"totalRestitution",
"workers",
"ratios",
"flags",
"wdRowsUsed",
"wh347Lines",
"notImplemented",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’annualize_fringe(annualPlanCost, totalHoursWorked, dbraHours, claimedHourlyCredit, plan)
Use when a contractor pays a fringe plan (health, pensionβ¦) for a worker who also does private work, and needs the hourly credit it may take on Davis-Bacon payrolls. Applies 29 CFR 5.25(c): plan cost divided by all hours worked, over-credit and fringe owed on DBRA hours, and the defined-contribution pension exception checks. Example: annualPlanCost=9600, totalHoursWorked=2000, dbraHours=600, plan={kind:"health"}, claimedHourlyCredit=8.
Input Schema
{
"type": "object",
"properties": {
"annualPlanCost": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Plan cost for ONE worker over the period, $."
},
"totalHoursWorked": {
"type": "number",
"minimum": 1,
"maximum": 8784,
"description": "All hours worked by that worker over the period, private + DBRA."
},
"dbraHours": {
"type": "number",
"minimum": 0,
"maximum": 8784,
"description": "DBRA-covered hours within totalHoursWorked."
},
"claimedHourlyCredit": {
"type": "number",
"minimum": 0,
"maximum": 10000,
"description": "Hourly fringe credit claimed for this plan on DBRA payrolls, $/h."
},
"plan": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"health",
"defined_contribution_pension",
"defined_benefit_pension",
"other"
]
},
"unfunded": {
"type": "boolean"
},
"immediateParticipation": {
"type": "boolean"
},
"vestsWithinFirst500Hours": {
"type": "boolean"
},
"continuousInNature": {
"type": "boolean"
},
"compensatesPrivateAndDbraWork": {
"type": "boolean"
},
"exceptionGranted": {
"type": "boolean"
}
},
"required": [
"kind"
]
}
},
"required": [
"annualPlanCost",
"totalHoursWorked",
"dbraHours",
"claimedHourlyCredit",
"plan"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "compliance"
},
"status": {
"type": "string"
},
"annualizedHourlyRate": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"allowedHourlyCredit": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"overCredit": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"restitution": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"exceptionChecks": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"warnings": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"notImplemented": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"status",
"annualizedHourlyRate",
"allowedHourlyCredit",
"overCredit",
"restitution",
"exceptionChecks",
"warnings",
"notImplemented",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’compare_wd_revisions(wdTextA, wdTextB)
Use when the user asks what changed between two modifications of the same WD (e.g. the one in the contract vs. the latest one) and pastes both texts. Lists classifications added, removed and those whose base or fringe changed, with old and new amounts and the verbatim rows. Example: wdTextA="General Decision Number: CA20260001 β¦ (modification 2)", wdTextB="β¦ (modification 3)".
Input Schema
{
"type": "object",
"properties": {
"wdTextA": {
"type": "string",
"minLength": 100,
"maxLength": 400000,
"description": "Text of the earlier WD modification, pasted by the user from the contract or from the sam.gov page, from \"General Decision Number\" to \"END OF GENERAL DECISION\", line breaks kept (max 400000 characters). Pass the same text again in later calls so rowId values stay valid."
},
"wdTextB": {
"type": "string",
"minLength": 100,
"maxLength": 400000,
"description": "Text of the later WD modification, pasted by the user from the contract or from the sam.gov page, from \"General Decision Number\" to \"END OF GENERAL DECISION\", line breaks kept (max 400000 characters). Pass the same text again in later calls so rowId values stay valid."
}
},
"required": [
"wdTextA",
"wdTextB"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "wd"
},
"sourceA": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"const": "pasted_text",
"description": "Rates come from the WD text pasted by the user; nothing is fetched."
},
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"revision": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Last modification listed in the pasted text."
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"samUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Public sam.gov page of this WD, for the user to check the text."
}
},
"required": [
"origin",
"wd",
"revision",
"published",
"samUrl"
],
"additionalProperties": false
},
"sourceB": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"const": "pasted_text",
"description": "Rates come from the WD text pasted by the user; nothing is fetched."
},
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"revision": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Last modification listed in the pasted text."
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"samUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Public sam.gov page of this WD, for the user to check the text."
}
},
"required": [
"origin",
"wd",
"revision",
"published",
"samUrl"
],
"additionalProperties": false
},
"added": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rowId": {
"type": "string"
},
"craft": {
"type": "string"
},
"classification": {
"type": "string"
},
"zone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateSource": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unit": {
"type": "string",
"enum": [
"hour",
"day"
]
},
"base": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"fringe": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"fringeFormula": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"confidence": {
"type": "number"
},
"raw": {
"type": "string"
}
},
"required": [
"rowId",
"craft",
"classification",
"zone",
"rateIdentifier",
"rateSource",
"unit",
"base",
"fringe",
"fringeFormula",
"notes",
"confidence",
"raw"
],
"additionalProperties": false
}
},
"removed": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rowId": {
"type": "string"
},
"craft": {
"type": "string"
},
"classification": {
"type": "string"
},
"zone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateSource": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unit": {
"type": "string",
"enum": [
"hour",
"day"
]
},
"base": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"fringe": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"fringeFormula": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"confidence": {
"type": "number"
},
"raw": {
"type": "string"
}
},
"required": [
"rowId",
"craft",
"classification",
"zone",
"rateIdentifier",
"rateSource",
"unit",
"base",
"fringe",
"fringeFormula",
"notes",
"confidence",
"raw"
],
"additionalProperties": false
}
},
"changed": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"before": {
"type": "object",
"properties": {
"rowId": {
"type": "string"
},
"craft": {
"type": "string"
},
"classification": {
"type": "string"
},
"zone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateSource": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unit": {
"type": "string",
"enum": [
"hour",
"day"
]
},
"base": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"fringe": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"fringeFormula": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"confidence": {
"type": "number"
},
"raw": {
"type": "string"
}
},
"required": [
"rowId",
"craft",
"classification",
"zone",
"rateIdentifier",
"rateSource",
"unit",
"base",
"fringe",
"fringeFormula",
"notes",
"confidence",
"raw"
],
"additionalProperties": false
},
"after": {
"type": "object",
"properties": {
"rowId": {
"type": "string"
},
"craft": {
"type": "string"
},
"classification": {
"type": "string"
},
"zone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateSource": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unit": {
"type": "string",
"enum": [
"hour",
"day"
]
},
"base": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"fringe": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"fringeFormula": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"confidence": {
"type": "number"
},
"raw": {
"type": "string"
}
},
"required": [
"rowId",
"craft",
"classification",
"zone",
"rateIdentifier",
"rateSource",
"unit",
"base",
"fringe",
"fringeFormula",
"notes",
"confidence",
"raw"
],
"additionalProperties": false
},
"baseDelta": {
"type": "number"
},
"fringeDelta": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"before",
"after",
"baseDelta",
"fringeDelta"
],
"additionalProperties": false
}
},
"unchanged": {
"type": "number"
},
"truncated": {
"type": "boolean"
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"sourceA",
"sourceB",
"added",
"removed",
"changed",
"unchanged",
"truncated",
"warnings",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’build_certified_payroll(header, workers)
Use when the user is ready to produce the weekly certified payroll (WH-347 PDF or Excel). Computes the WH-347 columns for the crew and returns a link to the export page where the files are generated in the browser; the crew data travels in the URL fragment, which is never sent to the server. The optional last 4 digits of each SSN are typed by the user on that page only. Do not put SSNs or addresses in the arguments. Up to 50 workers.
Input Schema
{
"type": "object",
"properties": {
"header": {
"type": "object",
"properties": {
"contractorName": {
"default": "",
"type": "string",
"maxLength": 120
},
"contractorType": {
"default": null,
"anyOf": [
{
"type": "string",
"enum": [
"prime",
"sub"
]
},
{
"type": "null"
}
]
},
"projectName": {
"default": "",
"type": "string",
"maxLength": 160
},
"projectNumber": {
"default": "",
"type": "string",
"maxLength": 80
},
"projectLocation": {
"default": "",
"type": "string",
"maxLength": 160
},
"wageDetermination": {
"default": null,
"anyOf": [
{
"type": "string",
"pattern": "^[A-Z]{2}\\d{8}$"
},
{
"type": "null"
}
]
},
"wdModification": {
"default": null,
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"weekEnding": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"payrollNumber": {
"default": null,
"anyOf": [
{
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"isFinal": {
"default": false,
"type": "boolean"
}
},
"required": [
"weekEnding"
],
"description": "Contractor, project, WD and payroll week."
},
"workers": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"classification": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"workerType": {
"default": null,
"anyOf": [
{
"type": "string",
"enum": [
"J",
"RA"
]
},
{
"type": "null"
}
]
},
"apprenticeLevel": {
"default": null,
"anyOf": [
{
"type": "string",
"maxLength": 40
},
{
"type": "null"
}
]
},
"baseRate": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe": {
"type": "object",
"properties": {
"healthWelfare": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"pension": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"vacation": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"training": {
"type": "number",
"minimum": 0,
"maximum": 10000
}
},
"required": [
"healthWelfare",
"pension",
"vacation",
"training"
]
},
"stByDay": {
"minItems": 7,
"maxItems": 7,
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 24
}
},
"otByDay": {
"minItems": 7,
"maxItems": 7,
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 24
}
},
"deductions": {
"default": {
"fica": 0,
"federalTax": 0,
"stateTax": 0,
"other": 0
},
"type": "object",
"properties": {
"fica": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"federalTax": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"stateTax": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"other": {
"type": "number",
"minimum": 0,
"maximum": 10000
}
},
"required": [
"fica",
"federalTax",
"stateTax",
"other"
]
},
"cashInLieuRate": {
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 10000
},
"grossAllWork": {
"default": null,
"anyOf": [
{
"type": "number",
"minimum": 0,
"maximum": 10000
},
{
"type": "null"
}
]
}
},
"required": [
"name",
"classification",
"baseRate",
"fringe",
"stByDay",
"otByDay"
]
},
"description": "One entry per worker-week, rates and hours as paid."
}
},
"required": [
"header",
"workers"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "export"
},
"url": {
"type": "string"
},
"urlLength": {
"type": "number"
},
"workers": {
"type": "number"
},
"weekEnding": {
"type": "string"
},
"totals": {
"type": "object",
"properties": {
"gross7A": {
"type": "number"
},
"fringe6B": {
"type": "number"
},
"deductions8": {
"type": "number"
},
"net9": {
"type": "number"
}
},
"required": [
"gross7A",
"fringe6B",
"deductions8",
"net9"
],
"additionalProperties": false
},
"lines": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"reconciles": {
"type": "boolean"
},
"reviewLines": {
"type": "array",
"items": {
"type": "string"
}
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"url",
"urlLength",
"workers",
"weekEnding",
"totals",
"lines",
"reconciles",
"reviewLines",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’draft_conformance_request(missingClassification, tasks, wd, revision, wdText, ...)
Use when a worker performs a classification that is missing from the WD and the contractor must ask the contracting officer to add it. Fills the SF-1444 fields, compares the proposed rate with related WD classifications, and checks the criteria of 29 CFR 5.5(a)(1)(iii)(A) (each answered yes / no / to verify). Related classifications come from neighbourRowIds (get_wage_rates on the pasted wdText, passed again here) or are given directly. Example: missingClassification="Drone operator", tasks=["aerial survey"], wd="TX20260291", wdText="General Decision Number: TX20260291 β¦", neighbourRowIds=["r1"], proposed={base:24,fringe:0}.
Input Schema
{
"type": "object",
"properties": {
"missingClassification": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"tasks": {
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 2,
"maxLength": 200
},
"description": "Duties actually performed."
},
"wd": {
"description": "General wage determination number, e.g. \"CA20260001\".",
"type": "string"
},
"revision": {
"type": "integer",
"minimum": 0,
"maximum": 99,
"description": "WD modification (revision) number as listed on SAM.gov."
},
"wdText": {
"type": "string",
"minLength": 100,
"maxLength": 400000,
"description": "Full text of the general wage determination, pasted by the user from the contract or from the sam.gov page, from \"General Decision Number\" to \"END OF GENERAL DECISION\", line breaks kept (max 400000 characters). Pass the same text again in later calls so rowId values stay valid."
},
"neighbourRowIds": {
"default": [],
"description": "rowIds of related WD classifications (requires wdText).",
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"pattern": "^r\\d{1,4}$"
}
},
"neighbours": {
"default": [],
"description": "Related classifications given directly.",
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 2,
"maxLength": 160
},
"base": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe": {
"type": "number",
"minimum": 0,
"maximum": 10000
}
},
"required": [
"title",
"base",
"fringe"
]
}
},
"proposed": {
"type": "object",
"properties": {
"base": {
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe": {
"type": "number",
"minimum": 0,
"maximum": 10000
}
},
"required": [
"base",
"fringe"
]
},
"answers": {
"type": "object",
"properties": {
"workNotPerformedByWdClassification": {
"type": "boolean"
},
"usedInAreaByConstructionIndustry": {
"type": "boolean"
},
"doesNotSplitWdClassification": {
"type": "boolean"
}
}
},
"header": {
"type": "object",
"properties": {
"contractor": {
"type": "string",
"maxLength": 120
},
"dateOfRequest": {
"type": "string",
"maxLength": 20
},
"contractNumber": {
"type": "string",
"maxLength": 80
},
"dateBidOpened": {
"type": "string",
"maxLength": 20
},
"dateOfAward": {
"type": "string",
"maxLength": 20
},
"dateWorkStarted": {
"type": "string",
"maxLength": 20
},
"subcontractor": {
"type": "string",
"maxLength": 120
},
"projectAndDescription": {
"type": "string",
"maxLength": 300
},
"location": {
"type": "string",
"maxLength": 160
}
}
}
},
"required": [
"missingClassification",
"tasks",
"wd",
"proposed"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "wd"
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"origin": {
"type": "string",
"const": "pasted_text",
"description": "Rates come from the WD text pasted by the user; nothing is fetched."
},
"wd": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"revision": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Last modification listed in the pasted text."
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"samUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Public sam.gov page of this WD, for the user to check the text."
}
},
"required": [
"origin",
"wd",
"revision",
"published",
"samUrl"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"sf1444": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"criteria": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"neighbourComparison": {
"type": "object",
"properties": {},
"additionalProperties": {}
},
"neighbourRows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rowId": {
"type": "string"
},
"craft": {
"type": "string"
},
"classification": {
"type": "string"
},
"zone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"rateSource": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unit": {
"type": "string",
"enum": [
"hour",
"day"
]
},
"base": {
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
"fringe": {
"anyOf": [
{
"type": "object",
"properties": {
"amount": {
"type": "number"
},
"cite": {
"type": "string"
}
},
"required": [
"amount",
"cite"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"fringeFormula": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"confidence": {
"type": "number"
},
"raw": {
"type": "string"
}
},
"required": [
"rowId",
"craft",
"classification",
"zone",
"rateIdentifier",
"rateSource",
"unit",
"base",
"fringe",
"fringeFormula",
"notes",
"confidence",
"raw"
],
"additionalProperties": false
}
},
"justification": {
"type": "string"
},
"submission": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"warnings": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"source",
"sf1444",
"criteria",
"neighbourComparison",
"neighbourRows",
"justification",
"submission",
"warnings",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’reconcile_fringe_6b(workers)
Use when the user wants to check that the fringe credited on the WH-347 (column 6B) matches what was paid to each plan (health and welfare, pension, vacation, training) for the week. Same computation as the wh347_fringe_reconcile tool of leavesheet-mcp: 6B per line, totals per plan, reconciles when |sum 6B β sum plans| < 0.005. Up to 50 workers.
Input Schema
{
"type": "object",
"properties": {
"workers": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"worker": {
"default": "",
"description": "Worker label (no SSN).",
"type": "string",
"maxLength": 80
},
"base_rate": {
"default": 0,
"description": "Base hourly rate paid, $/h (column 6A).",
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe_health_welfare": {
"default": 0,
"description": "Health and welfare plan, $/h.",
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe_pension": {
"default": 0,
"description": "Pension plan, $/h.",
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe_vacation": {
"default": 0,
"description": "Vacation / holiday plan, $/h.",
"type": "number",
"minimum": 0,
"maximum": 10000
},
"fringe_training": {
"default": 0,
"description": "Training plan, $/h.",
"type": "number",
"minimum": 0,
"maximum": 10000
},
"st_hours": {
"default": [],
"description": "Straight-time hours, day 1 to 7.",
"maxItems": 7,
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 24
}
},
"ot_hours": {
"default": [],
"description": "Overtime hours, day 1 to 7.",
"maxItems": 7,
"type": "array",
"items": {
"type": "number",
"minimum": 0,
"maximum": 24
}
},
"cash_in_lieu_rate": {
"default": 0,
"description": "Cash paid in lieu of fringe, $/h (column 6C).",
"type": "number",
"minimum": 0,
"maximum": 10000
}
}
}
}
},
"required": [
"workers"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"const": "compliance"
},
"form": {
"type": "string"
},
"lines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"line": {
"type": "number"
},
"worker": {
"type": "string"
},
"total_hours": {
"type": "number"
},
"fringe_6b": {
"type": "number"
}
},
"required": [
"line",
"worker",
"total_hours",
"fringe_6b"
],
"additionalProperties": false
}
},
"plan_totals": {
"type": "object",
"properties": {
"health_welfare": {
"type": "number"
},
"pension": {
"type": "number"
},
"vacation": {
"type": "number"
},
"training": {
"type": "number"
}
},
"required": [
"health_welfare",
"pension",
"vacation",
"training"
],
"additionalProperties": false
},
"plan_totals_sum": {
"type": "number"
},
"fringe_column_6b_sum": {
"type": "number"
},
"tolerance": {
"type": "number"
},
"reconciles": {
"type": "boolean"
},
"disclaimer": {
"type": "string"
},
"card": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"wd",
"compliance",
"export"
]
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"excerpt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"title",
"subtitle",
"columns",
"rows",
"notes",
"excerpt",
"link"
],
"additionalProperties": false
}
},
"required": [
"view",
"form",
"lines",
"plan_totals",
"plan_totals_sum",
"fringe_column_6b_sum",
"tolerance",
"reconciles",
"disclaimer",
"card"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Community
Evidence