@pipeworx/usitc-edis
Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/usitc-edis’s. Install: one-click buttons
Connect to just the @pipeworx/usitc-edis pack
https://gateway.pipeworx.io/usitc-edis/mcp — only @pipeworx/usitc-edis’s own tools, nothing else in the catalog.
No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.
Tools: 3
The case docket for US International Trade Commission investigations: Section
337 (unfair import / patent) cases and Title VII (antidumping/countervailing-
duty, “Import Injury”) cases, via IDS (Investigations Database System,
ids.usitc.gov) — search/list across all ~4,400 investigations, full detail
for one. Keyless.
What’s NOT here: filed documents (EDIS)
This pack does not serve EDIS (Electronic Document Information System,
edis.usitc.gov) — the documents filed in an investigation and their
attachments. EDIS’s WAF returns a 403 (disguised as its generic “under
maintenance” HTML page) to any User-Agent that isn’t a recognized generic
HTTP-client signature, even when a valid API key is sent — verified live
2026-09-24. An earlier version of this pack cleared that block by prefixing
its User-Agent with curl/8.7.1 , impersonating a different client. Bruce
ruled against that (2026-09-25), reversing an earlier case ruling that had
allowed it, so the edis_* tools were removed along with the token/curl
plumbing that only existed to serve them.
Filed documents at EDIS await a USITC allowlist of our honest User-Agent
(pipeworx-usitc-edis/1.0 (+https://pipeworx.io)). Re-adding an EDIS path
here needs either that allowlisting or some other non-impersonating route
past the WAF — not a re-add of the curl prefix.
Tools
| Tool | Auth | Answers |
|---|---|---|
itc_investigation_search | none | Paginated list of investigations, most-recent-first, with a same-page type/active filter |
itc_investigation_detail | none | Full status record for one investigation (by internal investigation_id) |
itc_investigation_types | none | The 4 top-level investigation type categories |
Auth
Everything in this pack is keyless, verified live 2026-09-24. IDS
(advanced-search, investigation/{id}, lookup/investigation-types) all
answer real data with no credential at all. The only header requirement is a
browser-shaped Origin/Referer (not a credential, just what a same-origin
page sends); a plain User-Agent alone was rejected.
Data sources
https://ids.usitc.gov/idata/api/v1/advanced-search(POST) — investigation search/list, paginated.https://ids.usitc.gov/idata/api/v1/investigation/{id}(GET) — full investigation detail.https://ids.usitc.gov/idata/api/v1/lookup/investigation-types(GET) — the 4 top-level type categories.
Traps for the next builder
GET investigation/{id}embeds ITC STAFF identity —case_manager_idcarries the case manager’s full name, personal work email and phone number. This is Commission personnel, not a docket party, anditc_investigation_detaildeletes the field outright rather than redacting it. Apply the same rule to any future case-scoped endpoint added here (participants, IP, HTS numbers, orders, votes) — attempted live 2026-09-24 and none ofcase/participants,case/hts_numbers,case/unfair_import_orders*,investigation/participantsetc. could be reached (they either 503 the maintenance page under every query-param shape tried, or —investigation/intellectual_property— return an unfiltered ~880KB dump regardless of the filter passed). Left unbuilt rather than shipped unreliable; the routing pattern (/case/{case_id}/investigation/{investigation_id}/...) visible in the Angular bundle (ids.usitc.gov/main-*.js) is the next lead.- IDS’s
advanced-searchcriteriafilter DSL is unknown. The live Angular app (ids.usitc.gov/case) builds a structuredcriteriaarray server-side filters run through, but every shape tried live ({field, value},{fieldName, operator, value}, a DevExtreme-style[field, "=", value]triple) either silently matched nothing or 302-redirected as if malformed.itc_investigation_searchtherefore exposes only the parameters proven live (pageNumber,pageSize,sortOrderoninstitution_start_date) plus a same-PAGE client-side filter on type/active-status. Capturing the real DSL is the fastest path to true server-side filtering: openids.usitc.gov/casein a browser, use an advanced search filter, read the POST body from devtools. - Response envelope quirk on
advanced-search: the total match count istotalRecordsat the top level on some request shapes andhitCountinside each case row on others — never trusthitCountat the top level; it is not there. - EDIS (
edis.usitc.gov) is a separate, credential-gated service with a UA-filtering WAF. It is deliberately not served here — see “What’s NOT here” above. Do not re-add it with a spoofed User-Agent.
Tools
- itc_investigation_search — List USITC investigations — Section 337 (unfair import / patent) or Title VII (antidumping/countervailing duty, “Import Injury”) — most-recently-instituted first. KEYLESS, needs no credential. PREFER
- itc_investigation_detail — Full status record for ONE USITC investigation, by its internal investigation_id (from itc_investigation_search — NOT the human “337-TA-1400” number). KEYLESS. Returns status, phase, category, docket
- itc_investigation_types — The top-level USITC investigation type categories (Import Injury, Unfair Imports, Factfinding, Miscellaneous) with their ids. KEYLESS. Use to know what to pass itc_investigation_search’s investigation
Tools
itc_investigation_detail— Full status record for ONE USITC investigation, by its internal investigation_id (from itc_investigation_search — NOT the human 337-TA-1400 number). KEYLESS. Returns status, phase, category, docket nuitc_investigation_search— List USITC investigations — Section 337 (unfair import / patent) or Title VII (antidumping/countervailing duty, Import Injury ) — most-recently-instituted first. KEYLESS, needs no credential. PREFER Oitc_investigation_types— The top-level USITC investigation type categories (Import Injury, Unfair Imports, Factfinding, Miscellaneous) with their ids. KEYLESS. Use to know what to pass itc_investigation_search's investigation