@pipeworx/nlrb
Connect: https://gateway.pipeworx.io/nlrb/mcp · Install: one-click buttons
Tools: 3
US National Labor Relations Board case search — unfair labor practice charges and union representation/election petitions (~516,000 cases), read live from the NLRB’s public case search on nlrb.gov.
Tools
nlrb_search(query, case_type?, status?, filed_since?, filed_before?, region?, sort?, limit?, page?)— finds cases by employer name, union name, or case number. Returns case number, case name, date filed, open/closed status, city and NLRB region, plus the total number of matching cases. Answers “is Starbucks facing an NLRB charge”, “union election petitions at Trader Joe’s”.nlrb_case(case_number)— the full docket for one case: allegations charged under the National Labor Relations Act, status, location, region, participants (charged party, charging party, employer, union, and their legal representatives), the docket activity log, and — for representation cases that reached a count — the election tally (eligible voters, ballots counted, votes for and against the union).nlrb_recent_filings(days?, case_type?, status?, region?, limit?)— newest filings nationally over a recent window, newest first, with the total filed in that window.
Auth
Keyless. No account, no registration, no key.
Data sources
- https://www.nlrb.gov/get-search-data/{term}/cases?sort=&rows=&page= — the
case search. A Drupal AJAX endpoint: it returns a command array whose
datafields carry the rendered result HTML and whose trailinginvokecommand carries the total match count inargs[4]. - https://www.nlrb.gov/case/{case-number} — the server-rendered case docket.
Things worth knowing before you touch this pack
- The tab segment must be
cases, plural./get-search-data/{term}/caseis refused by the site’s WAF with an HTTP 200 carrying a “Request Rejected” HTML page — a rejection that reads as a success unless you inspect the body. The pack checks for that page and returns{ found: false, reason: 'blocked' }. - The search term is a path segment, so a
/in it silently changes which endpoint you hit. Slashes are stripped and the term is URL-encoded. - Query parameters on
/search/caseare ignored. The visible search form POSTs;?search_term=Starbucksreturns the unfiltered 516k listing with the header still reading “for all”. Only/get-search-data/...honours a term. - Filters ride as bracketed params:
f[0]=case_type:C(orcase_type:R, or(case_type:C OR case_type:R)),s[n]=Open|Closed|Open - Blocked,r[n]=<region>,state[n]=<XX>, anddate_start/date_endin MM/DD/YYYY — ISO dates are ignored rather than rejected, so the pack converts. - Sort accepts
desc(newest),asc(oldest) andrelevance;rowsand a zero-basedpageboth work, confirmed torows=50. - Case numbers are region-type-serial (
10-CB-393760): 2-digit region, case type (CA/CB against an employer/union, RC/RD/RM for representation), serial. The pack uppercases and zero-pads a single-digit region. - Election tallies exist only on R cases that reached a count, and render as a second label/value block on the case page, so a generic label scrape mixes them into the case header unless they are separated by label name.
- The docket activity table on a case page shows only the most recent entries and, per NLRB’s own footnote, does not reflect all actions in the case.
Tools
- nlrb_search — Search US National Labor Relations Board cases by employer, union, or case number — unfair labor practice charges (C cases: CA against an employer, CB against a union) and union representation/electio
- nlrb_case — Full docket for one US National Labor Relations Board case by case number (e.g. “10-CB-393760”, “31-RC-357638”): the allegations charged under the National Labor Relations Act (such as “8(a)(3) Discha
- nlrb_recent_filings — Newest US National Labor Relations Board case filings across the country over a recent window — the labor-dispute equivalent of a new-filings feed. Returns case number, name, date filed, status, city
Tools
-
nlrb_case— Full docket for one US National Labor Relations Board case by case number (e.g. 10-CB-393760 , 31-RC-357638 ): the allegations charged under the National Labor Relations Act (such as 8(a)(3) Discharge -
nlrb_recent_filings— Newest US National Labor Relations Board case filings across the country over a recent window — the labor-dispute equivalent of a new-filings feed. Returns case number, name, date filed, status, city -
nlrb_search— Search US National Labor Relations Board cases by employer, union, or case number — unfair labor practice charges (C cases: CA against an employer, CB against a union) and union representation/electio