get_employment_by_industry

Pack: econdata · Endpoint: https://gateway.pipeworx.io/econdata/mcp

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/get_employment_by_industry for the schema, then POST the same URL with its arguments for the data.

US employment counts broken out by industry over time, from the Bureau of Labor Statistics.

Tool description as the model sees it

Get US non-farm payroll employment by industry (manufacturing, construction, retail, financial, government, etc.). Returns employment figures in thousands by period.

Parameters

NameTypeRequiredDescription
industrystringnoIndustry to retrieve. One of: “total_nonfarm”, “manufacturing”, “construction”, “retail”, “financial”, “government”. Defaults to “total_nonfarm”.
start_yearstringnoStart year as 4-digit string (e.g. “2020”). Optional.
end_yearstringnoEnd year as 4-digit string (e.g. “2024”). Optional.
_apiKeystringnoOptional BLS registration key (free, raises the daily cap from ~25 to 500). The gateway supplies a platform key; pass your own only to override.

Example call

Arguments

{
  "industry": "manufacturing",
  "start_year": "2018",
  "end_year": "2024"
}

curl

curl -X POST https://gateway.pipeworx.io/econdata/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_employment_by_industry","arguments":{"industry":"manufacturing","start_year":"2018","end_year":"2024"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('get_employment_by_industry', {
  "industry": "manufacturing",
  "start_year": "2018",
  "end_year": "2024"
});

More examples

{
  "industry": "construction"
}

Response shape

Always returns: series_id, industry, description, unit, start_year, end_year, total, data

FieldTypeDescription
series_idstringBLS series ID for the industry
industrystringIndustry name requested
descriptionstringSeries description
unitstringUnit of measurement (thousands of persons)
start_yearstring | nullStart year filter if provided, null otherwise
end_yearstring | nullEnd year filter if provided, null otherwise
totalintegerNumber of data points returned. Equal to returned — BLS returns every point in the requested year range.
returnedintegerHow many data points are in data. Always equal to total here; stated so a caller need not assume it.
observation_orderstringOrder of the data array. BLS returns each series newest-first.
dataarrayEmployment data by period
Full JSON Schema
{
  "type": "object",
  "properties": {
    "series_id": {
      "type": "string",
      "description": "BLS series ID for the industry"
    },
    "industry": {
      "type": "string",
      "description": "Industry name requested"
    },
    "description": {
      "type": "string",
      "description": "Series description"
    },
    "unit": {
      "type": "string",
      "description": "Unit of measurement (thousands of persons)"
    },
    "start_year": {
      "type": [
        "string",
        "null"
      ],
      "description": "Start year filter if provided, null otherwise"
    },
    "end_year": {
      "type": [
        "string",
        "null"
      ],
      "description": "End year filter if provided, null otherwise"
    },
    "total": {
      "type": "integer",
      "description": "Number of data points returned. Equal to `returned` — BLS returns every point in the requested year range."
    },
    "returned": {
      "type": "integer",
      "description": "How many data points are in `data`. Always equal to `total` here; stated so a caller need not assume it."
    },
    "observation_order": {
      "type": "string",
      "enum": [
        "newest_first"
      ],
      "description": "Order of the `data` array. BLS returns each series newest-first."
    },
    "data": {
      "type": "array",
      "description": "Employment data by period",
      "items": {
        "type": "object",
        "properties": {
          "year": {
            "type": "string",
            "description": "Year of the observation"
          },
          "month": {
            "type": "string",
            "description": "Month name (e.g., January)"
          },
          "period": {
            "type": "string",
            "description": "Period code (e.g., M01)"
          },
          "employment_thousands": {
            "type": "number",
            "description": "Employment in thousands of persons"
          }
        },
        "required": [
          "year",
          "month",
          "period",
          "employment_thousands"
        ]
      }
    }
  },
  "required": [
    "series_id",
    "industry",
    "description",
    "unit",
    "start_year",
    "end_year",
    "total",
    "data"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "econdata": {
      "url": "https://gateway.pipeworx.io/econdata/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build September 22, 2026